数学建模现代优化算法学习教案.pptx
《数学建模现代优化算法学习教案.pptx》由会员分享,可在线阅读,更多相关《数学建模现代优化算法学习教案.pptx(51页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数学建模现代数学建模现代(xindi)优化算法优化算法第一页,共51页。一般的优化具有下面(xi mian)形式:minf(x1,x2,xn)minf(x1,x2,xn)s.t.g(x)s.t.g(x)0 0,x xD D其中其中x1,x2,xnx1,x2,xn(即问题的可行域,代(即问题的可行域,代表问题参数的选择范围),即表问题参数的选择范围),即minf(X)minf(X),其中,其中X X(矢量形式)。(矢量形式)。f(x)f(x)是决策问题的数学模型,是决策问题的数学模型,也是决策问题的目标函数也是决策问题的目标函数(hnsh)(hnsh),g(x)g(x)0 0是决策是决策问题的约
2、束条件,问题的约束条件,D D是决策问题的定义域(可行域)是决策问题的定义域(可行域)。问题归结为求极值。极值点非常多,需要找到全。问题归结为求极值。极值点非常多,需要找到全局最小点。局最小点。注:求问题的最大和最小是同一个问题,算法注:求问题的最大和最小是同一个问题,算法完全一样。完全一样。第1页/共51页第二页,共51页。习惯上,将优化算法分为两类:局部优化算法和全局性优化算法。前者可以称为经典(jngdin)优化算法,已经得到了人们广泛深入的研究。线性规划、整数规划、01规划、非线性规划、排队论、决策论。后者习惯上称为现代优化算法,是20世纪80年代兴起的新型全局性优化算法,主要包括禁忌
3、搜索、模拟退火、遗传算法、神经网络等,其主要应用对象是优化问题中的难解问题,即NPhard问题 第2页/共51页第三页,共51页。算法(sun f)比喻 为了找出地球上最高的山,一群有志气的兔子(t zi)们开始想办法。第3页/共51页第四页,共51页。方案一:兔子们吃了失忆药片,并被发射方案一:兔子们吃了失忆药片,并被发射(fsh)(fsh)到太空,然后随机落到了地球上的某些地方。他们不到太空,然后随机落到了地球上的某些地方。他们不知道自己的使命是什么。但是,如果你过几年就杀死知道自己的使命是什么。但是,如果你过几年就杀死一部分海拔低的兔子,多产的兔子们自己就会找到珠一部分海拔低的兔子,多产
4、的兔子们自己就会找到珠穆朗玛峰。穆朗玛峰。遗传算法遗传算法 第4页/共51页第五页,共51页。方案二:兔子方案二:兔子(t zi)(t zi)们朝着比现在高的地方们朝着比现在高的地方跳去,它们找到了不远处的最高山峰。但是这座山跳去,它们找到了不远处的最高山峰。但是这座山不一定是珠穆朗玛峰。其实,它们这种做法只是自不一定是珠穆朗玛峰。其实,它们这种做法只是自己心理上认为找到了最高的山,并不能保证局部最己心理上认为找到了最高的山,并不能保证局部最优值就是全局最优值。优值就是全局最优值。局部搜索法局部搜索法 第5页/共51页第六页,共51页。方案三:兔子们知道一个兔子的力量是渺小的。方案三:兔子们知
5、道一个兔子的力量是渺小的。于是,它们互相转告着,哪里于是,它们互相转告着,哪里(n li)(n li)的山已经找过,的山已经找过,并且找过的每一座山他们都留下一只兔子做记号。这并且找过的每一座山他们都留下一只兔子做记号。这样,它们制定了下一步去哪里样,它们制定了下一步去哪里(n li)(n li)寻找的策略。寻找的策略。禁忌搜索法禁忌搜索法 第6页/共51页第七页,共51页。方案四:兔子们用酒将自己灌醉了。它们随方案四:兔子们用酒将自己灌醉了。它们随机地跳了很长时间。在这期间机地跳了很长时间。在这期间(qjin)(qjin),它们可,它们可能走向高处,也可能踏入平地。但是,随着时间能走向高处,
6、也可能踏入平地。但是,随着时间的流逝,它们渐渐清醒了并朝最高方向跳去。的流逝,它们渐渐清醒了并朝最高方向跳去。模拟退火法模拟退火法 第7页/共51页第八页,共51页。一一 遗传算法遗传算法遗传算法是模拟生物在自然环境中的遗传和进化过程遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索算法。而形成的一种自适应全局优化概率搜索算法。它最早由美国它最早由美国(mi u)(mi u)密执安大学的密执安大学的HollandHolland教授提教授提出,起源于出,起源于6060年代对自然和人工自适应系统的研究。年代对自然和人工自适应系统的研究。7070年代年代De.Jong
7、De.Jong 基于遗传算法的思想在计算机上进基于遗传算法的思想在计算机上进行了大量的纯数值函数优化计算实验。在一系列研究行了大量的纯数值函数优化计算实验。在一系列研究工作的基础上。工作的基础上。8080年代由年代由GoldbergGoldberg进行总结,形成进行总结,形成了遗传算法的基本框架。了遗传算法的基本框架。第8页/共51页第九页,共51页。一一 遗传算法遗传算法其主要特点是群体搜索策略和群体中个体之间的信息交换,其主要特点是群体搜索策略和群体中个体之间的信息交换,搜索不依赖于梯度信息。搜索不依赖于梯度信息。它的应用范围非常广泛,尤其适合于处理传统搜索方法难它的应用范围非常广泛,尤其
8、适合于处理传统搜索方法难于解决的复杂和非线性问题,可广泛用于组合于解决的复杂和非线性问题,可广泛用于组合(zh)(zh)优化,优化,机器学习,自适应控制,规划设计和人工生命等领域,从机器学习,自适应控制,规划设计和人工生命等领域,从而确立了它在而确立了它在2121世纪的智能计算技术中的关键地位。世纪的智能计算技术中的关键地位。第9页/共51页第十页,共51页。1 遗传算法的基本(jbn)步骤 遗传算法流程图如下(rxi):集团中个体适应度的检测评估选择交叉变异图1 遗传算法的基本流程编码和初始集团生成第10页/共51页第十一页,共51页。一、编码一、编码一、编码一、编码 遗传算法主要是通过遗传
9、操作对群体中具遗传算法主要是通过遗传操作对群体中具遗传算法主要是通过遗传操作对群体中具遗传算法主要是通过遗传操作对群体中具有某种结构形式的个体施加结重组处理,从有某种结构形式的个体施加结重组处理,从有某种结构形式的个体施加结重组处理,从有某种结构形式的个体施加结重组处理,从而不断而不断而不断而不断(bdun)(bdun)地搜索出群体中个体间结构地搜索出群体中个体间结构地搜索出群体中个体间结构地搜索出群体中个体间结构相似性,由此可见,遗传算法不能直接处理相似性,由此可见,遗传算法不能直接处理相似性,由此可见,遗传算法不能直接处理相似性,由此可见,遗传算法不能直接处理问题空间参数,必须把它们转换成
10、遗传空间问题空间参数,必须把它们转换成遗传空间问题空间参数,必须把它们转换成遗传空间问题空间参数,必须把它们转换成遗传空间的由基因按一定结构组成的染色体或个体。的由基因按一定结构组成的染色体或个体。的由基因按一定结构组成的染色体或个体。的由基因按一定结构组成的染色体或个体。这一转换操作就叫做编码。编码方法主要有:这一转换操作就叫做编码。编码方法主要有:这一转换操作就叫做编码。编码方法主要有:这一转换操作就叫做编码。编码方法主要有:二进制编码,二进制编码,二进制编码,二进制编码,GrayGray编码,动态编码,实数编编码,动态编码,实数编编码,动态编码,实数编编码,动态编码,实数编码,有序串编码
11、,多参数编码,可变长编码码,有序串编码,多参数编码,可变长编码码,有序串编码,多参数编码,可变长编码码,有序串编码,多参数编码,可变长编码等。等。等。等。第11页/共51页第十二页,共51页。(一)一维染色体编码(二值编码)(一)一维染色体编码(二值编码)所谓一维染色体编码是指搜索空间的参数转换到遗传所谓一维染色体编码是指搜索空间的参数转换到遗传(ychun)(ychun)空间过后,其相应的基因呈一维排列构成的染空间过后,其相应的基因呈一维排列构成的染色体。具体地说,在遗传色体。具体地说,在遗传(ychun)(ychun)空间中,用以表示个空间中,用以表示个体的字符集中的要素构成了字符串。如体
12、的字符集中的要素构成了字符串。如a,b,c,da,b,c,d或或1,2,3,41,2,3,4。一维染色体编码中最常用的符号集是二进制符号一维染色体编码中最常用的符号集是二进制符号0,10,1,基于此符号集的个体呈二值码串。二值编码的一般方,基于此符号集的个体呈二值码串。二值编码的一般方法是:法是:(1)(1)根据所需要的精度确定参数的串长;根据所需要的精度确定参数的串长;(2)(2)解码,由二值串转化成实数;解码,由二值串转化成实数;例如:例如:x=13,x=13,可被表示为可被表示为0110101101。第12页/共51页第十三页,共51页。(二)多映射编码(多参数)(二)多映射编码(多参数
13、)在优化问题求解在优化问题求解(qi ji)(qi ji)中常常会遇见多参数中常常会遇见多参数优化问题。其基本思路是将每一个参数进行二优化问题。其基本思路是将每一个参数进行二值编码得到子串,每个子串对应各自的编码参值编码得到子串,每个子串对应各自的编码参数,然后将子串构成一个完整的染色体串。数,然后将子串构成一个完整的染色体串。第13页/共51页第十四页,共51页。二、二、二、二、初始群体的生成初始群体的生成初始群体的生成初始群体的生成 遗传操作是对于多个体同时进行的。这众多的个体组成了群遗传操作是对于多个体同时进行的。这众多的个体组成了群遗传操作是对于多个体同时进行的。这众多的个体组成了群遗
14、传操作是对于多个体同时进行的。这众多的个体组成了群体。在遗传算法处理流程中,继编码设计后的任务是初始群体。在遗传算法处理流程中,继编码设计后的任务是初始群体。在遗传算法处理流程中,继编码设计后的任务是初始群体。在遗传算法处理流程中,继编码设计后的任务是初始群体的设定,并以此为起点一代代进化直到按某种进化停止准体的设定,并以此为起点一代代进化直到按某种进化停止准体的设定,并以此为起点一代代进化直到按某种进化停止准体的设定,并以此为起点一代代进化直到按某种进化停止准则终止进化过程,由此得到最后一代(或群体)。其中需要则终止进化过程,由此得到最后一代(或群体)。其中需要则终止进化过程,由此得到最后一
15、代(或群体)。其中需要则终止进化过程,由此得到最后一代(或群体)。其中需要考虑到两个考虑到两个考虑到两个考虑到两个(lin)(lin)因素:初始群体的设定;进化过程中因素:初始群体的设定;进化过程中因素:初始群体的设定;进化过程中因素:初始群体的设定;进化过程中各代(群体)的规模如何维持?它和交叉概率变异概率等参各代(群体)的规模如何维持?它和交叉概率变异概率等参各代(群体)的规模如何维持?它和交叉概率变异概率等参各代(群体)的规模如何维持?它和交叉概率变异概率等参数一样,对于遗传算法效能的发挥是有影响的。初始群体的数一样,对于遗传算法效能的发挥是有影响的。初始群体的数一样,对于遗传算法效能的
16、发挥是有影响的。初始群体的数一样,对于遗传算法效能的发挥是有影响的。初始群体的设定可采取如下策略:设定可采取如下策略:设定可采取如下策略:设定可采取如下策略:(1)(1)根据问题固有的知识,设法确定最优解所占空间在整个问根据问题固有的知识,设法确定最优解所占空间在整个问根据问题固有的知识,设法确定最优解所占空间在整个问根据问题固有的知识,设法确定最优解所占空间在整个问题空间中的分布范围,然后,在此分布范围内设定初始群体。题空间中的分布范围,然后,在此分布范围内设定初始群体。题空间中的分布范围,然后,在此分布范围内设定初始群体。题空间中的分布范围,然后,在此分布范围内设定初始群体。(2)(2)先
17、随机生成一定数目的个体,然后从中挑出最好的个体加先随机生成一定数目的个体,然后从中挑出最好的个体加先随机生成一定数目的个体,然后从中挑出最好的个体加先随机生成一定数目的个体,然后从中挑出最好的个体加到初始群体当中去。这种过程不断迭代,直到初始群体中个到初始群体当中去。这种过程不断迭代,直到初始群体中个到初始群体当中去。这种过程不断迭代,直到初始群体中个到初始群体当中去。这种过程不断迭代,直到初始群体中个数达到了预先确定的规模。数达到了预先确定的规模。数达到了预先确定的规模。数达到了预先确定的规模。第14页/共51页第十五页,共51页。三、适应度函数三、适应度函数三、适应度函数三、适应度函数 适
18、应度函数表明个体或解的优劣性。不同的问题,适应性函数的适应度函数表明个体或解的优劣性。不同的问题,适应性函数的适应度函数表明个体或解的优劣性。不同的问题,适应性函数的适应度函数表明个体或解的优劣性。不同的问题,适应性函数的定义方式也不同。这一操作是借用了达尔文的自然选择原则,定义方式也不同。这一操作是借用了达尔文的自然选择原则,定义方式也不同。这一操作是借用了达尔文的自然选择原则,定义方式也不同。这一操作是借用了达尔文的自然选择原则,即个体适应度越高,其被选择的个体越多。即个体适应度越高,其被选择的个体越多。即个体适应度越高,其被选择的个体越多。即个体适应度越高,其被选择的个体越多。遗传算法在
19、进化搜索中基本上不用外部信息,仅用目标函数即适遗传算法在进化搜索中基本上不用外部信息,仅用目标函数即适遗传算法在进化搜索中基本上不用外部信息,仅用目标函数即适遗传算法在进化搜索中基本上不用外部信息,仅用目标函数即适应度函数为依据。遗传函数的目标函数不受连续可微的约束且应度函数为依据。遗传函数的目标函数不受连续可微的约束且应度函数为依据。遗传函数的目标函数不受连续可微的约束且应度函数为依据。遗传函数的目标函数不受连续可微的约束且定义域可以为任意组合。对目标函数的唯一要求是,针对输入定义域可以为任意组合。对目标函数的唯一要求是,针对输入定义域可以为任意组合。对目标函数的唯一要求是,针对输入定义域可
20、以为任意组合。对目标函数的唯一要求是,针对输入可计算出能加以比较的非负结果可计算出能加以比较的非负结果可计算出能加以比较的非负结果可计算出能加以比较的非负结果(ji gu)(ji gu),这一特点使得遗传,这一特点使得遗传,这一特点使得遗传,这一特点使得遗传算法运用很广。在具体的应用中适应度函数的设计要结合求解算法运用很广。在具体的应用中适应度函数的设计要结合求解算法运用很广。在具体的应用中适应度函数的设计要结合求解算法运用很广。在具体的应用中适应度函数的设计要结合求解问题本身的要求而定,要强调的是,适应度函数评估是选择操问题本身的要求而定,要强调的是,适应度函数评估是选择操问题本身的要求而定
21、,要强调的是,适应度函数评估是选择操问题本身的要求而定,要强调的是,适应度函数评估是选择操作的依据,适应度函数的设计直接影响到遗传算法的性能。作的依据,适应度函数的设计直接影响到遗传算法的性能。作的依据,适应度函数的设计直接影响到遗传算法的性能。作的依据,适应度函数的设计直接影响到遗传算法的性能。第15页/共51页第十六页,共51页。目标函数映射成适应度函数目标函数映射成适应度函数 在许多问题求解在许多问题求解(qi ji)(qi ji)中,其目标函数是求取中,其目标函数是求取费用函数(代价函数)费用函数(代价函数)g g(x x)的最小值,而不是求)的最小值,而不是求效能函数或者利润函数的最
22、大值。由于遗传算法中,效能函数或者利润函数的最大值。由于遗传算法中,适应度函数要比较排序并在此基础上计算选择概率,适应度函数要比较排序并在此基础上计算选择概率,所以适应度函数的值要取正值。由此可见,在不少所以适应度函数的值要取正值。由此可见,在不少场合,将目标函数映射成最大值形式且函数值非负场合,将目标函数映射成最大值形式且函数值非负的适应度函数是很有必要的。在通常情况下,要把的适应度函数是很有必要的。在通常情况下,要把一个最小化函数转化为最大化问题,只需要简单的一个最小化函数转化为最大化问题,只需要简单的把费用函数乘以把费用函数乘以-1-1,即以下两种基本方法:,即以下两种基本方法:第16页
23、/共51页第十七页,共51页。(1 1)如目标函数为最大化问题:)如目标函数为最大化问题:(2 2)如目标函数为最小化问题:)如目标函数为最小化问题:但这对遗传算法而言,这种方法还不足以保证在但这对遗传算法而言,这种方法还不足以保证在各种各种(zhn)(zhn)情况下的非负值。对此可以采用情况下的非负值。对此可以采用以下的方法进行转换:以下的方法进行转换:(3 3)其中其中 可以采用目前可以采用目前g(x)g(x)出现过的最大值或者当出现过的最大值或者当前群体当中出现过的最大值,但最好与群体无关。前群体当中出现过的最大值,但最好与群体无关。第17页/共51页第十八页,共51页。当求解问题的目标
24、函数采用利润函数形式时,为了保当求解问题的目标函数采用利润函数形式时,为了保证其非负性,可用如下变换式:证其非负性,可用如下变换式:(4 4)式中系数式中系数 可以式适合的输入值,或是当前一代或者可以式适合的输入值,或是当前一代或者前面几代中的前面几代中的g g(x x)的最小值,也可以是群体的方差。)的最小值,也可以是群体的方差。第三、四两种方法是对第一、二两种方法的改进,但第三、四两种方法是对第一、二两种方法的改进,但有时存在有时存在(cnzi)(cnzi)界限值预先估计困难,不可能精确界限值预先估计困难,不可能精确的问题,为此有下面两种改进的方法:的问题,为此有下面两种改进的方法:第18
25、页/共51页第十九页,共51页。(5)(5)若目标若目标(mbio)(mbio)函数为最小问题函数为最小问题:(6)(6)若目标若目标(mbio)(mbio)函数为最大问题:函数为最大问题:第19页/共51页第二十页,共51页。四、遗传操作四、遗传操作四、遗传操作四、遗传操作 遗传操作是模拟生物基因遗传的操作。在遗传算法遗传操作是模拟生物基因遗传的操作。在遗传算法遗传操作是模拟生物基因遗传的操作。在遗传算法遗传操作是模拟生物基因遗传的操作。在遗传算法中,通过编码组成初始群体后,遗传操作的任务就中,通过编码组成初始群体后,遗传操作的任务就中,通过编码组成初始群体后,遗传操作的任务就中,通过编码组
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数学 建模 现代 优化 算法 学习 教案
限制150内