【课件】随机算法介绍PPT

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

二、势能曲面变平算法
• 1. 势能曲面变平(ELP)算法描述
(1) 给定一个初始状态X(1),令t=1,初始化直方图函数
(2) H(E, t),设置温度T,计算E(X(1),t),令最优解
(3) E’= E(X(1),t),计E~算( X (1),t) E( X (1) , t) k H ( X (1) , t)
• 1. 问题提法
• 问题1:给定一个大小确定的圆形闭区域,以及M个可互不 重叠地放进圆形区域中的小圆,这些小圆的半径分别为R1, R2, …, RM,问如何将这些小圆互不重叠地放进圆形区域中?
• 问题2:给定M个半径分别是R1,R2,…,RM的小圆,问如何 将这M个小圆摆放在直角坐标系平面上,使得所有M个小圆 形成的包络圆(即圆形闭区域)的面积最小?
能力。具体来说: 可以针对具体问题提出一些启发式策略; 或考虑与遗传算法相结合; 或采用与禁忌搜索相结合的方法。
• 2)局部搜索:一旦产生一个新的状态,就用某一确定 性的算法(如梯度法)进一步搜索该状态附近目标函 数值更低的状态。
• 3)将退温机制加入算法 • 4)增加补充搜索过程:即以搜索到的最优解为初始状
智能优化算法研究
引言
• 在复杂系统的优化计算过程中,传统的确定性算法(如 梯度法、共轭梯度法、牛顿法、拟牛顿法等)往往容易 陷入局部极值点(如下图)。为了有效地进行全局搜索, 得到问题的全局最优解或次优解,人们受自然界、或具 体问题的启发提出了一些启发式的随机优化算法。
• 模拟退火算法; • 遗传算法等进化计算方法; • 神经网络算法; • 蚁群算法等等。
一、模拟退火算法
• 模拟退火算法最早由Metropolis于1953年提出,1983 年Kirkpatrick等将其应用于优化问题。
• 1. 算法步骤
• (1) 给定初温t=t0,随机产生初始状态X(1),令k=0; • (2) Repeat
(2.1) Repeat (2.1.1) 产生新的状态X(2) =Generate (X(1)); (2.1.2) if random[0,1]≤min{1,exp[C(X(1))-C(X(2))]/tk} X(1) = X(2); //这里C(X(1))为状态X(1)的目标函数值
态,再次执行势能曲面变平法,或进行局部搜索。
三、吸引盘填充算法
• 吸引盘填充算法是势能曲面变平法与梯度法的结合。 • 1. 自适应步长的梯度算法
X2=X1-▽E(X1)•h 其中h是自适应步长。
GDP (X2) Begin
Let h:=1 and ε:=10-10. Let X1:=X2, and compute X2:= X1-▽E(X1)h. //Here ▽E(X1) denotes gradient vector of E(X) at X1. Repeat
来自百度文库
(5) 如果t>106,则停止迭代,输出E’;否则,
令t=t+1,转(2).
• 2. 对算法的理解
• 关键是:通过增加惩罚项,对目标函数进行修改,尽量 避免重复访问曾经访问过的状态。
二、势能曲面变平算法
• 3. 对算法的改进
• 1)提出好的状态更新机制: 怎样产生新的状态?最好具有搜索整个状态空间的
一、模拟退火算法
• ③ 退温函数:tk+1=λ tk (0<λ <1); • ④ 抽样稳定规则:通常有三种方法:
1) 检验目标函数的均值是否稳定; 2) 连续若干步的目标值变化较小; 3) 按一定的步数抽样. • ⑤ 退火结束准则:三种方法: 1) 设置终止温度; 2) 设置外循环迭代次数; 3) 算法搜索到的最优值连续若干步保持不变。
(2.2) Until 抽样稳定准则满足 (2.3) 退温tk+1=update(tk),并令k=k+1; • (3) Until 算法终止准则满足; • (4) 输出结果

一、模拟退火算法
• 2、 三函数、二准则(新状态产生函数,新状态 接受函数,退温函数,抽样稳定准则和退火结束 准则)
• ① 新状态产生函数:通常用领域函数,并且尽可能使候 选解遍布全部解空间。

(2) 更新当前状态X(1),产生新的状态X(2)=Generate(X(1));
(3) 计算 E(X (2) ,t) 和 H (E( X (2)), t),令
~
E( X (2),t) E( X (2) ,t) k H ( X (2) ,t)
(4) 如果 E( X (2) ,t) E( X (1) ,t) ,则接受X(2),判断
• BF算法是一种将随机算法(ELP)与确定性算法 (如梯度法)很好地结合起来的混合算法,其中 随机算法ELP用来进行全局搜索,提高采样的多 样性和跳出局部极值点,梯度法则用来进行局部 搜索,以便快速得到全局最优或新的能量更低的 状态。BF算法是一种高性能的全局优化方法。
四. 应用:圆形PACKING问题
• ② 状态接受函数:通常用概率的方式给出,遵循以下三 原则:
• 1)在固定温度下,接受使目标函数值下降的候选解的概 率要大于使用目标函数值上升的候选解的概率;
• 2)随着温度的下降,接受使目标函数值上升的解的概率 要逐渐减少;
• 3)当温度趋于零时,只能接受目标函数值下降的解。 模状拟态退接火受算函法数通。常采用min{1,exp[C(X(1))-C(X(2))/tk]}作为
E(X(2))<E’?

6
二、势能曲面变平算法
若是,则令E’= E(X(2), t);
否则按下式决定是否接受X(2) :
~
~
random(0,1)<exp{[E( X (1), t) E( X (2), t)] / k BT}
若X(2)被接受,则令X(1)= X(2),转步骤(5);
否则恢复状态X(1),转步骤(2).
If E(X2)< E(X1) then X1:=X2, X2:=X1-▽E(X1)×h; Else X1:=X2, h:=h×0.8, X2:=X1-▽E(X1)×h; Until E(X2)<ε or h<10-4 Return X2. End
三、吸引盘填充算法
• 2. 吸引盘填充(Basin Filling, BF)算法
相关文档
最新文档