置換表(雜湊)是什麼?設定多少好?
置換表的主要作用是搜尋過程中會記錄一些局面的資訊(如分數)到置換表中,之後搜尋遇到已在置換表內重複的局面可以直接提取置換表已經儲存的結果,節省時間。目前的多執行緒演算法也基於共享置換表實現。
具體更專業的置換表解釋可以觀看此影片:皮卡魚作者解釋置換表
理論上來說,在機器剩餘執行記憶體允許的情況下,分析局面設定的置換表是越大越好,但實際上最好不要太大。
另外,置換表大小到幾百 MB、幾 GB 的量級後,再大對棋力的影響非常微弱,一般推薦設定為幾 GB。
目前鯊魚介面顯示 hashfull(縮寫 HF),代表置換表內的局面被替換或查詢過的佔比。不是置換表滿載程度,因為不管是引擎分析還是引擎走棋後,置換表一直是滿的,除非清空雜湊或者重新載入引擎。
