IA de un robot aspiradora

Usando una versión modificada del simulador de aspiradoras inteligentes de Tsung-Che Chiang, había que implementar la heurística o Inteligencia Artificial de la aspiradora para resolver varios problemas:
  • Agente reactivo con memoria, cuyo único conocimiento inicial del entorno es que se está en un recinto cerrado de 10x10 casillas que se ensucian de forma aleatoria. El robot debe maximizar la suciedad aspirada y minimizar el consumo.
  • Agente deliberativo que use búsqueda en profundidad con conocimiento de la localización de la suciedad y de los muros de un recinto de tamaño NxN. El robot debe maximizar el número de casillas limpiadas y minimizar el consumo.
  • Agente deliberativo que use búsqueda basada en un método de escalada con conocimiento de la localización de la suciedad y de los muros de un recinto de tamaño NxN. El robot debe maximizar el número de casillas limpiadas y minimizar el consumo.
  • Agente deliberativo que use búsqueda MINIMAX con profundidad limitada. Este agente estará en el entorno (conocido) con otro agente aspiradora y debe tratar de aspirar más suciedad que su rival. Además, para este problema en concreto, los agentes dejan una estela por las casillas que atraviesan, impidiendo que se vuelva a poder pasar por ellas.
Para cada problema se utilizó una heurística distinta (descrita en la documentación) y fueron puestas a prueba con un mapa totalmente desconocido para mí, logrando resultados sobresalientes.

Interfaz del simulador
Mapa con dos agentes para el problema MINIMAX
Detalles técnicos:
  • Lenguaje: C++
  • Plataforma:Windows
  • Paradigma: POO
  • Aprendizaje de: POO, STL, algoritmos de búsqueda de IA clásica
  • Enlaces: Código fuente, documentación
  • Año: 2012

No hay comentarios:

Publicar un comentario