1、主要内容,一 遗传算法 二 模糊优化 三 随机规划 四 神经网络优化方法 五 退火算法 六 动态规划,智能优化方法,主要参考书目,1、刘宝碇 不确定规划与模糊规划清华大学出版社2、方述诚 模糊数学与模糊优化科学出版社 3、所有智能(软)优化的书都可以作为参考书,以工科的教材为主,遗传算法 Genetic Algorithm,1. “乱枪打鸟”2. 保证次最优,基本思想: Darwin进化论和Mendel的遗传学 基本过程:,上述学说包括以下三个方面: ()遗传(heredity) “种瓜得瓜,种豆得豆”,亲代把生物信息交给子代,子代按照所得信息而发育、分化,子代总是和亲代具有相同或相似的性状。
2、 ()变异(variation) 亲代和子代之间以及子代的不同个体之间总有差异。变异是随机发生的,变异的选择和积累是生命多样性的根源。 ()生存斗争和适者生存 由于弱肉强食和生存斗争不断进行,其结果是适者生存,不适者被淘汰,通过一代代的选择作用,物种变异朝着一个方向积累,演变为新的物种。,基本概念与术语 :,一、串(String): 它是个体(Individual)的表现形式,在GA算法中可以是二进制串,并且对应于遗传学中的染色体(Chromosome)。 二、群体(Population):个体的集合称为群体,串是群体的元素. 三、群体大小(Population Size): 在群体中个体的数
3、量称为群体的大小。 四、基因(Gene): 基因是串中的元素,基因用于表示个体的特征。例如有一个串S1011,则其中的1,0,1,1这4个元素分别称为基因。它们的值称为等位基因(Alletes)。,五 、基因位置(Gene Position): 一个基因在串中的位置称为基因位置,有时也简称基因位。基因位置由串的左向右计算,例如在串S1101中,0的基因位置是3。基因位置对应于遗传学中的地点(Locus)。 六、基因特征值(Gene Feature): 在用串表示整数时,基因的特征值与二进制数的权一致;例如在串S=1011中,基因位置3中的1,它的基因特征值为2;基因位置1中的1,它的基因特征值
4、为8。 七、适应度(Fitness):某一个体对于环境的适应程度。,适应度的表达式见课本。常常取,模拟自然界优胜劣汰的进化现象,把搜索空间映射为遗传空间,把可能的解编码成一个向量染色体,向量的每个元素称为基因。把搜索过程变为一代到另一代不断的繁衍过程,不断计算各染色体的适应值,选择最好的染色体获得最优解,Mendel遗传学说的基因遗传原理,遗传算法还有一些其它的概念,这些概念在介绍遗传算法的原理和执行过程时,再进行说明。,遗传算法的原理: 1) 遗传算法GA把问题的解表示成“染色体”,并在算法中转化成二(k)进制编码的串。 2) 每次执行和操作一群“染色体”,也即是假设解。 3)把这些假设解置
5、于问题的“环境”中,并按适者生存的原则,从中选择出较适应环境的“染色体”进行复制,再通过交叉,变异过程产生更适应环境的新一代“染色体”群。 4)一代一代地进化,最后收敛到最适应环境的一个“染色体”上,它就是问题的最优解。,编码和解码 (二进制编码;浮点数 编码;符号编码);编码: 把原问题的可行解转化为个体符号字符串的方法 解码: 是编码的逆运算。,1)编码与解码计算: 10进制与k进制互相转化,10进制 “逢10进1”;k进制 “逢k进1”;对比表示如下:,上面的第二个式子实际上给出2 进制转化为10进制的公式,而10进制转化为2进制,使用下面的 “除2取余”法:EX: 将10进制数45转化
6、为2进制数,上式两边同时除以2得,所以 (1恰好是除后的余数), 改写上式为:,最低位最高位,选择运算 从旧的种群中选择适应度高的染色体,放入匹配集(缓冲 区),为以后染色体交换、变异,产生新的染色体作准备。,选择方法适应度比例法(转轮法) 按各染色体适应度大小比例来决定其被选择数目的多少。 某染色体被选的概率:,xi 为种群中第i个染色体,,遗传算法的基本运算: 1) 选择; 2) 交换; 3) 变异,染色体的 适应度和所占的比例,用转轮方法进行选择,举例: 具有6个染色体的二进制编码、适应度值、Pc累计 值。,一个选择具体步骤,1)计算各染色体适应度值 2)累计所有染色体适应度值,记录中间
7、累加值S - mid 和最后累加值 sum = f(xi) 3) 产生一个随机数 N,0 N sum4) 选择对应中间累加值S - mid 的第一个染色体进入交换集5) 重复(3)和(4),直到获得足够的染色体。,染色体被选的概率,被选的染色体个数,10个染色体种群按比例的选择过程,交换操作,方法:随机选择二个染色体(双亲染色体),随机指定一点或多点, 进行交换,可得二个新的染色体(子辈染色体).,新的子辈染色体: A 11010001B 01011110,模拟生物在自然界环境变化,引起基因的突变.在染色体二进制编码中,1变成0;或0变成1.突变产生染色体的多样性,避免进化中早期成熟,陷入局部
8、极值点,突变的概率很低.,变异,复制不能创新,交换解决染色体的创新,GA的流程,简单遗传算法(GA)的基本参数,种群规模 P: 参与进化的染色体总数. 代沟G: 二代之间不相同的染色体数目,无重叠G = 1;有重叠 0 G 1 选择方法: 转轮法,精英选择法,竞争法. 交换率: Pc 一般为60100%. 变异率: Pm 一般为0.110%,举例:,变异概率取0.001,初始种群和它的适应度值,染色体的交换操纵,举例:,14,步骤1)编码:确定二进制的位数;组成个体(染色体),步骤2)选择种群数P 和初始个体,计算适应度值, P = 20;,步骤3)确定选择方法;交换率PC;变异率Pm。 选择
9、方法用竞争法; PC = 0.7, Pm = 0.05,计算结果: 8代后,f(x,y) =0.998757, 41代后,f(x,y) =1.00000, x =3.000290, y =2.999924.160次适应度计算,达到最优值。,遗传算法的基本数学问题,一个重要的定理图式定理,什么叫图式?,描述种群中染色体相似性的字符串。,(*为通配符),图式的描述:, 定义长度(H)H左右二端有定义位置之间的距离;, 图式的阶次(或固定长度)O(H)H中非*位(有定义位)的个数。,图式定理的推导,图式在选择过程中的增加.,经过选择,在t+1代,图式H的数量m(H,t+1)为:,图式在交换中的破坏,
10、图式在变异中的破坏,经过选择、交换、变异后在t+1中,图式H的数量:,图式定理:在选择、交换、变异的作用下,阶次低、定义长度短、适应度高的图式(模块)将按指数增长的规律,一代一代地增长。,遗传算法在应用中的一些基本问题,1)知识的编码,2)适应度函数。a) 适应度函数值必须非负。根据情况做适当的处理,二进制和十进制的比较:二进制有更多图式和更大的搜索范围;十进制更接近于实际操作。,3)全局最优和收敛性。根据图式定理,对于具有“欺骗性”函数,GA有可能落入局部最优点。,b)为保持种群的多样性,防止“超级”染色体“统治”种群。,欺骗性函数,图式划分:指引相互之间竞争的定义位为同一集合的一组图式。如
11、#表示定义位,则H1=*1*0*,H2=*0*1* ,H3=*1*1*,H4=*0*0* 同属于划分*#*#*。,总平均适应度(OAF):对一个给定图式,OAF即为其成员的平均适应度。,欺骗性函数包含全局最优的图式其OAF不如包含局部最优的OAF,这种划分称为欺骗划分,它会使GA陷入局部最优。如最高阶欺骗函数有k个定义位,则此函数称k阶欺骗。,举例:3位欺骗函数, 高级GA算法,1)操作的改进,2)算法的改进,选择方法改进:精英法(竞赛法)、置换式和非置换式随机选择法,排序法。,交换方法的改进:多点交换;重组运算,微种群遗传算法(GA),双种群遗传算法(DPGA),重组运算:解决染色体分布过于
12、集中问题。把适应度函数做进一步处理。,终止条件:1)达到预定指标;2)达到预定代数。,GA算法,双种群算法( DPGA),基本思想:利用人类社会分工合作的机理。,分成:全局种群粗搜索,寻找可能存在的最优区域;局部种群 精搜索在全局划定的区域内,寻找最优点。,遗传算法的应用:1)神经网络结构参数的选择2)滑模控制中应用3)倒立摆控制中应用,传统的优化方法(局部优化)像共轭梯度法、拟牛顿法、单纯形方法 GA全局优化方法漫步法(Random Walk)、模拟退火法、GA,GA与传统优化方法的比较,比较:,传统的优化方法,1)依赖于初始条件。2)与求解空间有紧密关系,促使较快地收敛到局部 解,但同时对解域有约束,如可微或连续。利用这些约束,收敛快。 3)有些方法,如Davison-Fletcher-Powell直接依赖于至少一阶导数;共轭梯度法隐含地依赖于梯度。,GA-全局优化方法,1)不依赖于初始条件; 2)不与求解空间有紧密关系,对解域,无可微或连续的要求。求解稳健,但收敛速度慢。能获得全局最优。适合于求解空间不知的情况,Matlab中的GA算法的调用:,位置: Genetic Algorithm and Direct Search Toolbox,形式: x=ga(fitnessfun, nvars,options),Matlab中有二十多个优化的工具函数;,