slide1
Download
Skip this Video
Download Presentation
第四章 模拟退火

Loading in 2 Seconds...

play fullscreen
1 / 60

第四章 模拟退火 - PowerPoint PPT Presentation


  • 84 Views
  • Uploaded on

第四章 模拟退火. 第四章 模拟退火. 一 . 前言 二 . 基本算法框架 三 . 算法举例 四 . 算法收敛性 分析. 一 . 前言. 算法 的提出 原始算法是由 Metropolis 等 (1953) 提出,但未引起反响; 1982 年 Kirkpatrick 等将其应用于组合优化,才得到广泛的应用 目的是为了克服优化过程中陷入局优和初值依赖等弊端 基本思想是模拟热力学中的退火过程. 一 . 前言. 金属退火过程 什么是退火 退火 是指将固体加热到足够高的温度,使分子呈随机排列状态,然后逐步降温使之冷却,最后分子以低能状态排列,固体达到某种稳定状态。.

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' 第四章 模拟退火' - cherokee-guerrero


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
slide2
第四章 模拟退火

一.前言

二.基本算法框架

三.算法举例

四.算法收敛性分析

slide3
一.前言
  • 算法的提出
    • 原始算法是由Metropolis等(1953)提出,但未引起反响; 1982年Kirkpatrick等将其应用于组合优化,才得到广泛的应用
    • 目的是为了克服优化过程中陷入局优和初值依赖等弊端
    • 基本思想是模拟热力学中的退火过程
slide4
一.前言
  • 金属退火过程
    • 什么是退火

退火是指将固体加热到足够高的温度,使分子呈随机排列状态,然后逐步降温使之冷却,最后分子以低能状态排列,固体达到某种稳定状态。

slide5
一.导言
  • 金属退火过程
    • 什么是退火

加温过程——增强粒子的热运动,消除系统原先可能存在的非均匀态

等温过程——对于与环境换热而温度不变的封闭系统,系统状态的自发变化总是朝自由能减少的方向进行,当自由能达到最小时,系统达到平衡态

冷却过程——使粒子热运动减弱并渐趋有序,系统能量逐渐下降,从而得到低能的晶体结构

slide6

缓慢下降

快速下降

高温

高温

低温

低温

高能状态

高能状态

低能状态

高能状态

一.前言
  • 金属退火过程
    • 什么是退火

退火

淬火

slide7
一.前言
  • 金属退火过程
    • 数学描述

设热力学系统S中有n个状态(有限且离散的),其中状态i的能量为Ei,在温度Tk下,经一段时间达到热平衡,此时处在状态i的概率为:

则有如下关系:Ei↓→ Pi ↑, Tk↓→ Pi ↓

如何确定Ck?

slide8
一.前言
  • 金属退火过程
    • 数学描述
slide9
一.前言
  • 金属退火过程
    • 数学描述

通过求Ck,获得Bolzman方程:

slide10
一.前言
  • 金属退火过程
    • Bolzman方程
      • 同一温度下,S处在能量小的状态要比处在能量大的状态概率大

若存在E1<E2,则在同一温度Tk下,有

故P1(Tk)>P2(Tk)

slide11
一.前言
  • 金属退火过程
    • Bolzman方程
      • 若i*表示S中唯一的最低能量的状态, 是关于温度Tk单调递减

对Pi(Tk)求对温度的导数,则

slide12
一.前言
  • 金属退火过程
    • Bolzman方程

由于

且存在当 时,

slide13
一.前言
  • 金属退火过程
    • Bolzman方程
      • 当 时,

同理,当 时,

slide14
一.前言
  • 金属退火过程
    • 温度Tk对 的影响
      • 当Tk 很大时,
      • 当 时,

各状态的概率几乎相等

与 的小差别带来 和 的巨大差别

slide15
一.前言
  • 金属退火过程
    • 温度Tk对 的影响

例:

当 时

slide16
一.前言
  • 金属退火过程
    • 温度Tk对 的影响

例:

当 时

此时

温度趋于0时,以概率1趋于最小能量状态

slide17
能量越低越稳定!!!

——自然界的普遍规律

slide18
一.前言
  • 组合优化与退火
    • Metropolis准则—以概率接受新状态

若在温度Tk,当前状态i→新状态j

若Ej<Ei,则接受 j 为当前状态

否则,若概率 p=exp[-(Ej-Ei)/Tk] 大于[0,1)区间的随机数,则仍接受状态 j为当前状态;若不成立则保留状态 i为当前状态

在高温下,可接受与当前状态能量差较大的新状态在低温下,只接受与当前状态能量差较小的新状态

slide19
一.前言
  • 组合优化与退火
slide20
二.基本算法框架
  • 构成要素
    • 解的表达与邻域移动方式同TS
    • 邻域解的产生

在当前解的邻域结构内以一定概率方式(均匀分布、

正态分布、指数分布等)产生

    • 选择策略

一般采用min[1,exp(-∆f/t)]

slide21
二.基本算法框架
  • 构成要素
    • 初始温度
      • 均匀抽样一组状态,以各状态目标值的方差为初温
      • 随机产生一组状态,确定两两状态间的最大目标值差,根据差值,利用一定的函数确定初温
      • 利用经验公式

实验表明:初温越大,获得高质量解的机率越大,但花费较多的计算时间

slide22
二.基本算法框架
  • 构成要素
    • 降温函数
      • ,其中

优点:简单易行,很美丽的方法

slide23
二.基本算法框架
  • 构成要素
    • 热平衡条件

Metropolis抽样稳定准则

      • 设置内循环迭代次数
      • 检验目标函数的均值是否稳定
      • 连续若干步的目标值变化较小
    • 停止准则
      • 设置外循环迭代次数
      • 设置终止温度的阈值
      • 算法搜索到的最优值连续若干步保持不变
slide24
二.基本算法框架
  • 算法流程

Step 1

选一个初始点i( ),给定初始温度 ,终止温度 ,令迭代指标 , ;

Step 2

随机产生一个邻域解 ,计算目标值增量 ;

注:选择 时,要足够高,使

slide25
二.基本算法框架
  • 算法流程

Step 3

若 ,令i=j;(j比i好,无条件转移)

否则产生 ,若 ,则令i=j ;(i比j好,有条件转移)

Step 4

若达到热平衡(内循环停止准则),转Step 5;否则,转Step 2;

注: 高时,广域搜索; 低时,局域搜索

slide26
二.基本算法框架
  • 算法流程

Step 5

若k=k+1,更新 ,若 (外循环停止准则),则停止;否则,转Step 2。

slide27
二.基本算法框架
  • 算法伪码图
slide28
二.基本算法框架
  • SA的两种变型

MA:

Microcanonic annealing

slide29
二.基本算法框架
  • SA的两种变型

TA:

Threshold accepting method

slide30
作 业

分析SA与MA和TA的异同点。

slide31
三.算法举例
  • 问题提出

单机极小化总流水时间的排序问题

四个工作:

求使 的最优顺序

slide32
三.算法举例
  • 问题提出

预备知识:按SPT准则,最优顺序为3-1-4-2

slide33
三.算法举例
  • 算法设计
    • 编码方式:顺序编码
    • 初始解的产生:随机产生,如1-4-2-3
    • 邻域移动方式:2-OPT,即两两交换
    • 初始温度
    • 终止温度
    • 降温函数
    • 内循环次数
slide34
三.算法举例

初始解:i=1-4-2-3

(1)

① j=1-3-2-4

② j=4-3-2-1

③ j=4-2-3-1

注释:

  • ①无条件转移;
  • ②③为有条件转移;
  • 在②③中,虽然目标值变坏,但搜索范围变大;
  • 是随机产生的
slide35
三.算法举例

(2)

① j=4-2-1-3

② j=4-3-1-2

③ j=4-2-3-1

注释:

  • ①有条件转移;
  • ②为无条件转移;
  • 在③中,停在4-3-1-2状态,目标值仍为109
slide36
三.算法举例

(3)

注释:

  • ① ②无条件转移;
  • 在③中,停在3-1-4-2状态,目标值仍为92;

SA没有历史最优,不会终止在最优解,故算法一

定要保持历史最优

slide37
四.算法收敛性分析
  • Markov过程的基本概念

例:青蛙在3块石头上随机跳动,行动的特点是无记忆性

1/3

1/3

1/3

1/4

1/2

1/4

1/4

1/4

1/2

slide38
四.算法收敛性分析
  • Markov过程的基本概念
    • 状态:处于系统中的一种特定状况的表达
    • 状态转移概率:从状态i转移到状态 j 的可能性
    • 无后效性:到一个状态后,决策只与本状态有关,与以前的历史状态无关
slide39
四.算法收敛性分析
  • Markov过程的基本概念
    • 以青蛙跳动为例说明状态转移概率

用石头唯一的表达青蛙所处的状态,假设青蛙

跳动具有无后效应的特点。

1/3

1/3

1/3

1/4

状态转移概率矩阵

1/2

1/4

1/4

1/4

1/2

青蛙跳动图示

slide40
四.算法收敛性分析
  • Markov过程的基本概念
    • 以青蛙跳动为例说明状态转移概率

表示t时刻青蛙处在各状

态的概率分布向量, 是行向量,在t+1时刻有:

若 ,则

slide41
四.算法收敛性分析
  • Markov过程的基本概念
    • 以青蛙跳动为例说明状态转移概率

假设系统在t+1时达到稳态,则

故 存在唯一解

slide42
四.算法收敛性分析
  • Markov过程的基本概念
    • 以青蛙跳动为例说明状态转移概率

在上面的小例子中解方程组:

可得结果

可见系统达到稳态时,青蛙是在第三块石头上

的机会多一些

slide43
四.算法收敛性分析
  • SA的Markov描述
    • 问题

, ,S是有限集,设 (集S中

元素个数为N),将状态按照目标值进行升序编号,

slide44
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率

设为i选j 为邻域点时, 的转移概率

无条件转移

有条件转移

slide45
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率

设 是系统处于状态 i时选择 j 为邻域移动点

的概率, 为状态 i的邻域点的个数,有

则状态i到状态 j的转移概率为

slide46
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率

状态转移矩阵为:

分两种情况讨论:

slide47
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率
    • 当 时

若i<j,则

若i>j,则

slide48
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率
slide49
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率
    • 当 时

若i<j,则

若i>j,则

slide50
四.算法收敛性分析
  • SA的Markov描述
    • 状态转移概率

状态1是 “捕捉的”(任何状态到1状态后都无法转出)即青蛙跳到石头1上无法跳出

slide51
四.算法收敛性分析
  • SA的收敛性证明
    • 引理

当 时,系统达到稳态时的状态概率分布向量

证明:

当系统达到稳态时,存在

slide52
四.算法收敛性分析
  • SA的收敛性证明
    • 引理

证明:

slide53
四.算法收敛性分析
  • SA的收敛性证明
    • 引理

证明:

slide54
四.算法收敛性分析
  • SA的收敛性证明
    • 引理

证明:

又 ,

故当 时,

当 时,得证。

slide55
四.算法收敛性分析
  • SA的收敛性证明
    • 定理

定理:G对称,当达到热平衡时,对所有

有:

注释:

表示状态概率分布向量

表示系统处在状态1的概率

表示表示从1移向状态i的概率

slide56
四.算法收敛性分析
  • SA的收敛性证明
    • 定理

证明:

在温度Tk下达到热平衡时,有

当i=1时,

slide57
四.算法收敛性分析
  • SA的收敛性证明
    • 定理

证明:

因此,对于所有 ,当达到热平衡时

得证。

slide58
四.算法收敛性分析
  • SA的收敛性证明

由以上定理可知,当Tk趋近于0时,对于所有状态

i>1,有 趋近于0, 趋近于1,即SA对应

的Markov过程将以概率1收敛于状态1。

slide59
四.算法收敛性分析
  • SA实现全局收敛的条件
    • 状态可达
    • 初值鲁棒
    • 极限分布的存在
slide60
实 验

工作指派问题

n个工作可以由n个工人分别完成。工人i完成工作j的时间为dij,问如何安排可是总的工作时间达到最小。试按SA思想设计一个该问题的求解算法,并利用计算机语言实现设计的算法。

ad