2013-03-06 41 views

回答

1

是的,它与遗传编程或遗传算法中的适应度函数非常相似。系统的能量(E)从任意高能状态开始。每一步都会对能量进行评估,并且系统会尝试降低能量状态。在开始时,当系统具有较高的“温度”时,允许较大的运动对抗最佳状态,以便系统可以逃脱局部最大值。在很多步骤中,温度会降低(希望能量水平也是如此)。

有很多关于模拟退火的优秀报道。这里有一个很好的PPT概述:Link

+0

您能简单介绍一下如何计算能量吗? – Undefined 2013-03-06 16:11:03

+0

它与普通适应度函数有何不同? – Undefined 2013-03-06 21:15:14

1

我没有看到SA中的能量和GA中的适应度之间有明确的关系。

SA中的能量定义了下一次迭代的搜索空间:随着能量变量收缩,搜索空间的体积缩小。例如,如果您正在进行某种音乐搜索,并且您的音符是“C”,则较高的SA能量可能会使该值变成从“A”到“G”的任何值,而SA能量较低可能只会让这个价值变成一个C单位或一个尖锐的价格。

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

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

+0

你不是在谈论温度? – Undefined 2013-03-06 21:07:27

+0

温度通过成本函数与能量有关。但我认为这并不能说明问题。 – 2013-03-07 02:04:38

1

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

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

有一些文本可以深入解释模拟退火和遗传算法。我建议:

[1]Vöcking,B.,ALT,H.,Dietzfelbinger,M.,Reischuk,R., Scheideler,C.,福尔默,H.,瓦格纳,D.“算法Unplugged“,Ed。 德国柏林:Springer-Verlag Berlin Heidelberg,2011,ch。 41,pp。 393-400。

[2] Duc Pham,D. Karaboga,“Intelligent Optimization Techniques”。 英国伦敦:Springer-Verlag London,2000.