Para empezar en la programación de video juegos se recomienda crear un pong, o algo por el estilo, pero para empezar en la IA que recomendaríais? hacer un juego con poca IA y luego ir avanzando?
Lo mejor es comenzar con un juego medio tonto, para luego ir haciendolo más inteligente jeje :wink:
No me hagas caso, no tengo idea del tema... (creo que se notó) :lol:
Un comecocos y un ajedrez (sencillo) son proyectos clásicos.
En el comecocos puedes aplicar A* para que los fantasmas busquen el camino más corto hacia el jugador. En el ajedrez (o algun otro juego de mesa para dos jugadores) puedes aplicar las técnicas de búsqueda de soluciones óptimas, como el Mini-Max, poda Alfa-Beta..
La IA se basa sobre todo en la aplicación de técnicas diversas.. cuantas más técnicas y algoritmos domines más rápidamente serás capaz de diseñar una IA para un juego cualquiera. Luego, si te quieres especializar, elige un género (RTS, FPS..) y 'palante' :)
Hay varios libros de IA para videojuegos, yo de tí me haría con un par en Amazon.com/.co.uk aprovechando la fortaleza actual del euro.
PD: Oh, mira lo que me acabo de encontrar -> http://aigamedev.com/
Como te ha dicho ZaelSiuS, intenta pillarte algún libro (Programming Game AI by Example es muy bueno) y aprender diferentes técnicas. En IA no hay nada fijo, si no que cada juego resuelve sus problemas a su manera y te tocará verte muchas cosas.
Añade a lo que ha dicho ZaelSiuS el mirarte algo de máquinas de estados que se usan mucho :)
Y respecto a AiGameDev.com, el blog es muy entretenido de leer y en el foro postea gente realmente buena (el nivel es muy alto :)). Alex postea bastante de dos técnicas de IA en particular: planners y behavior trees.
Un saludo!
Vicente
Los libros de AI Wisdom son muy buenos.
Un saludo :)
Y algun libro de IA en castellano???
Esa pregunta es más chunga sip :( Los libros buenos buenos están en inglés, como casi todo en este mundillo...
Una pena que yo el idioma de shakespeare no lo controlo demasiado...
Un juego bueno, puede ser uno de un bicho perseguido por otro monton de bichos. Eso te permitiria hacer algoritmos para calcular caminos, o bien para mover bichos en linea recta a traves de un mundo de teselas. Luego podria hacerse que los bichos se mueven en "bandada", o que si el jugador esta cerca de la pildora que lo hace invulnerable 3 segundos, se lo piensan, o que el jugador se haga invisible unos segundos, y tratan de adivinar donde estara, y asi hacia el infinito.
Cita de: "Nato_msc"Para empezar en la programación de video juegos se recomienda crear un pong, o algo por el estilo, pero para empezar en la IA que recomendaríais? hacer un juego con poca IA y luego ir avanzando?
CRobot
CPPRobot
Es lo mejor diria yo.
Hay muchas clases de IA pero basicamente:
Esta lo que es la IA pragmatica, un camino minimo y unos ifs que se basan en: quiero tal comportamiento y a ver como lo hago, o hago hasta donde puedo.
Y esta la IA verdadera, que es tengo un ser y quiero que interactue por voluntad propia, quiero que responda a tales estimulos y tenga tales emociones y que piense por si solito.
En realidad la segunda no es de mucha ayuda en juegos y se usa poco, pero si hay una cosa intermedia que es: tengo un ser, lo hago interactuar con tales datos de entrada pero le programo una serie de comportamientos de antemano. Esto ha sido lo mas usado a lo largo de toda la historia de los VJ
CRobot te podria ayudar en este lugar por que es la historia de nunca acabar.
Lo del libro es obligatorio, e ingles ni te cuento!
No encontre ningún enlace a CRobot ni a CPPRobot ... estoy tan viejo que los sacaron hace años y no me di cuenta?
Alguien sabe de ellos?
Soy el unico que se acuerda de ellos?
Hablo del 98 pero pense que seguía habiendo ...
Ok, soy mas viejo de lo que pensaba :oops:
Fui a buscar un enlace donde hable de ellos en el 2005 que me acordaba
http://www.adva.com.ar/foro/index.php?topic=1565.msg12079#msg12079
C Robots ( del 85 )
http://www.nyx.net/~tpoindex/crob.html
Cpp Robots ( del 95-98 )
http://www.gamerz.net/c++robots/
Me agarro el viejaso y estoy pasando por una crisis de la mediana edad
:cry: :cry: :cry: :cry: :cry:
y para redes neuronales lo más eficaz y sencillo es crear un conjunto de puntos rojos y verdes de forma que haya un camino recto entre ellos, y que la neurona te encuentre una de las posibles rectas que la corta.
Un perceptrón de una capa es capaz de partir un conjunto por una línea. Si quieres partir por una curva o un plano necesitas ya una red con varias capas (backpropagation).
Un perceptrón es bastante facilito de entender la verdad (y de entrenar y de usar).
Un saludo!
Vicente
Cita de: "Vicente"Un perceptrón de una capa es capaz de partir un conjunto por una línea. Si quieres partir por una curva o un plano necesitas ya una red con varias capas (backpropagation).
Un perceptrón es bastante facilito de entender la verdad (y de entrenar y de usar).
Un saludo!
Vicente
por eso le dije una neurona xD y xq pidió cosas fáciles por donde empezar.
Bueno, un perceptrón son al menos 4 neuronas :p (dos entradas, la bias, y una salida).
Cita de: "Vicente"Bueno, un perceptrón son al menos 4 neuronas :p (dos entradas, la bias, y una salida).
para hacer una simple recta con una neurona tienes :P, no hace falta montarse un perceptrón.
y para hacer una curba depende de que exponente quieres que tenga.
Cita de: "Buffon"Cita de: "Vicente"Bueno, un perceptrón son al menos 4 neuronas :p (dos entradas, la bias, y una salida).
para hacer una simple recta con una neurona tienes :P, no hace falta montarse un perceptrón.
Cierto que podrías tener una neurona de McCulloch-Pitts que haga una línea, pero en el fondo es lo mismo: unas entradas, unos pesos, una salida. Que lo agrupas todo dentro de una sola neurona, pues vale :)
Aquí hay una explicación bastante clara de qué es y cómo funciona un Perceptrón y dan un código en JAVA, muy sencillo pero es bueno para comenzar.
http://www.tecnohobby.net/ppal/index.php?option=com_content&view=article&id=22:perceptron&catid=42:rna&Itemid=19
Saludos
Creo que Vicente tiene razón, de hecho, si se considera la capa de entrada como tal, entonces si se tienen 2 capas y 4 neuronas, aunque en realidad el procesamiento lo hace sólo una neurona en la capa de salida.
Si por el contrario, nos apegamos a la literatura que no considera la capa de entrada precisamente por que no se procesa nada, entonces es correcto, el perceptrón consta de una capa de una sola neurona.
Y cuanta razon tiene si en tres años nadie a venido a decir lo contrario ...
Me pregunto si el chaval llegó a aprender IA. Ya que se resucita el tema y leo lo del comecocos, es un muy buen proyecto para empezar con la IA porque cada fantasmita tiene un comportamiento diferente (no van todos hacia el camino más rápido hasta el comecocos, de hecho sólo lo hace Pinky, y Blinky va detrás de él, y los demás se mueven aleatoriamente, con lo cual su comportamiento emergente provoca emboscadas): http://es.wikipedia.org/wiki/Pac-Man
En ésta está más completo: http://forums.yoyogames.com/forums/10/topics/22172
Cita de: Mars Attacks en 09 de Abril de 2011, 01:09:29 AM
Me pregunto si el chaval llegó a aprender IA. Ya que se resucita el tema y leo lo del comecocos, es un muy buen proyecto para empezar con la IA porque cada fantasmita tiene un comportamiento diferente (no van todos hacia el camino más rápido hasta el comecocos, de hecho sólo lo hace Pinky, y Blinky va detrás de él, y los demás se mueven aleatoriamente, con lo cual su comportamiento emergente provoca emboscadas): http://es.wikipedia.org/wiki/Pac-Man
En ésta está más completo: http://forums.yoyogames.com/forums/10/topics/22172
Ya que el tema está revivido, pues los fantasmas del PacMan no hacen eso (2 cazadores y 2 al azar), tienen 3 modos de trabajo, repliegue, caza y huida. En huida y repliegue los 4 son más menos similares. En le modo caza, cada uno tiene una algoritmo diferente, pero ninguno es con movimientos al azar.
http://gameinternals.com/post/2072558330/understanding-pac-man-ghost-behavior
Pues gracias por la aclaración. El mensaje está claro: Pacman está muy bien como primer intento de juego con IA.