模拟退火中的能量

时间:2013-03-06 00:49:10

标签: artificial-intelligence simulated-annealing

能量变量在模拟退火算法中表示什么?我猜它与GA中的适应度变量类似?

3 个答案:

答案 0 :(得分:1)

是的,它与遗传编程或遗传算法中的适应度函数非常相似。系统的能量(E)从某个任意高能状态开始。每一步都会评估能量,系统会尝试转向能量较低的状态。

一开始,当系统具有较高的“温度”时,允许较大的移动以抵抗最佳状态,以便系统可以逃避局部最大值。在许多步骤中,温度降低(希望能量水平)。

有很多关于模拟退火的好文章。这是一个很好的PPT概述:Link

答案 1 :(得分:1)

我没有看到SA中的能量与GA中的适应性之间存在明确的关系。

SA中的能量定义了下一次迭代的搜索空间:随着能量变量的缩小,搜索空间的体积缩小。例如,如果您正在进行某种音乐搜索并且您有一个“C”音符,那么高SA能量可能会使该值变为从“A”到“G”的任何值,而低SA能量可能只允许该值变为C平或尖锐。

在GA中,搜索空间由给定基因型位置处的值的熵定义。因此,如果在您的音乐搜索中的位置1,每个人都有一个“C”音符,那么孩子们将在该位置有一个“C”(禁止变异),并且在解决方案空间中没有沿着该维度的真实搜索。但是,如果基因型中第2位的值等于“A” - “G”,则搜索空间非常大。

GA中的适应性只是完整解决方案的质量。它是对个体的描述,而不是下一次迭代的参数(间接除外,因为它会影响选择)。所以我只是没有看到任何关于SA能量的良好概念映射。

答案 2 :(得分:1)

在模拟退火中,点的能量(E)决定了它被接受为解的概率。当温度参数高时,算法以随机方式接受具有低能量或高能量的新解决方案。当温度较低时,算法接受能量较低的新解决方案。

在典型的实现中,算法在迭代通过时降低其温度参数。这引起了从随机行为到确定行为的平滑过渡,这是模拟退火的关键特征。

有些文章深入解释了模拟退火算法和遗传算法。我建议:

  

[1]Vöcking,B.,Alt,H.,Dietzfelbinger,M.,Reischuk,R。,   Scheideler,C.,Vollmer,H.,Wagner,D。“ Algorithms Unplugged ”,Ed。   柏林,德国:Springer-Verlag Berlin Heidelberg,2011,ch。 41,pp。   393-400。

     

[2] Duc Pham,D。Karaboga,“智能优化技术”。   英国伦敦:Springer-Verlag伦敦,2000年。