我對啟發式值有疑問。所以,這是我的謎題:
volume of the 3 jugs = (10,6,5) initial state = (10,0,0) goal state = (8,3,0)
我選擇使用 A* 搜索來解決這個難題。是不是像h(x,y,z)=(x*a) (y*b) (z*c)xyz 是每個水壺中的水量而 abc 是水壺是否為空。如果為空則等于0,如果不是則等于1。因為我在通過互聯網搜索時感到困惑。你們能幫我指導一下嗎?我也是 AI 新手。謝謝。
uj5u.com熱心網友回復:
A* 最基本的啟發式是,不要遵循導致重復狀態的分支。您保留所有先前狀態的集合,并且如果集合中已存在下一個狀態,則不要遵循分支。
對于您的具體問題,一個可能的啟發式函式可能是獲取您的下一個“狀態”(罐子的數量)并減去“目標”狀態并根據您的下一個狀態與目標的接近程度回傳增量分數的函式。特定問題最多有來自每個獨特狀態的 6 個分支,因此您可以選擇遵循 delta 分數最低的分支。
h(state) = dot(abs(state - goal), 1 / volume)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/321840.html
下一篇:采樣xy平面中的螺旋
