El mundo de los bloques es uno de los dominios de planificación más famosos de la inteligencia artificial. El algoritmo es similar a un conjunto de bloques de madera de varias formas y colores colocados sobre una mesa. El objetivo es construir una o más pilas verticales de bloques. Sólo se puede mover un bloque a la vez: puede colocarse sobre la mesa o encima de otro bloque. Debido a esto, cualquier bloque que esté, en un momento dado, debajo de otro bloque no se puede mover. Además, algunos tipos de bloques no pueden tener otros bloques apilados encima.
La simplicidad de este mundo de juguete se presta fácilmente a los enfoques clásicos de inteligencia artificial simbólica, en los que el mundo se modela como un conjunto de símbolos abstractos sobre los cuales se puede razonar.
Es un solucionador de juegos de rompecabezas de Blocks World, con diferentes tipos de algoritmos. Este proyecto se crea como una tarea del curso universitario de Inteligencia Artificial.
python main.py
[START] # starting state
size=3,3 # grid size
a=0,2 # starting state of block a
b=1,2 # starting state of block b
agent=2,2 # starting state of agent
[GOAL]
a=1,1 # goal state of block a
b=1,2 # goal state of block b
a ('0, 2')
b ('1, 2')
----------
Nodes expanded: 1
----------
a ('0, 2')
b ('1, 2')
----------
Nodes expanded: 2
.
.
.
----------
a ('1, 1')
b ('1, 2')
----------
Nodes expanded: 242
----------
--- Execution time (seconds): 0.006296873092651367 ---