Foros - Stratos

Programadores => Inteligencia Artificial => Mensaje iniciado por: Nato_msc en 13 de Abril de 2008, 07:43:33 PM

Título: Proyecto para empezar?
Publicado por: Nato_msc en 13 de Abril de 2008, 07:43:33 PM
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?
Título: Proyecto para empezar?
Publicado por: josepzin en 13 de Abril de 2008, 07:50:02 PM
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:
Título: Proyecto para empezar?
Publicado por: Zaelsius en 13 de Abril de 2008, 07:57:33 PM
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/
Título: Proyecto para empezar?
Publicado por: Vicente en 14 de Abril de 2008, 07:56:10 AM
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
Título: Proyecto para empezar?
Publicado por: Prompt en 14 de Abril de 2008, 08:55:10 AM
Los libros de AI Wisdom son muy buenos.

Un saludo :)
Título: Proyecto para empezar?
Publicado por: 1cacalvo en 14 de Abril de 2008, 09:01:24 AM
Y algun libro de IA en castellano???
Título: Proyecto para empezar?
Publicado por: Vicente en 14 de Abril de 2008, 10:27:33 AM
Esa pregunta es más chunga sip :( Los libros buenos buenos están en inglés, como casi todo en este mundillo...
Título: Proyecto para empezar?
Publicado por: 1cacalvo en 17 de Abril de 2008, 03:56:43 PM
Una pena que yo el idioma de shakespeare no lo controlo demasiado...
Título: Proyecto para empezar?
Publicado por: Tei en 17 de Abril de 2008, 04:59:12 PM
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.
Título: Re: Proyecto para empezar?
Publicado por: Pogacha en 17 de Abril de 2008, 09:45:03 PM
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!
Título: Proyecto para empezar?
Publicado por: Pogacha en 17 de Abril de 2008, 09:50:32 PM
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 ...
Título: Proyecto para empezar?
Publicado por: Pogacha en 17 de Abril de 2008, 09:56:05 PM
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:
Título: Proyecto para empezar?
Publicado por: Buffon en 21 de Julio de 2008, 04:23:52 PM
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.
Título: Proyecto para empezar?
Publicado por: Vicente en 21 de Julio de 2008, 05:08:21 PM
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
Título: Proyecto para empezar?
Publicado por: Buffon en 22 de Julio de 2008, 09:18:42 AM
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.
Título: Proyecto para empezar?
Publicado por: Vicente en 22 de Julio de 2008, 10:12:18 AM
Bueno, un perceptrón son al menos 4 neuronas :p (dos entradas, la bias, y una salida).
Título: Proyecto para empezar?
Publicado por: Buffon en 22 de Julio de 2008, 11:02:11 AM
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.
Título: Proyecto para empezar?
Publicado por: Vicente en 22 de Julio de 2008, 01:20:48 PM
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 :)
Título: Re: Proyecto para empezar?
Publicado por: lmflores79 en 08 de Abril de 2011, 11:00:16 PM
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
Título: Re: Proyecto para empezar?
Publicado por: lmflores79 en 08 de Abril de 2011, 11:04:54 PM
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.
Título: Re: Proyecto para empezar?
Publicado por: Pogacha en 08 de Abril de 2011, 11:49:53 PM
Y cuanta razon tiene si en tres años nadie a venido a decir lo contrario ...
Título: Re: Proyecto para empezar?
Publicado por: 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
Título: Re: Proyecto para empezar?
Publicado por: Hechelion en 09 de Abril de 2011, 01:32:18 AM
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
Título: Re: Proyecto para empezar?
Publicado por: Mars Attacks en 10 de Abril de 2011, 01:02:58 PM
Pues gracias por la aclaración. El mensaje está claro: Pacman está muy bien como primer intento de juego con IA.