模拟退火算法
一、导读
1、基本思想
模拟热力学当中的退火过程
退火过程:
物体:高温 缓慢下降 低温
高能状态 低能状态
淬火:快速冷却,使金属处于高能状态,较硬易断
退火:缓慢冷却,使金属处于低能状态,较为柔韧
2、模拟退火在SA中的应用
在SA中将目标函数作为能量函数
模拟:
初始高温---->温度缓慢下降---->终止在低温
这时能量函数达到极小,目标函数最小
二、退火过程和Bolzman方程
1、热力学中的退火过程
变温物体缓慢降温从而达到分子之间能量最低的状态
设热力学系统S中有n个状态(有限个,离散的),状态i的能量为Ei,在温度Tk下,经过一段时间达到热平衡,这时处于状态i的概率为:
2、Bolzman方程
3、温度Tk对Pi(Tk)的影响
三、SA的算法构造及步骤
1、SA的模拟要求
a、初始温度足够高
b、降温过程足够慢
c、终止温度足够低
2、问题的描述及要素
min f(i),i属于S,S是离散有限状态空间,i代表状态
要素:状态表达和领域移动同TS
搜索:随机的领域移动
冷却控制(SA算法的特点)=》外循环
热平衡的达到=》内循环
3、SA的计算步骤
四、计算举例
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】