人工智能中的八數(shù)碼問(wèn)題:附有詳細(xì)的注釋
我們可以將八數(shù)碼問(wèn)題看成移動(dòng)空格的問(wèn)題.在不斷的移動(dòng)空格過(guò)程當(dāng)中不斷改變棋盤的布局,使之到達(dá)目標(biāo)狀態(tài).
用一個(gè)open表(本程序采用序棧)的節(jié)點(diǎn),從中選擇一個(gè)總體代價(jià)最小的節(jié)點(diǎn)(不妨設(shè)為A節(jié)點(diǎn),棧不為空時(shí))是否是目標(biāo)狀態(tài),如果不是則將A節(jié)點(diǎn)的有效的兒子節(jié)點(diǎn)(不在open表及closed表中出現(xiàn)過(guò),不違反移動(dòng)規(guī)則)插入有序表open表中,并將A節(jié)點(diǎn)插入closed表中.然后重復(fù)以上操作.
標(biāo)簽:
open
數(shù)碼
移動(dòng)
人工智能
上傳時(shí)間:
2016-06-05
上傳用戶:hj_18