Я нашел фрагмент псевдокода, который объясняет имитированный отжиг для проблемы с самым длинным путем, но есть некоторые детали, которые я не понимаю.
В настоящее время я реализовал структуру, представляющую граф, и метод длягенерировать случайный граф и случайный путь на графике - оба одинаковые.
Вот псевдокод имитированного отжига:
Procedure Anneal(G, s, t, P)
P = RandomPath(s, t, G)
temp = TEMP0
itermax = ITER0
while temp > TEMPF do
while iteration < itermax do
S = RandomNeighbor(P, G)
delta = S.len - P.len
if delta > 0 then
P = S
else
x = random01
if x < exp(delta / temp) then
P = S
endif
endif
iteration = iteration + 1
enddo
temp = Alpha(temp)
itermax = Beta(itermax)
enddo
Детали, которые я не нахожу достаточно ясными, чтобы понять:
Случайный сосед (P, G)
Альфа (темп)
itermax = Бета (itermax)
Что эти методы должны делать?