混合整数非线性规划问题的改进差分进化算法

混合整数非线性规划问题的改进差分进化算法
混合整数非线性规划问题的改进差分进化算法

差分进化算法及应用研究

湖南大学 硕士学位论文 差分进化算法及应用研究 姓名:吴亮红 申请学位级别:硕士 专业:控制理论与控制工程指导教师:王耀南 20070310

硕士学位论文 摘要 论文首先介绍了智能优化算法的产生对现代优化技术的重要影响,阐述了智能优化算法的研究和发展对现代优化技术和工程实践应用的必要性,归纳总结了智能优化算法的主要特点,简要介绍了智能优化算法的主要研究内容及应用领域。 对差分进化算法的原理进行了详细的介绍,给出了差分进化算法的伪代码。针对混合整数非线性规划问题的特点,在差分进化算法的变异操作中加入取整运算,提出了一种适合于求解各种混合整数非线性规划问题的改进差分进化算法。同时,采用时变交叉概率因子的方法以提高算法的全局搜索能力和收敛速率。用四个典型测试函数进行了实验研究,实验结果表明,改进的差分进化算法用于求解混合整数非线性规划问题时收敛速度快,精度高,鲁棒性强。 采用非固定多段映射罚函数法处理问题的约束条件,提出了一种用改进差分进化算法求解非线性约束优化问题的新方法。结合差分进化算法两种不同变异方式的特点,引入模拟退火策略,使算法在搜索的初始阶段有较强的全局搜索能力,而在后阶段有较强的局部搜索能力,以提高算法的全局收敛性和收敛速率。用几个典型Benchmarks函数进行了测试,实验结果表明,该方法全局搜索能力强,鲁棒性好,精度高,收敛速度快,是一种求解非线性约束优化问题的有效方法。 为保持所求得的多目标优化问题Pareto最优解的多样性,提出了一种精英保留和根据目标函数值进行排序的多目标优化差分进化算法。对排序策略中目标函数的选择方式进行了分析和比较,并提出了一种确定进化过程中求得的精英解是否进入Pareto最优解集的阈值确定方法。用多个经典测试函数进行了实验分析,并与NSGA-Ⅱ算法进行了比较。实验结果表明,本文方法收敛到问题的Pareto前沿效果良好,获得解的散布范围广,能有效保持所求得的Pareto最优解的多样性。 提出了一种新的基于群体适应度方差自适应二次变异的差分进化算法。该算法在运行过程中根据群体适应度方差的大小,增加一种新的变异算子对最优个体和部分其它个体同时进行变异操作,以提高种群多样性,增强差分进化算法跳出局部最优解的能力。对几种典型Benchmarks函数进行了测试,实验结果表明,该方法能有效避免早熟收敛,显著提高算法的全局搜索能力。提出了将该改进算法用来整定不完全微分PID控制器最优或近似最优参数的新方法。为克服频域中常用的积分性能指标如IAE,ISE和ITSE的不足,提出了一种新的时域性能指标对控制器性能进行测试和评价。用三个典型的控制系统对提出的ASMDE-PID控制器进行了测试。实验结果表明,该方法实现容易,收敛性能稳定,计算效率高。与ZN,GA和ASA方法相比,DE在提高系统单位阶跃响应性能方面效率更高,鲁棒性更强。 为了提高差分进化算法的全局搜索能力和收敛速率,提出了一种双群体伪并行差分

基本差分进化算法

基本差分进化算法 基本模拟退火算法概述 DE 算法是一种基于群体进化的算法,其本质是一种基于实数编码的具有保优思想的贪婪遗传算法。由于DE 算法操作简单,寻优能力强,自提出以来引起了国内外学者的高度关注,目前已在电力系统优化调度、配网重构等领域得到了应用。 1、算法原理 DE 算法首先在N 维可行解空间随机生成初始种群P 0001[,,]N =X x x L ,其中000T 1[,,]i i iN x x =x L ,p N 为DE 种群规模。DE 算法的核心思想在于采取变异和交叉操 作生成试验种群,然后对试验种群进行适应度评估,再通过贪婪思想的选择机制,将原种群和试验种群进行一对一比较,择优进入下一代。 基本DE 算法主要包括变异、交叉和选择三个操作。首先,在种群中随机选取三个个体,进行变异操作: 1123()t t t t i r r r F +=+-v x x x 其中1t i +v 表示变异后得到的种群,t 表示种群代数,F 为缩放因子,一般取(0,2],它的大小可以决定种群分布情况,使种群在全局范围内进行搜索;1t r x 、2t r x 、3t r x 为从种群中随机抽取的三个不同的个体。 然后,将变异种群和原种群进行交叉操作: 1,R 1 ,,R () or () () and ()t i j t i j t i j v rand j C j randn i u x rand j C j randn i ++?≤=?=?>≠?? 其中t 1,i j u +表示交叉后得到的种群,()rand j 为[0,1]之间的随机数,j 表示个体的第j 个分量,R C 为交叉概率,()randn i 为[1,,]N L 之间的随机量,用于保证新个体至少有一维分量由变异个体贡献。 最后,DE 算法通过贪婪选择模式,从原种群和试验种群中选择适应度更高的个体进入下一代: 11t 11 ()() ()()t t t i i i i t t t i i i f f f f ++++?<=?≥?u u x x x u x 1()t i f +u 、()t i f x 分别为1t i +u 和t i x 的适应度。当试验个体1t i +u 的适应度优于t i x 时,

基于TSP的改进差分进化算法

龙源期刊网 https://www.360docs.net/doc/7418011061.html, 基于TSP的改进差分进化算法 作者:朱宇航伏楠 来源:《硅谷》2012年第17期 摘要: 针对TSP问题,提出一种改进的差分进化算法:利用贪心算法产生初始种群,定义特有的编码匹配函数进行变异操作,排序法修复变异个体,并采用顺序交叉,在变异操作之后,加入新的选择机制,防止交叉操作破坏变异出的优良个体,实验结果表明改进后的差分进化算法能够高效地解决TSP问题,体现良好的优化性能。 关键词: 差分进化算法;TSP;进化算法 0 引言 差分进化算法(DE:Differential Evolution)是一种模拟自然进化法则的仿生智能计算方法,在解决复杂的全局优化问题方面,DE的性能更加优秀,过程也更为简单,受控参数少[1],但由于DE 特有的差分操作的限制,DE被成功应用的领域多集中在连续优化领域,在离散优化领域的应用还相对较少[2]。 TSP(旅行商问题)作为典型的离散优化问题,是解决很多实际问题的最终转化形式,同时也是著名的NP难题,在短时间内求出其最优解非常困难,现有解法[3-4]在求解中都各有缺点.因此,研究将DE经过必要的改进后应用于TSP的求解具有重要意义。 1 改进DE算法 1.1 编码及匹配函数 适应度定义为:负的路径长度,使得路径长度越短,适应度值越大。 1.2 贪婪初始化 为提高初始种群的质量,采用贪婪的初始化方法.对于初始种群的每个个体,产生方法如下: step1:初始化待走城市列表List为包含所有城市的列表; step2:随机选择一个城市A作为起点,并将此点作为当前城市T,从List中移除; step3:从List中选择距离城市T最近的城市作为新的当前城市T,并将T从List中移除; step4:判断List是否为空,若是,则结束;若否,则转step3。

第5讲 整数规划、非线性规划、多目标规划1

第5讲整数规划、非线性规划、多目标规划 一、整数规划 1、概念 数学规划中的变量(部分或全部)限制为整数时,称为整数规划。若在线性规划模型中,变量限制为整数,则称为整数线性规划。 整数规划的分类:如不加特殊说明,一般指整数线性规划。对于整数线性规划模型大致可分为两类:1)变量全限制为整数时,称纯(完全)整数规划。 2)变量部分限制为整数的,称混合整数规划。 2、整数规划特点 (i)原线性规划有最优解,当自变量限制为整数后,其整数规划解出现下述情况: ①原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。 ②整数规划无可行解。

例1原线性规划为 2 1min x x z +=s.t. ?? ?≥≥=+0 ,05422121x x x x 其最优实数解为:01=x ,4 52=x , 4 5min = z ③有可行解(当然就存在最优解),但最优值变差。例2原线性规划为 2 1min x x Z +=s.t. ?? ?≥≥=+0 ,06422121x x x x 其最优实数解为:01=x ,2 32=x ,2 3min = z 若限制整数得:11=x ,12=x , 2 min =z 。 (ii )整数规划最优解不能按照实数最优解简单取整而获得。

3、0-1整数规划 0?1型整数规划是整数规划中的特殊情形,它的变量 j x 仅取值 0或1。这时 j x 称为 0?1变量,或 称二进制变量。j x 仅取值0或1这个条件可由下述约束条件: 1 0≤≤j x ,且为整数 所代替,是和一般整数规划的约束条件形式一致的。在实际问题中,如果引入0?1变量,就可以把有各种情况需要分别讨论的线性规划问题统一在一个问题中讨论了。 引入10-变量的实际问题: (1)投资场所的选定——相互排斥的计划 例3某公司拟在市东、西、南三区建立门市部。拟议中有7个位置(点))7,,2,1( =i A i 可供选择。规定 在东区:由321,,A A A 三个点中至多选两个;在西区:由54,A A 两个点中至少选一个;

基于改进差分进化算法的烧结矿配料优化

基于改进差分进化算法的烧结矿配料优化 李凯斌, 卢建刚, 吴燕玲, 孙优贤 浙江大学工业控制技术国家重点实验室,杭州(310027) E-mail :kbli@https://www.360docs.net/doc/7418011061.html, 摘 要:本文针对差分进化算法(differential evolution algorithm)存在的早熟问题和停滞现象作了改进并把改进的算法应用于烧结矿配料优化,用matlab 编程,仿真结果表明符合实际生产工艺要求,证明了改进的差分进化算法对烧结矿配料优化的有效性,从而指出了改进的差分进化算法在配料优化中的应用价值。 关键词:差分进化,停滞,烧结矿,配料优化 中图分类号:TF541 1.前言 钢铁企业中炼铁系统能耗占整个钢铁生产能耗的60% ~70% ,生产成本也占54% ~58%,所占比重都较大[1]。而烧结又是生产高炉炼铁精料的关键工序,烧结生产中,可以将不同原料,熔剂进行精确配料,以调整烧结矿化学成分,满足高炉对炉料成分的要求。烧结矿的优化配料是一项极其重要的工作,配料的目的在于:根据不同种类的铁矿石的化学成分,将原料矿进行合理的搭配,使混匀矿的化学成分符合烧结生产的要求。烧结矿配料优化从上个世纪80年代就开始研究,最初运用的是线性规划方法,优化对象也仅限于烧结矿的化学成分[2]。近几十年来,进化算法发展十分迅速,其应用也越来越广泛。其中由Rainer Storn 和Kenneth Price 提出的差分进化算法[3] (differential evolution ,简称DE)作为一种较新的全局优化算法,以其收敛性好,模型简单,容易实现,控制参数比较少得到广泛应用。在日本召开的第一届国际禁化优化计算竞赛(ICEO)中[6],DE 表现突出,已经成为进化算法(EA)的一个重要分支。近几年来,DE 在约束优化计算,模糊控制器优化设计,神经网络优化,滤波器设计等方面得到了广泛应用。本文运用改进的差分进化算法对烧结矿配料进行优化。 2.差分进化算法 DE 作为一种较新的全局搜索算法与遗传算法,进化规划,进化策略不同,它是由父代个体差分矢量构成变异算子,然后按一定交叉概率,父代个体与变异个体进行交叉,生成试验体,最后在父代与试验体之间根据适应度选择个体。 2.1 差分进化原理 (1)选定种群规模N ,加权因子F ∈[0,2]最大进化代数MAX G ,杂交率CR ∈[0,1] (2)生成初始种群0W :{w 0 i (i=1,2,…N)},令进化代数G=0 (3)对G i w 执行(4)~(6)步,生成G+1代 (4)变异:1G i w +?=G i w +F(G j w -G k w )其中1≤j ,k ≤N ,且i ,j ,k 互异 (5)杂交:1G ij w +=1()() G ij G ij w random CR w random CR +?>??≤??? 其中G ij w 为第G 代第i 个个体的第j 个基因,CR 为 杂交率,random ∈[0,1] (6)选择:

差分进化算法介绍

1.差分进化算法背景 差分进化(Differential Evolution,DE)是启发式优化算法的一种,它是基于群体差异的启发式随机搜索算法,该算法是Raincr Stom和Kenneth Price为求解切比雪夫多项式而提出的。差分进化算法具有原理简单、受控参数少、鲁棒性强等特点。近年来,DE在约束优化计算、聚类优化计算、非线性优化控制、神经网络优化、滤波器设计、阵列天线方向图综合及其它方面得到了广泛的应用。 差分算法的研究一直相当活跃,基于优胜劣汰自然选择的思想和简单的差分操作使差分算法在一定程度上具有自组织、自适应、自学习等特征。它的全局寻优能力和易于实施使其在诸多应用中取得成功。 2.差分进化算法简介 差分进化算法采用实数编码方式,其算法原理同遗传算法相似刚,主要包括变异、交叉和选择三个基本进化步骤。DE算法中的选择策略通常为锦标赛选择,而交叉操作方式与遗传算法也大体相同,但在变异操作方面使用了差分策略,即:利用种群中个体间的差分向量对个体进行扰动,实现个体的变异。与进化策略(Es)采用Gauss或Cauchy分布作为扰动向量的概率密度函数不同,DE使用的差分策略可根据种群内个体的分布自动调节差分向量(扰动向量)的大小,自适应好;DE 的变异方式,有效地利用了群体分布特性,提高了算法的搜索能力,避免了遗传算法中变异方式的不足。 3.差分进化算法适用情况 差分进化算法是一种随机的并行直接搜索算法,最初的设想是用于解决切比雪夫多项式问题,后来发现差分进化算法也是解决复杂优化问题的有效技术。它可以对非线性不可微连续空间的函数进行最小化。目前,差分进化算法的应用和研究主要集中于连续、单目标、无约束的确定性优化问题,但是,差分进化算法在多目标、有约束、离散和噪声等复杂环境下的优化也得到了一些进展。 4.基本DE算法 差分进化算法把种群中两个成员之间的加权差向量加到第三个成员上以产生新的参数向量,这一操作称为“变异”。然后,变异向量的参数与另外事先确

差分进化算法-入门

基本差分进化算法 1基本差分进化算法的基本思想 DE 算法是一种基于实数编码的用于优化函数最小值的进化算法,是在求解有关切比雪夫多项式的问题时提出来的,是基于群体差异的进化计算方法。它的整体结构类似于遗传算法,一样都存在变异、交叉和选择操作,但是它又不同于遗传算法。与基本遗传算法的主要区别在于变异操作上,如: 1、传统的遗传算法采用二进制编码,而差分进化算法采用实数编码。 2、在遗传算法过两个父代个体的交叉产生两个子个体,而在差分进化算法过第两个或几个个体的差分矢量做扰动来产生新个体。 3、在传统的遗传算法中,子代个体以一定概率取代其父代个体,而在差分进化中新产生的个体只有当它比种群中的个体优良时才替换种群中的个体。 变异是DE 算法的主要操作,它是基于群体的差异向量来修正各个体的值,其基本原理是通过把种群中两个个体的向量差加权后,按一定的规划与第三个个体求和来产生新个体,然后将新个体与当代种群中某个预先决定的个体相比较,如果新个体的目标值优于与之相比较的个体的目标值,则在下一代中就用新个体取代,否则,旧个体仍保存下来。 差分进化算法其基本思想是:首先由父代个体间的变异操作构成变异个体;接着按一定的概率,父代个体与变异个体之间进行交叉操作,生成一试验个体;然后在父代个体与试验个体之间根据适应度的大小进行贪婪选择操作,保留较优者,实现种群的进化。 2 差分进化算法的基本操作 设当前进化代数为t ,群体规模为NP ,空间维数为D ,当前种群为 {}12(),, ,t t t NP X t x x x =,()12,, ,T t t t t i i i iD x x x x =为种群中的第i 个个体。在进化过程 中,对于每个个体t i x 依次进行下面三种操作。 2.1 变异操作 对于每个个体t i x 按下式产生变异个体12(,, ,)t t t t T i i i iD v v v v =,则 123() 1,2, ,D t t t t ij r j r j r j v x F x x j =+-= (1) 其中111112(,,,)t t t t T r r r r D x x x x =,222212(,,,)t t t t T r r r r D x x x x =和333312(,, ,)t t t t T r r r r D x x x x =是群 体中随机选择的三个个体,并且123r r r i ≠≠≠;1t r j x ,2t r j x 和3t r j x 分别为个体1r ,2r 和3r 的第j 维分量;F 为变异因子,一般取值于[0,2]。这样就得到了变异个体t i v 。

整数线性规划理论

整数线性规划理论 §1 概论 1.1 定义 规划中的变量(部分或全部)限制为整数时,称为整数规划。若在线性规划模型整数线性规划。目前所流行的求解整数规划的方法,往 1.2 如不加特殊说明,一般指整数线性规划。对于整数线性规划模型大致可分为两类: 1o 变量全限制为整数时,称纯(完全)整数规划。 2o 变量部分限制为整数的,称混合整数规划。 1.3 整数规划特点 (i ) 原线性规划有最优解,当自变量限制为整数后,其整数规划解出现下述情况: ①原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。 ②整数规划无可行解。 例1 原线性规划为 21min x x z += 0,0,5422121≥≥=+x x x x 其最优实数解为:4 5min ,4 5,021===z x x 。LINGO1.lg4 LINGO11.lg4 ③有可行解(当然就存在最优解),但最优解值变差。 例2 原线性规划为 21m i n x x z += 0,0,6422121≥≥=+x x x x 其最优实数解为:2 3min ,23,021===z x x 。 若限制整数得:2min ,1,121===z x x 。LINGO2.lg4 LINGO21.lg4 (ii ) 整数规划最优解不能按照实数最优解简单取整而获得。 1.4 求解方法分类: (i )分枝定界法—可求纯或混合整数线性规划。 (ii )割平面法—可求纯或混合整数线性规划。 (iii )隐枚举法—求解“0-1”整数规划: ①过滤隐枚举法; ②分枝隐枚举法。 (iv )匈牙利法—解决指派问题(“0-1”规划特殊情形)。 (v )蒙特卡洛法—求解各种类型规划。 下面将简要介绍常用的几种求解整数规划的方法。 §2 分枝定界法 对有约束条件的最优化问题(其可行解为有限数)的所有可行解空间恰当地进行

差分进化算法-入门

差分进化算法-入门

基本差分进化算法 1基本差分进化算法的基本思想 DE 算法是一种基于实数编码的用于优化函数最小值的进化算法,是在求解有关切比雪夫多项式的问题时提出来的,是基于群体差异的进化计算方法。它的整体结构类似于遗传算法,一样都存在变异、交叉和选择操作,但是它又不同于遗传算法。与基本遗传算法的主要区别在于变异操作上,如: 1、传统的遗传算法采用二进制编码,而差分进化算法采用实数编码。 2、在遗传算法中通过两个父代个体的交叉产生两个子个体,而在差分进化算法中通过第两个或几个个体的差分矢量做扰动来产生新个体。 3、在传统的遗传算法中,子代个体以一定概率取代其父代个体,而在差分进化中新产生的个体只有当它比种群中的个体优良时才替换种群中的个体。 变异是DE 算法的主要操作,它是基于群体的差异向量来修正各个体的值,其基本原理是通过把种群中两个个体的向量差加权后,按一定的规划与第三个个体求和来产生新个体,然后将新个体与当代种群中某个预先决定的个体相比较,如果新个体的目标值优于与之相比较的个体的目标值,则在下一代中就用新个体取代,否则,旧个体仍保存下来。 差分进化算法其基本思想是:首先由父代个体间的变异操作构成变异个体;接着按一定的概率,父代个体与变异个体之间进行交叉操作,生成一试验个体;然后在父代个体与试验个体之间根据适应度的大小进行贪婪选择操作,保留较优者,实现种群的进化。 2 差分进化算法的基本操作 设当前进化代数为t ,群体规模为NP ,空间维数为D ,当前种群为 {}1 2 (),,,t t t NP X t x x x =L ,() 1 2 ,,,T t t t t i i i iD x x x x =L 为种群中的第i 个个体。在进化过程 中,对于每个个体t i x 依次进行下面三种操作。 2.1 变异操作 对于每个个体t i x 按下式产生变异个体12(,,,)t t t t T i i i iD v v v v =L ,则 123() 1,2,,D t t t t ij r j r j r j v x F x x j =+-=L (1) 其中111112(,,,)t t t t T r r r r D x x x x =L ,222212(,,,)t t t t T r r r r D x x x x =L 和333312(,,,)t t t t T r r r r D x x x x =L 是群体中随机选择的三个个体,并且123r r r i ≠≠≠;1t r j x ,2t r j x 和3t r j x 分别为个体1r ,2r 和3r 的第j 维分量;F 为变异因子,一般取值于[0,2]。这样就得到了变异个体t i v 。

差分进化算法综述概况

差分进化算法(DE)[1]是Storn 和Price 在1995 年提出的一种基于种群差异的进化算法,DE是一种随机的并行搜索算法。差分进化计算和其他进化计算算法一样,都是基于群体智能理论的优化算法,利用群体内个体之间的合作与竞争产生的群体智能模式来指导优化搜索的进行。与其他进化计算不同的是,差分进化计算保留了基于种群的全局搜索策略,采用实数编码、基于差分的简单变异操作和一对一的竞争生存策略,降低了进化操作的复杂性。差分进化计算特有的进化操作使得其具有较强的全局收敛能力和鲁棒性,非常适合求解一些复杂环境中的优化问题。 最初试图使用向量差进行向量种群的混洗,以此来解决切比雪夫多项式适应性问题。DE 通过种群内个体间的合作与竞争来实现对优化问题的求解,其本质上是一种基于实数编码的具有保优思想的进化算法。该算法实现技术简单,在对各种测试问题的实验中表现优异,已经成为近年来进化算法研究中的热点之一。 差分进化算法基本原理 基本的差分进化算法是基于候选方案种群的算法,在整个搜索空间内进行方案的搜索,通过使用简单的数学公式对种群中的现有方案进行组合实现的。如果新的方案有所改进,则被接受,否则被丢弃,重复这一过程直到找到满意的方案。 设 f 是最小化适应度函数,适应度函数以实数向量的形式取一个候选方案作为参数,给出一个实数数值作为候选方案的输出适应值。其目的是在搜索空间的所有方案p 中找到m 使得f(m) ≤f(p)。最大化是找到一个m 使得f(m) ≥f(p)。 设X=(x1, x2,…, xn)∈?n是种群中一个个体,基本的差分进化算法如下所述: ?在搜索空间中随机地初始化所有的个体。 ?重复如下操作直到满足终止条件(最大迭代数或者找到满足适应值的个体) o 对于种群中的每个个体: ●随机地从种群中选择三个彼此不同的个体a,b 和c。 ●选择一个随机索引R ∈{1, ..., n},n 是被优化问题的维数。 ●通过对每个i ∈{1, ..., n}进行如下的迭代计算可能的新个体Y = [y1, ..., yn] 生成一 个随机数ri~U(0,1); ●如果(i=R)或者(ri3。差分进化算法作为一种新出现的优化算法在实际应用中表现出了优异的性能,被广泛应用到不同的领域,已经成为近年来优化算法的研究的热点之一。研究差分进化算法,探索提高差分进化算法性能的新方法,并将其应用到具体工程问题的解决中,具有重要的学术意义和应用价值。 差分进化计算的群体智能搜索策略分析 1 个体行为及个体之间信息交互方法分析 差分进化的个体表示方式与其他进化计算相同,是模拟生物进化中的关键因素,即生物的染色体和基因,构造每个解的形式,构成了算法的基础。一切的寻优操作都是在个体的基础上进行的,最优个体是搜寻到的最优的解。 差分进化的个体行为主要体现在差分变异算子和交叉算子上。

基于改进的差分进化算法的非均匀阵列综合

基于改进的差分进化算法的非均匀阵列综合 宋晓侠郭陈江丁君 西北工业大学电子信息学院,陕西西安710129 摘 要:针对标准差分进化算法早熟收敛和局部搜索能力差的缺陷,采用一种改进的差分进化算法综合非均 匀线阵。该算法在计算过程中自适应调整缩放因子和交叉概率因子,以非均匀阵列天线的阵元间距为优化变 量,实现了阵列的最大峰值旁瓣电平的有效控制。仿真结果表明:该改进算法可应用非均匀天线阵列的综合, 并取得良好的优化结果,简单实用,快速方便,鲁棒性和稳定性好。 天线;非均匀阵列;综合;改进的差分进化算法;峰值旁瓣电平 TN820A1008-1194(2012)04-0071-04 Synthesis of Non-uniform Arrays Using Modified Differential Evolution SONG Xiaoxia GUO Chenjiang DING Jun 2012-02-06 西北工业大学研究生创业种子基金项目资助(Z2012072) 作者简介:宋晓侠(1989-),女,安徽人,硕士研究生,研究方向:阵列天线综合。E-mail: songxx2010201135@ mail. nw pu. edu. cn。 万方数据

将该改进的差分进化算法用来综合非均皇 线阵,在讲化讨程中增加了甜讲DE算渎而孙理和后万方数据

14 7. 334 44 15 8. 056 91万方数据

@@[1]汪茂光,吕善伟,刘瑞祥.阵列天线分析与综合[M].成 都:电子科技大学出版社,1989. @@[2]Kumar B P, Branner G R. Generalized analytical technique  for the synthesis of unequally spaced arrays with linear, planar, cylindrical or spherical geometry[J]. IEEE Trans. Trans on Antenna and Propagation, 2005, 53 (2):621- 634. @@[3]Storn R Price K. Differential evolution-a simple and effi cient adaptive scheme for global optimization over contin uous spaces[R]. US: International Computer Science In stitute, 1995. 万方数据

一种混合整数双层线性规划的全局优化方法

2005年7月系统工程理论与实践第7期 文章编号:100026788(2005)0720113204 一种混合整数双层线性规划的全局优化方法 赵茂先1,2,高自友1 (11北京交通大学系统科学研究所,北京100044;21山东科技大学应用数学系,山东泰安271019) 摘要: 通过求得下层问题的对偶问题可行域上的极点,将上层所有变量为021型变量和下层所有变量 为连续型变量的双层线性规划转化为有限个混合整数线性规划问题,从而用求解混合整数线性规划的 方法获得问题的全局最优解.由于下层问题的对偶问题可行域只有有限个极点,所提出的方法具有全局 收敛性. 关键词: 混合整数双层线性规划;混合整数线性规划;对偶问题;极点 中图分类号: O221.1;O221.4 文献标识码: A A G lobal C onvergent Alg orithm for S olving the M ixed Integer Bilevel Linear Programming Problem ZHAO Mao2xian,G AO Z i2y ou (11Institute of System Sciences,Beijing Jiaotong University,Beijing100044,China;21Department of Applied Mathematics,Shandong University of Science and T echnology,T ai’an271019,China) Abstract: The mixed integer bilevel linear programming problem(MI BLPP),where the upper2level decision maker controls all zero2one variable and the lower2level decision maker controls all continuous variables,is discussed.By s olving the extreme points of the follower’s dual problem,the MI BLPP is decomposed into a series of mixed integer linear program https://www.360docs.net/doc/7418011061.html,ing mixed integer linear program methods,a global optimal s olution to the MI BLPP can be obtained. K ey w ords: mixed integer bilevel linear programming;mixed integer linear program;dual problem;extreme point 对于大系统和复杂系统,层次性是系统的主要特征之一.多层规划正是为了研究系统层次性而产生的,并正逐渐形成一个新的运筹学分支.在多层规划应用中,以双层规划最为常见,这是因为现实中的决策系统大都可看作双层决策系统,并且任何多层决策系统都是一系列双层决策系统的复合. 双层规划问题是由非合作且有序的两个优化问题组成,上层首先给下层一定信息,下层在这些信息下按自己的利益做出反应,上层再根据下层的反应作出符合全局利益的决策.在许多双层优化问题中,要求某些变量只能取整数,例如企业人力资源规划问题、生产设备分配问题以及城市交通网络设计问题等.变量的离散性使得问题变得复杂,即使对较简单的混合整数双层线性规划,也可能导致问题无解.M oore和Bard[1]对上、下层都有离散变量的混合整数双层线性规划问题进行了讨论,并给出了一种分支定界求解算法,该算法只有在上层无连续变量的情况下,才能保证收敛.Bard和M oore[2]对上、下层所有变量都为021型变量的混合整数双层线性规划问题加以了研究,通过对构造出的参数整数规划不断进行求解,提出了一种分支定界方法.本文将讨论上层所有变量为021型变量和下层所有变量为连续型变量的双层线性规划问题,通过求得下层问题的对偶问题可行域上的极点,将问题转化为有限个含021型变量的混合整数线性规划问题,从而用混合整数线性规划的方法求得问题的全局最优解. 1 模型与定义 设x为021型变量组成的n维列向量,y为连续变量组成的m维列向量,本文讨论的混合整数双层 收稿日期:2004206201 资助项目:国家杰出青年科学基金(70225005);教育部高等学校优秀青年教师教学科研奖励计划(2001) 作者简介:赵茂先(1966-),男,江苏江都人,副教授,在职博士,主研方向为最优化理论与算法.

基本差分进化算法

基本差分进化算法 (1)初始化。 DE 利用NP 个维数为D 的实数值参数向量作为每一代的种群,每个个体表示为: X i ,G (i=1,2,……,NP) (1) 式中:i —— 个体在种群中的序列;G ——进化代数;NP — —种群规模,在最小化过程中NP 保持不变。 为了建立优化搜索的初始点,种群必须被初始化。通常寻找初始种群的一个方法是从给定边界约束内的值中随机选择。在DE 研究中,一般假定对所有随机初始化种群均符合均匀概率分布。设参数变量的界限为 )( )( U j j L j X X X << ,则: )( )( )( 0,)()`1,0(L j L j U j ji X X X rand X +-?= (i=1,2,……, NP ;j=1,3,……,D ) (2) 式中:rand[0,1]——在[0,1]之间产生的均匀随机数。 如果预先可以得到问题的初步解,初始种群也可以通过对初步解加入正态分布随机偏差来产生,这样可以提高重建效果。 (2)变异。 对于每个目标向量 X i ,G (i=1,2,……,NP),基本DE 算法的变 异向量如下产生: )(,3,2,11,G r G r G r G i x x F X v -?+=+ (3) 其中,随机选择的序号r1,r2和r3互不相同,且r1,r2和r3与目标向

量序号i 也应不同,所以须满足NP ≥4。变异算子F ∈[0,2]是一个实常数因数,控制偏差变量的放大作用。 (3)交叉。 为了增加干扰参数向量的多样性,引入交叉操作。则试验向量变为: ),...,,(1,1,21,11,++++=G Di G i G i G i u u u u (4) ???=+++1 ,1,1,G ji G ji G ji X v u )(rnb CR (j) b rand rnbr(i))(rand i r j j CR j b ≠>=≤且如果或者如果 (i=1,2,……,NP ;j=1,3,……,D ) (5) 式中:randb(j)——产生[0,1]之间随机数发生器的第j 个估计值;rnbr(i)∈ 1,2,? ,D ——一选择的序列,用它来确保1,+G i u 至少从1,+G i u ;获得一个参数;CR ——交叉算子,取值范围为[0,1]。 (4)选择。 为决定试验向量1,+G i u ,是否会成为下一代中的成员,DE 按照贪婪 准则将试验向量与当前种群中的目标向量进行比较。如果目标函数要被最小化,那么具有较小目标函数值的向量将在下一代种群中赢得一席地位。下一代中的所有个体都比当前种群的对应个体更佳或者至少一样好。注意在DE 选择程序中试验向量只与一个个体相比较,而不是与现有种群中的所有个体相比较。 (5)边界条件的处理。 在有边界约束的问题中,确保产生新个体的参数值位于问题的可行域中是必要的,一个简单方法是将不符合边界约束的新个体用在可行域中随机产生的参数向量代替。

整数线性规划理论(优选.)

最新文件---------------- 仅供参考--------------------已改成-----------word 文本 --------------------- 方便更改 赠人玫瑰,手留余香。 整数线性规划理论 §1 概论 1.1 定义 规划中的变量(部分或全部)限制为整数时,称为整数规划。若在线性规划模型中,变量限制为整数,则称为整数线性规划。目 前还没有一种方法能有效地求解一切整数规划。 1.2 整数规划的分类 如不加特殊说明,一般指整数线性规划。对于整数线性规划模型大致可分为两类: 1o 变量全限制为整数时,称纯(完全)整数规划。 2o 变量部分限制为整数的,称混合整数规划。 1.3 整数规划特点 (i ) 原线性规划有最优解,当自变量限制为整数后,其整数规划解出现下述情况: ①原线性规划最优解全是整数,则整数规划最优解与线性规划最优解一致。 ②整数规划无可行解。 例1 原线性规划为 21m in x x z +=

0,0,5422121≥≥=+x x x x 其最优实数解为:4 5min ,45 ,021===z x x 。LINGO1.lg4 LINGO11.lg4 ③有可行解(当然就存在最优解),但最优解值变差。 例2 原线性规划为 21m in x x z += 0,0,6422121≥≥=+x x x x 其最优实数解为:2 3min ,23 ,021===z x x 。 若限制整数得:2m in ,1,121===z x x 。LINGO2.lg4 LINGO21.lg4 (ii ) 整数规划最优解不能按照实数最优解简单取整而获得。 1.4 求解方法分类: (i )分枝定界法—可求纯或混合整数线性规划。 (ii )割平面法—可求纯或混合整数线性规划。 (iii )隐枚举法—求解“0-1”整数规划: ①过滤隐枚举法; ②分枝隐枚举法。 (iv )匈牙利法—解决指派问题(“0-1”规划特殊情形)。 (v )蒙特卡洛法—求解各种类型规划。 下面将简要介绍常用的几种求解整数规划的方法。 §2 分枝定界法 对有约束条件的最优化问题(其可行解为有限数)的所有可行

差分演化算法matlab程序

function DE(Gm,F0) %差分进化算法程序基本程序 %F是变异率F0=0.6 Gm=1000; %最大迭代次数 Np=100; %种群规模 CR=0.9; %杂交参数 G=1;%初始化代数 D=0;%所求问题的维数 eps=1e-9;%精度 ge=zeros(1,Np);%各代的最优值 bestx=zeros(Np,D);%各代的最优解 %产生初始种群 %xmin=-10;xmax=100;%带负数的下界 xmin=-5.12;xmax=5.12; %-----函数值计算----------- function result=DEMB(XX); sol=XX; result=0; for i=1:D result=result+sol(i)^2; %y=sum(XX.^2-10.*cos(2.*pi.*XX)+10); end end %--------------------------- X0=(xmax-xmin)*rand(Np,D)+xmin; X=X0; %%%%%%%%%%变异操作 X1new=zeros(Np,D);%初始化 X1_new=zeros(Np,D);%初始化 X1=zeros(Np,D);%初始化 value=zeros(1,Np); while G<=Gm for i=1:Np %产生j,k,p三个不同的数 a=1;b=Np; dx=randperm(b-a+1)+a-1; j=dx(1);k=dx(2);p=dx(3); if j==i j=dx(4); elseif k=i k=dx(4); elseif p==i p=dx(4); end %变异算子 F=0.5; bon=X(p,:)+F*(X(j,:)-X(k,:)); if (bon>xmin)&(bon

YALMIP工具箱 混合整数规划

YALMIP工具箱混合整数规划 定义变量: sqdvar()实型 intvar()整型 binvar()0-1型 设定目标函数: f=目标函数 设定限定条件: F=set(限定条件) 多个限定条件用加号相连: F=set(限定条件)+set(限定条件1)+set(限定条件2)…… 求解:solvesdp(F,f) 这里解得是F条件下目标函数f的最小值,要求最大值f前面加个负号求解之后查看数值: double(f)double(变量) 有个例子: 已知非线性整数规划为: Max z=x1^2+x2^2+3*x3^2+4*x4^2+2*x5^2-8*x1-2*x2-3*x3-x4-2*x5 s.t. 0<=xi<=99(i=1,2, (5) x1+x2+x3+x4+x5<=400 x1+2*x2+2*x3+x4+6*x5<=800 2*x1+x2+6*x3<=800 x3+x4+5*x5<=200

在matlab中输入x=intvar(1,5); f=[1 1 3 4 2]*(x'.^2)-[8 2 3 1 2]*x';F=set(0<=x<=99); F=F+set([1 1 1 1 1]*x'<=400)+set([1 2 2 1 6]*x'<=800)+set(2*x(1)+x(2)+6*x(3)<=800); F=F+set(x(3)+x(4)+5*x(5)<=200);solvesdp(F,-f) double(f) 80199 double(x) 53 99 99 99 0 intvar(m,n):生成整数型变量; sdpvar(m,n):生产变量; solvesdp(F,f):求解最优解(最小值),其中F为约束条件(用set连接),f为目标函数 double:显示求解的答案

差分进化算法代码

[plain]view plaincopy 1.function DE(Gm,F0) 2. 3.t0 = cputime; 4.%差分进化算法程序 5.%F0是变异率 %Gm 最大迭代次数 6.Gm = 10000; 7.F0 = 0.5; 8.Np = 100; 9.CR = 0.9; %交叉概率 10.G= 1; %初始化代数 11.D = 10; %所求问题的维数 12.Gmin = zeros(1,Gm); %各代的最优值 13.best_x = zeros(Gm,D); %各代的最优解 14.value = zeros(1,Np); 15. 16.%产生初始种群 17.%xmin = -10; xmax = 100;%带负数的下界 18.xmin = -5.12; 19.xmax = 5.12; 20.function y = f(v) 21. %Rastrigr 函数 22.y = sum(v.^2 - 10.*cos(2.*pi.*v) + 10); 23.end 24. 25.X0 = (xmax-xmin)*rand(Np,D) + xmin; %产生Np个D维向量 26.XG = X0; 27. 28.%%%%%%%%%%%%%----这里未做评价,不判断终止条件----%%%%%%%%%%%%%%%%%%%%%%%% 29. 30.XG_next_1= zeros(Np,D); %初始化 31.XG_next_2 = zeros(Np,D); 32.XG_next = zeros(Np,D); 33. 34.while G <= Gm 35.G 36.%%%%%%%%%%%%%%%%%%%%%%%%----变异操作----%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 37. for i = 1:Np 38. %产生j,k,p三个不同的数 39. a = 1; 40. b = Np; 41. dx = randperm(b-a+1) + a- 1; 42. j = dx(1); 43. k = dx(2);

相关文档
最新文档