Jump to content

Recommended Posts

Posted

En Intelegencia Artificial, como segundo proyecto tenemos que desarrollar y articulo científico de temas que estén relacionados con IA. Este, puede ser basado en varios articulos existentes, pero la particularidad es que sea redactado por nosotros y que evidentemente se haga un aporte propio basado en la información existente.

Lo que quiero conocer, es si alguien de la comunidad sabe algo referente al tema, que conozcan refencias importantes al respecto y lo mas importante que den su opinión de como la IA se ha metido de lleno a lo que es el desarrollo de juegos por computadora.

pd: el aporte puede ser de algun aspecto en especifico o en general. B)

Posted

Bueno, hay un libro muy bueno que se llama 'Genetic Algorithms in Search, Optimization & Machine Learning' de David Goldberg que le puede ayudar, si no lo quiere comprar busque el PDF, en algun lado debe estar...

Yo creo que usar GAs en juegos tiene cosas a favor y en contra. A favor, bueno, se le puede ofrecer al usuario un juego con Inteligencia Artificial compleja como ya lo hacen muchos RTSs y FPSs, que le permiten al jugador disfrutar de una sensacion multiplayer jugando contra la computadora.

En contra, el tiempo y la complejidad que requiere programar un algoritmo genetico. Veamos dos ejemplos:

AMAI para Warcraft 3.

AMAI es un sistema bastante complejo que reemplaza la inteligencia artificial de Blizzard. Aunque ambas AIs usan derivaciones de redes neuronales para definir las estrategias que la computadora sigue, ninguna usa algoritmos geneticos; AMAI usa una estructura de datos bastante compleja para la toma de decisiones durante una partida, por eso la vemos adaptando unidades o haciendo ataques en zonas desprotegidas, pero no usa una poblacion de estrategias que se trasmutan dinamicamente, como es el concepto de GAs, en lugar de eso, define 8 estrategias base por raza e intercambia estrategias dependiendo de lo que el jugador tenga o haga.

Lo ideal seria que AMAI definiera una serie de variables que describan el estado de una partida en un momento determinado, asi como el estado del oponente; luego codifique esas variables y las compare con el universo de soluciones / estrategias para mutar la actual a la optima. El problema es que dependiendo de la cantidad de variables que se codifiquen, la busqueda puede tardar demasiado o consumir demasiado procesador y la mutacion de estrategia es algo que se deberia hacer por lo menos cada 2 minutos de juego; si a eso le sumamos un entrenador de una red neuronal que no sea limitada a una sola partida, sino que la compu se haga mas lista conforme juega; el tiempo de desarrollarlo y los requerimientos de CPU se dispararian.

Eso sin contar que nuestro objetivo es simular el comportamiento humano, y al decirle a la computadora lo que el oponente humano tiene no es muy legal que digamos. Sin embargo, implementar tendencias de explorar el mapa e interpretaciones de lo que cada unidad ve es otro tema que le puede consumir procesador y medio.

SpiterBot para Quake3

SpiterBot es conocido como el mejor bot que se ha hecho para Quake3, usa una derivacion de redes neuronales al igual que el bot de Vanilla-Q3, pero con muchas mas variables y respuestas para definir el comportamiento de un bot en una partida; sin embargo al igual que AMAI, no aprende entre diferentes partidas u oponentes, solo aprende en la partida actual y de forma muy limitada.

Seria ideal que SpiterBot permutara combinaciones para tacticas de ataque, dependiendo de lo que sabe del ambiente actual; de forma dinamica con un algoritmo genetico, sin embargo en un FPS se complican mas las cosas ya que el estado del juego puede cambiar en un segundo (de tener full armor y armas, a morir y no tener nada) por lo que la busqueda de soluciones debe ser extremadamente rapida. De nuevo dependemos de la cantidad de variables codificadas que describen el estado de una partida en un momento determinado.

Lo mejor entonces, es encontrar un equilibrio en el uso de GAs; el punto exacto en el que estamos haciendo las cosas mejor que si usaramos metodos heuristicos / tradicionales, pero no estamos sobrecargando el CPU con la busqueda de soluciones / estrategias / tacticas; Y tampoco estamos sacrificando tiempo de desarrollo que puede costar caro si al final se sabe que la gente siempre va a seguir comprando los juegos de la franquicia de FIFA porque *se ven bonitos* aunque por debajo sean una cochinada...

Saludos!

PD: Para referencias utiles, en google hay varios PDFs de gente que ha trabajado en el tema

Posted

muy buen comentario,....hay algun juego que este desarrollado de forma tal que la maquina adquiera experiencia al acumular partidas jugadas, aunque algunas veces se termine el programa entre ellas???

Posted

Un poco mas adentrado en la investigacion y de forma mas especifica, lo que debo abarcar en este caso es un poco mas de originalidad y proponer un juego (nuevo o alguno existente), donde se pueda utilizar algoritmos geneticos para mejorar la IA del juego y por ende el juego en si.

Para que se den una idea, debo responder como primer avance las siguientes preguntas:

I etapa Seleccionar un problema que se pueda resolver mediante una técnia de IA y plantear una pequeña definición de cuál es el problema y cuál técnica de IA se desea utilizar para resolverlo.

Descripción del problema planteado: a. Qué campo presenta esta necesidad?

b. Qué limitaciones le provoca a este campo, el no tener un proyecto como el propuesto?

c. Si se logra una adecuada solución a la necesidad cuales serían las ventajas que se tendrían?

d.Para desarrollar el proyecto cuales serían los problemas que se deben afrontar (listado).

Tengo varias ideas, pero quisiera saber si alguien es mas original.

any ideas!!

Posted

en esta pagina hay mas informacion Black & White pero en si el juego se trata de educar a una criatura como un tigre o un mono a que sea bueno o malo con los avitantes del mundo entonces dependiendo de lo que uno le diga o como uno lo regañe o lo felicite el se va formando de su propio criterio y despues el empiesa a ayudar a los villagers o a comerselos o jugar con ellos :king:

Guest
This topic is now closed to further replies.
×
×
  • Create New...