https://www.cnblogs.com/ECJTUACM-873284962/p/8468831.html#autoid-0-0-0
总结一下看的这个博客介绍的算法流程,理解总结如下,有问题烦请指正:
1、基本情况是:有一个解空间,每个解可以计算一个目标函数f,算法目的是寻找解使得目标函数最小;随迭代逐渐变小的模拟温度T(t)(控制接受目标函数变大的试探解更新为当前解的概率,rand()<exp(-df/T)就接受,随着优化进行,越来越不接受变差的试探解,t->infinity时就是普通的梯度下降之列的算法)
2、优化过程:
a、随机给1个初始解作为当前解,计算当前目标函数,
b、以某种简单的带有随机性的方式在当前解基础上变化一下得到新试探解,变得不多,算试探解目标函数计算量会小一点;
c、如果 df<0 or (df>=0 and rand() < exp(-df/T(t)) 就让试探解作为当前解,否者什么也不干;接下去回到a,循环L次后去到d;
d、是否满足中止条件,满足就输出当前解;不满足就按某种方式减小T,然后回到a