積木世界是人工智慧領域最著名的規劃領域之一。該演算法類似於桌子上的一組不同形狀和顏色的木塊。目標是建造一堆或多堆垂直的塊。一次只能移動一個塊:它可以放置在桌子上或放置在另一個塊的頂部。因此,在給定時間位於另一個區塊下方的任何區塊都無法移動。此外,某些類型的區塊不能在其上面堆疊其他區塊。
這個玩具世界的簡單性很容易適用於經典的符號人工智慧方法,其中世界被建模為一組可以推理的抽象符號。
它是一個 Blocks World 益智遊戲解算器,具有不同類型的演算法。該專案是作為人工智慧大學課程的作業而創建的。
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 ---