摘要: 模拟退火首先从某个初始候选解开始,当温度大于0时执行循环。在循环中,通过随机扰动产生一个新的解,然后求得新解和原解之间的能量差,如果差小于0,则采用新解作为当前解。如果差大于0,则采用一个当前温度与能量差成比例的概率来选择是否接受新解。温度越低,接受的概率越小,差值越大,同样接受概率越小。是否接受的概率用此公式计算:p=exp(-ΔE/T)。这里ΔE为新解与原解的差,T为当前的温度。由于温度随迭代次数逐渐降低,因此获得一个较差的解的概率较小。典型的模拟退火算法还使用了蒙特卡洛循环,在温度降低之前,通过多次迭代来找到当前温度下比较好的解。这里使用模拟退火解旅行商问题,因为这个问题本身是一个NP难 阅读全文
posted @ 2013-07-02 19:50 Dsp Tian 阅读(54255) 评论(10) 推荐(7) 编辑