Расчет вероятности и сравнение в имитации отжига - PullRequest
0 голосов
/ 23 сентября 2019

Я только что понял, что допустил ошибку в алгоритме, который написал несколько лет назад.

https://www.researchgate.net/publication/298209081/figure/fig7/AS:341632911200275@1458463041655/Flowchart-of-simulated-annealing-algorithm.png

Вместо того, чтобы r

delta = old state - new state
P = exp(delta / T) * 100
if(delta > 0 or P <= random(100))
{
 accept(new state)
}

1 Ответ

1 голос
/ 24 сентября 2019

P становится все меньше и меньше с ростом температуры.Когда вы проверяете r < p, становится все более маловероятным , что ваш поиск переключится из текущего состояния в худшее новое состояние.Это идея симулированного отжига.

Вы проверяете на p <= r, что делает все более вероятным , что ваш поиск в конце переключится в худшее состояниеи менее вероятно в начале.Я предполагаю, что вы получите очень смешанные результаты с этим, так как сначала вы будете заниматься эксплуатацией, а потом разведкой.

...