最佳解优先搜寻策略.pptVIP

  • 6
  • 0
  • 约6.63千字
  • 约 45页
  • 2017-08-17 发布于天津
  • 举报
最佳解优先搜寻策略.ppt

1-* 通用搜尋演算法 通用搜尋演算法: GENERAL-SEARCH (問題描述, 策略) 傳回 解答 或 宣告失敗 依初始狀態建立起始節點 重複以下的指令 IF 沒有可展開的節點 THEN傳回 宣告失敗 依據傳入的策略決定展開的節點 IF 有任何節點為目標節點then傳回 解答 ELSE 將展開後的節點加入搜尋樹中 1-* 先寬後深搜尋策略 在這個策略中,根節點會先被展開,然後再展開被根節點展開的所有節點,接著再展開它們的後繼者等。 在寬度優先的搜尋樹中,所有在深度為d的節點皆會比所有在深度為d+1的節點早被展開。 1-* 先寬後深搜尋策略 寬度優先搜尋法是一個非常系統化的策略,因為它會先考慮所有長度為1的路徑,然後是那些長度為2的路徑…等。 如果有解答,寬度優先搜尋法會很快的發現它; 而如果有多個解答,寬度優先搜尋法將會先發現最小路徑的目標。 1-* 先深後寬搜尋策略 深度優先搜尋法總是先展開一棵搜尋樹中位於最深一層的節點,只有當遇到末端節點時,才會回溯到上一層,並展開另一個較淺層的節點。 1-* 先深後寬搜尋策略 深度優先搜尋法的缺點為,它可能會陷在錯誤的路徑中。 因此深度優先搜尋法可能會無法從錯誤的選擇路徑中恢復到靠近搜尋樹頂端的節點 若無適當的控制,深度優先搜尋法將陷在無窮迴圈,即使最終會找到解答路徑,而這些路徑可能比最佳路徑長。 1-* 最佳解優先搜尋策略 它使用一些估計解答成本的測量方式,並設法朝最低成本的方向進行搜尋。 以井字遊戲為例,若電腦是“o”,對手是“x”,且評估函數定義為: F(x)=同一行及對角線的其他空白個數?1 +同一行及對角線的“o”個數?2+ Y(X) Y(X)= 0 若該一行及對角線的“x”個數為0 = –1 若該一行及對角線的“x”個數為1 = 2 若該一行及對角線的“x”個數為4 1-* 假設目前的盤面狀況如下: 一開始全部都是空格 A1 A2 A3 A4 A5 A6 A7 A8 A9 1-* 若由電腦先下,則 F(A1)=(2+2+2) ?1 + (0+0+0) ? 2 + (0+0+0) = 6 F(A2)=(2+2) ?1 + (0+0) ? 2 + (0+0) = 4 F(A3)=(2+2+2) ?1 + (0+0+0) ? 2 + (0+0+0) = 6 F(A4)=(2+2) ?1 + (0+0) ? 2 + (0+0) ? 2 = 4 F(A5)=(2+2+2+2) ?1 + (0+0+0) ? 2 + (0+0+0) = 8 F(A6)=(2+2) ?1 + (0+0) ? 2 + (0+0) = 4 F(A7)=(2+2+2) ?1 + (0+0+0) ? 2 + (0+0+0) = 6 F(A8)=(2+2) ?1 + (0+0) ? 2 + (0+0) ? 2 = 4 F(A9)=(2+2+2) ?1 + (0+0+0) ? 2 + (0+0+0) ? 2 = 6 1-* 最佳解優先搜尋策略 因此電腦選擇A5;若對手選擇A1,則盤面狀況如下: X A2 A3 A4 O A6 A7 A8 A9 1-* 最佳解優先搜尋策略 依同樣的評估函數,可算出 F(A2)=(1+1) ?1 + (1+0) ? 2 + (-1+0) = 3 F(A3)=(1+1+2) ?1 + (0+1+0) ? 2 + (-1+0+0) = 5 F(A4)=(1+1) ?1 + (1+0) ? 2 + (0-1) = 3 F(A6)=(1+2) ?1 + (1+0) ? 2 + (0+0) = 5 F(A7)=(1+1+2) ?1 + (0+1+0) ? 2 + (-1+0+0) = 5 F(A8)=(1+2) ?1 + (1+0) ? 2 + (0+0) = 5 F(A9)=(0+2+2) ?1 + (0+1+0) ? 2 + (0-1+0) = 5 1-* 由此可知,A3、A6、A7、A8 及A9都是不錯的選擇,假設電腦選擇A3;若對手選擇A7,則盤面狀況如下: X A2 O A4 O A6 X A8 A9 1-* 最佳解優先搜尋策略 依同樣的評估函數,可算出 F(A2)=(0+1) ?1 + (1+1) ? 2 + (-1+0) = 4 F(A4)=(0+1) ?1 + (0+1) ? 2 + (4+0) = 7 F(A6)=(1+1) ?1 + (1+1) ? 2 + (0+0) = 6 F(A8)=(1+1) ?1 + (0+1) ? 2 + (-1+0) = 3 F(A9)=(1+0+1) ?1 + (0+1+1) ? 2

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档