模拟退火算法在电机优化设计中的应用
王 伟,张 健
(北京航空航天大学,北京100083)
摘要。介绍了模拟退火算法的原理和基本概念,结合电机的优化问题,详细论述了模似退火算法的具体实现和技术上的处理,与局部搜索法等相对照,讨论了模拟退火算法的实验性能。
关键词;优化设计,模拟退火算法i电机
中图分类号,tm302 文献标识码;a 文章编号:1001-6848(2000)03-0010-04
1 引 言
模拟退火算法是近年发展迅速的一种解大规模优化问题的通用有效近似算法。模拟退火算法建立在蒙特卡洛原理上,是一种具有启发式的随机搜索算法。它描述简单,使用灵活,效率高,因此在许多领域应用广泛,如管理科学、计算机工程等领域。将模拟退火算法引入到电机优化设计中,取得了较好的效果。
本文介绍了模拟退火算法的原理和基本概念,结合电机的优化问题,详细论述了模似退火算法的具体实现和技术上的处理,包括metropolis准则、冷却进度表算法结构,最后分析了算法的实验性能。
2模拟退火算法的原理
1982年,kirkpatrik等人将退火思想引入到优化领域,提出了一种解大规模组合优化问题的通用右效近似算法——模拟退火算法(简称saa算法)。它是一种启发式随机搜索法。它源于对固体退火过程的模拟;采用metropolis接受准则,并用一种称为冷却进度表的参数控制算法进程,获得问题的****解或近似****解。
saa算法源于物理学中固体物质的退火过程与一般优化问题的相似性。固体物质从高温熔化态逐渐降低温度,粒子逐渐形成低能态的品格。当温度下降的速率足够缓慢时,物质将形成****能量的状态。考察实际的优化问题,也有类似的过程:为求优化问题的****解,把问题的某一个解看成物质体系的微观状态,而把优化问题的目标函数f(k)看成物质体系在状态x下的内能。用一个控制参数丁模拟温度从足够高的值缓慢下降,用所谓metropolis准则模拟该体系在此t下的热平衡状态,即对当前状态xi作随机扰动,在其领域(x/的周围一个随丁减小而减小的区域)内随机产生新的状态x/i。考虑它们的目标函数值的大小,以一定的概率户判断是否接受新解xir,并取代原解x[1]。
t为控制参数。当t降低至足够低,这样的扰动重复足够多次后,算法趋向于****解。
由模拟退火算法的原理,得出其计算过程为:
(1)设定初始解和初始变量。任意选一个优化问题的解作为初始当前解。然后设定初始控制参数to。
(2)解的变换。在当前解的邻域内产生新解的过程称为解的变换。当控制参数为丁时,设当前解:
在邻域内产生新解:
式中每一变化量他都是一个随着t减小的量.
(3)metropolis准则的应用。每当产生一个新解xi后,应用metropolis准则进行判断。分别求x和xl的目标函数值f(x)和f(xi),如果新解性能更优,即f(x.)<f(x),则接受x,代替x为新的当前解。如果新解是恶化解(目标函数值f(xi)更大),则令接受率
再由计算机随机产生一个随机数r,若g比r大,则接受x,这一恶化解,否则仍然以x为当前解。
(4)降温退火。在控制参数为丁时重复步骤(2)和(3)共lr次,然后逐渐降低控制参数丁的值(称为降温),重复以上的运算过程。
重复以上的过程直至退火过程的结束。结束的标志一般是控制参数t小于预先设定的tf或 |