我想對不同情況使用模擬退火。網絡中的每個模擬退火算法都以溫度爲例給出算法。像在wiki中一樣T在模擬退火中代表什麼?
s ← s0; e ← E(s) // Initial state, energy.
sbest ← s; ebest ← e // Initial "best" solution
k ← 0 // Energy evaluation count.
while k < kmax and e > emax // While time left & not good enough:
T ← temperature(k/kmax) // Temperature calculation.
snew ← neighbour(s) // Pick some neighbour.
enew ← E(snew) // Compute its energy.
if P(e, enew, T) > random() then // Should we move to it?
s ← snew; e ← enew // Yes, change state.
if enew < ebest then // Is this a new best?
sbest ← snew; ebest ← enew // Save 'new neighbour' to 'best found'.
k ← k + 1 // One more evaluation done
return sbest // Return the best solution found.
現在這個'T'代表什麼?假設我將使用模擬退火去棋。我將使用這個算法來尋找計算機的下一步。我現在的狀態(S)和價值(E)。我有下一個狀態(snew)和它們的值(enew)。那麼國際象棋將會是什麼?我需要它!這種算法是否有一般形式?我的意思是沒有這個溫度的例子,我可以得到基本的想法!我找不到任何。請幫忙。在此先感謝......
國際象棋需要minimax算法。我從來沒有見過用SA來做這件事的方法(儘管如果有人找到了方法,我會感興趣)。 –
@GeoffreyDeSmet其實我的問題並不在於如何使用這種算法後棋是完美的,而是如果我使用這種算法,棋將如何行動。基本上我需要實現這個比較不同的算法。找到了一些想法。我會隨機選擇任何動作,然後根據一些概率函數決定是否接受它。您可以通過以下鏈接查看想法: http://nazmialtun.blogspot.com/2011/09/solving-n-queens-puzzle-with-simulated.html 他將SA應用於N皇后 – AtanuCSE
@AtanuCSE N-皇后是NP完全優化問題,在某種程度上相當於一個存在量詞的命題公式。國際象棋是一個雙人遊戲,相當於一個具有交替存在和普遍量詞的公式。這些是完全不同的問題。 – ziggystar