當前位置:首頁 » 操作系統 » 演算法的對抗性

演算法的對抗性

發布時間: 2024-04-14 00:58:32

① 濡備綍鐞嗚В璁$畻妯″紡鐨勪笉瀹氭у規姉鍔涚殑褰卞搷

璁$畻妯″瀷鏈韜鐨勪笉紜瀹氭э紝瀹為檯搴旂敤涓鐨勪笉紜瀹氭с
1銆佺敱浜庤$畻鏈虹▼搴忕殑綆楁硶涓瀛樺湪鐫涓嶇『瀹氭ф垚鍒嗭紝渚嬪傜┓涓懼拰鎼滅儲榪囩▼銆佽娉曞垎鏋愮▼搴忎腑鐨勫氱嶅彲鑳芥х瓑錛岃繖浜涗笉紜瀹氭ф垚鍒嗕嬌寰楄$畻緇撴灉鍏鋒湁澶氱嶅彲鑳斤紝鑰屽苟闈炲敮涓紜瀹氱殑緇撴灉銆
2銆佸湪宸ョ▼緇撴瀯欏圭洰涓錛岀敱浜庡獎鍝嶅彲闈犳х殑鍚勭嶅洜緔犲瓨鍦ㄧ潃涓嶅畾鎬э紝渚嬪傝嵎杞姐佹潗鏂欑瓑鐨勪笉紜瀹氭э紝浠ュ強緇撴瀯鏈韜鐨勪笉紜瀹氭х瓑錛岄兘浼氬硅$畻妯″紡浜х敓褰卞搷銆

② beta剪枝是相對於什麼節點而言的

beta剪枝是相對於極大極小節點而言。

Alpha-beta剪枝是一種搜索演算法,用以減少極小化極大演算法(Minimax演算法)搜索樹的節點數。這是一種對抗性搜索演算法,主要應用於機器遊玩的二人游戲(如井字棋、象棋、圍棋)。

當演算法評估出某策略的後續走法比之前策略的還差時,就會停止計算該策略的後續發展。該演算法和極小化極大演算法所得結論相同,但剪去了不影響最終決定的分枝。

注意:

Alpha-beta的優點是減少搜索樹的分枝,將搜索時間用在「更有希望」的子樹上,繼而提升搜索深度。該演算法和極小化極大演算法一樣,都是分支限界類演算法。若節點搜索順序達到最佳優化或近似最佳優化(將最佳選擇排在各節點首位),則同樣時間內搜索深度可達極小化極大演算法的兩倍多。

在(平均或恆定)分枝因子為b,搜索深度為d層的情況下,要評估的最大(即招法排序最差時)葉節點數目為O(b*b*...*b) =O(b)——即和簡單極小化極大搜索一樣。若招法排序最優(即始終優先搜索最佳招法),則需要評估的最大葉節點數目按層數奇偶性,分別約為O(b*1*b*1*...*b)和O(b*1*b*1*...*1)(或O(b) =O(√b))。

其中層數為偶數時,搜索因子相當於減少了其平方根,等於能以同深度搜索兩次。b*1*b*1*...意義為,對第一名玩家必須搜索全部招法找到最佳招式,但對於它們,只用將第二名玩家的最佳招法截斷——alpha-beta確保無需考慮第二名玩家的其他招法。但因節點生成順序隨機,實際需要評估的節點平均約為O(b)。

熱點內容
怎麼模擬電腦配置 發布:2024-05-02 21:28:08 瀏覽:783
對一個新編程 發布:2024-05-02 21:20:07 瀏覽:559
華為系統編譯器在哪裡 發布:2024-05-02 21:19:50 瀏覽:86
ebsco資料庫檢索 發布:2024-05-02 21:18:51 瀏覽:82
python遞歸創建目錄 發布:2024-05-02 21:02:38 瀏覽:280
資料庫分離與附加 發布:2024-05-02 20:56:59 瀏覽:40
搭建我的世界java伺服器詳細篇 發布:2024-05-02 20:56:59 瀏覽:942
string函數java 發布:2024-05-02 20:36:49 瀏覽:801
phplinux伺服器 發布:2024-05-02 20:30:23 瀏覽:754
安卓在哪裡安裝網易官方手游 發布:2024-05-02 20:15:07 瀏覽:409