【问题标题】:What does T represent in simulated Annealing?T 在模拟退火中代表什么?
【发布时间】:2013-06-22 05:29:42
【问题描述】:

我想针对不同的情况使用模拟退火。网络中的每个模拟退火算法都提供了温度示例。就像在 wiki 中一样

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)。那么国际象棋的“T”是什么?我需要吗!这个算法有什么通用的形式吗?我的意思是没有这个温度示例,我可以得到基本的想法!我找不到任何东西。请帮忙。提前谢谢......

【问题讨论】:

  • 国际象棋需要极小极大算法。我还没有看到用 SA 做到这一点的方法(尽管如果有人找到方法我会很感兴趣)。
  • @GeoffreyDeSmet 实际上,我的问题不在于应用此算法后国际象棋如何完美,而是如果我使用此算法,国际象棋将如何表现。基本上我需要实现这个来比较不同的算法。找到了一些想法。我会随机选择任何动作,然后根据一些概率函数决定是否接受。你可以通过这个链接查看这个想法:nazmialtun.blogspot.com/2011/09/…他为N-queen申请了SA
  • @AtanuCSE N-queens 是一个 NP 完全优化问题,在某种程度上等同于具有一个存在量词的命题公式。国际象棋是一个两人游戏,相当于一个具有交替存在量词和全称量词的公式。这些是完全不同的问题。

标签: algorithm artificial-intelligence simulated-annealing


【解决方案1】:

网络上的所有示例都使用温度示例,因为这是模拟退火的标准术语——SA 是一种受物理启发的技术,以一种称为退火的真实现象为模型。就像所有遗传算法的例子都在谈论基因和染色体一样。

如果您将数学追溯到足够远,就会发现各种优化元启发式算法与一些物理过程之间存在一些令人着迷的联系,通常通过熵的概念来桥接。

但是,粗略地说,模拟退火中的温度 T 对应于算法在搜索全局(或至少更好的局部)最小值时“跳出”局部最小值的意愿或能力。高温对应于更高的随机性,跳跃更多,甚至可能以更糟糕的配置结束;低温对应于较低的随机性(最终是纯粹的贪心算法)并且无论多么浅都无法逃脱任何局部最小值。

至于如何将这个想法用于您的应用程序,好吧。为了让大多数元启发式算法正常工作,需要一些洞察力和一些创造力。但是,您永远不会找到不讨论温度的 SA 讨论。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-06-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-02
    • 1970-01-01
    相关资源
    最近更新 更多