Razón Artificial

La ciencia y el arte de crear videojuegos

PyIA – Competición de Inteligencia Artificial en Python

Escrito por adrigm el 4 de agosto de 2010 en Noticias | 6 Comentarios.

Se me ha ocurrido desarrollar una competición de Inteligencia Artificial usando Python y Pyame. La idea aún es un esbozo y estoy desarrollando el engine base, pero publico de que va el asunto a ver si tiene acogida y si alguien está dispuesto a participar.

¿En qué consiste?

La idea es mediante la creación de una IA, manejar a un personaje por una serie de niveles de plataformas superando obstáculos, como muros, pinchos, fosos y demás. El objetivo sería encontrar la salida. Los participantes no juegan, solo programan su IA y está es la que compite por ellos, a parte de superar los obstáculos y  llegar a la meta, se compite con otros participantes por lo que se cronometra el tiempo y quien llega antes, se busca la mejor IA.

Por ahora las normas son un esbozo y actualmente estoy desarrollando el engine base del proyecto. He hecho algunas pruebas de una IA básica que es capaz de saltar muros para encontrar la salida, dejo un video de demostración:


Como se puede ver por ahora solo están implementados los muros y las colisiones con esto, falta implementar en el engine, las trampas, control de tiempos, menús y demas.

Luego habría que definir unas normas de que y que no se puede hacer. En principio la IA sera un Script que solo recibe como parámetros el player y la información del mapa para consultar y solo se podría ejecutar acciones predefinidas como player.move() o player.jump() que son las que llevo implementada de momento, ¿Se os ocurre alguna más?  Tal vez la posibilidad de agacharse.

Bueno, espero opiniones de que les parece el proyecto y de si estarían dispuestos a participar.

La idea está inspirada en un concurso de Game Maker llamado GIA, aquí podéis ver un video de como fue aquella competición:


6 Comentarios en "PyIA – Competición de Inteligencia Artificial en Python"

  1. Bng5 dice:

    Yo quiero participar. Desde hace un tiempo, con un compañero de trabajo, tenemos ganas de hacer algo por el estilo. No sabía que se estaban haciendo concursos de este tipo.
    ¿El bot tiene que estar programado en Python? Porque lo que yo tenía pensado era que los bots estviesen programados en cualquier lenguaje y se comunicaran a través stdin y stdout con el motor del juego.

  2. adrigm dice:

    Bng5, en principio lo estoy escribiendo para Python, tendría que investigar como hacer eso eso de que acepte varios lenguajes, pero de momento no es para mi una prioridad ya que a primera instancia es tener un engine para el lenguage python.

  3. Bng5 dice:

    Era solo una consulta. A lo mejor tu proyecto se parecía al mio en que los bots corrieran como procesos independientes (hablando de Linux, claro), pero no era más que eso: una consulta.

    Un amigo me mandó el link a este artículo porque sabía que me iba a interesar. Ya te estoy siguiendo para estar al tanto de este proyecto. Espero que salga.

  4. KrakenHimoto dice:

    Alo alo, soy Kraken, el que organizo los GIA en Game Maker, me parece copadisima la idea que lo traslades a python. Yo lo hubiese hecho pero no estoy muy afilado con python todavia.

    Pero bueno, cuando este hecho hay buenas posibilidades que participe ;)

    Todo dependerá de la facultad jeje

    Un saludo.

  5. Wadk dice:

    Hola Kraken, justo te iba a contar de esto y resulta que ya sabés xD.

  6. tkt dice:

    no me parece mal que sea una copia, ha publicado la fuente y es libre de intentar algo similar. A mi personalmente me parece una buena idea.

    Sin ella yo no hubiese sabido de este tipo de competición

Deja un comentario