没有合适的资源?快使用搜索试试~ 我知道了~
可在ScienceDirect上获得目录列表计算设计与工程杂志首页:www.elsevier.com/locate/jcde计算设计与工程学报4(2017)158流体遗传算法(FGA)q放大图片作者:Ruholla Jafari-Marandi 史密斯工业与系统工程系,密西西比州立大学,260麦凯恩工程大楼,密西西比州,MS 39762,美国阿提奇莱因福奥文章历史记录:2016年4月21日收到2017年3月8日接受2017年3月9日在线发布保留字:遗传算法元分析非精确优化A B S T R A C T遗传算法(GA)已成为解决许多具有挑战性的优化问题时,精确的方法是太昂贵的计算最流行的方法之一。文献回顾表明,广泛的研究试图适应和发展的标准遗传算法。然而,遗传算法的本质,包括概念,如染色体,个体,交叉,变异,和其他很少一直是最近的研究者的焦点。在本文中,流体遗传算法(FGA),这些概念的一些变化,删除,并进一步引入新的概念。通过7个测试函数比较了遗传算法和模糊遗传算法的性能。模糊遗传算法不仅具有较好的成功率和收敛控制能力,而且可以应用于更广泛的问题,包括多目标和多层次的问题。此外,FGA的实际工程问题,二次分配问题(AQP)的应用程序,显示和经验。©2017计算设计与工程学会Elsevier的出版服务这是一个开放在CC BY-NC-ND许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)下访问文章1. 介绍遗传算法(GA)是已经使用的非常强大的元启发式和进化算法(Azadeh等人,2013年; Oujebeli,Habbal,Ellaia,&Zhao,2014年 ; Qu , Liu , Duan , &Yang , 2016 年 ) , 开 发 ( Tavakkoli-Moghapri-Jafari&-Marandi,2013年),改编(Jafari-Marandi,Hu,&Chowdhury,2015年;Jafari-Marandi,Hu,&Omitaomu,2016年; Keramatia等人,2014),并与其他进化算法(Rabbani,Baghersad,&Jafari,2013)杂交,用于不同学科的许多不同问题。该算法由John Holland和他的同事在20世纪60年代提出。当然,也有不同的变化到算法。Srinivas和Patnaik(1994)对该算法进行了最新的文献调查,揭示了试图改进该算法并减轻其缺点的不同努力。不久之后,对该算法的研究,类似于任何其他进化算法(Van VeldhuizenLamont,2000),转向多目标优化(Deb,1999)。从那时起,在适应GA多目标和多层次问题的道路上有了很大的发展。事实上,NSGA-II(Deb,Pratap,Agarwal,Meyarivan,2002)是解决多目标问题的一个非常强大的工具,仍然是这些伟大的发展之一。q计算设计与工程学会负责的同行评审。*通讯作者。电子邮件地址:Rj746@msstate.edu(R. Jafari-Marandi)。1.1. 文献综述元优化是使用更高级别的策略来增强现有的局部改进策略的解决方案 过 程 , 希 望 摆 脱 局 部 最 优 并 达 到 解 空 间 的 鲁 棒 搜 索 ( GloverKochenberger,2006)。它们的起源可以追溯到20世纪80年代初(Osman Kelly,1996),从那时起,它们就一直是工程和科学中应用最广泛和发展最快的领域之一(Talbi,2009)。遗传算法和遗传规划仍然是高度应用的解决方法。GA遗传算法的研究经历了三个不同的方向。首先,由于遗传算法具有很强的适应性,研究人员已经将其应用于解决不同学科的不同问题。其次,遗传算法是一种非常流行的方法,可以与其他技术杂交以获得更多的改进。最后,由于使用一个微调的GA来解决问题的重要性,GA的行为参数是研究人员审查的焦点遗传算法在科学和工程的许多领域的贡献是无可争议的。解决复杂的 数 学 建 模 和 优 化 问 题 是 这 些 流 行 的 用 途 之 一 。 Kakandikar 和Nandedkar(2016)采用遗传算法来解决他们复杂的细化优化问题,通过经验,他们表明他们的遗传编码成功地应对了这一挑战。此外,Zhang和Zhao(2015)应用经典GA来处理一个特殊的点对点转移时间旅行计划问题。在Azadeh等人(2013年)中,GA用于在随机区组设计表中近乎最优地预测缺失值GAhttp://dx.doi.org/10.1016/j.jcde.2017.03.0012288-4300/©2017计算设计与工程学会Elsevier的出版服务这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)158159甚 至被 用 于数 据 分析 任务 , 如聚 类 (Maulik&Bandyopadhyay,2000),分类(Uysal Gunal,2014)和关联规则(Minaei-Bidgoli,Barmaki,Nasiri,2013)。此外,遗传算法的自适应性使其非常适合于解决多目标或多层次(分布式决策)问题。NSGA-II(Deb等人,2002),无疑是接近多目标优化问题的最强技术之一。事实上,Konak,Coit和Smith(2006)提出了一个关于如何使用GA进行多目标优化的非常受欢迎的教程。例如,多目标GA(NSGA-II)用于解决不确定需求下具有挑战性的时间和空间装配线(Chica,Bautista,Cordón,Damas,2016)。遗传算法通常用于多层次问题。Jafari-Marandi et al.(2016)将GA用于解决建筑集群的分布式决策。此外,Long(2016)在供应链管理领域,调整了GA来处理多级协作决策问题。在元启发式研究社区中,有一股强大的浪潮,希望引入新的技术和方法来击败现有的技术和方法。例如,最近,狮子优化算法(LOA)Yazdani Jolai,2016,基于狮子的群体动态行为,如猎物捕获,交配和领土标记,被开发出来。在许多情况下,学者们在改进技术方面的努力被吸引到现有技术的杂交,GA是研究人员选择用于合成的非常流行的方法之一例如,GA和粒子群优化(PSO)的混合导致了许多贡献。Settles和Soule(2005)提出了一个通用的元启发式算法,将两者结合起来。Rabbani et al.(2013)将遗传算法与 粒 子 群 优 化 ( PSO ) 相 结 合 , 以 解 决 复 杂 的 库 存 路 径 问 题(IRP)。同样的混合帮助Younes和Benhamida(2011)处理经济负荷调度(ELD)问题。遗传算法还与禁忌搜索(Glover,Kelly,&Laguna , 1995 ) , 模 拟 退 火 ( Yu , Fang , Yao , &Yuan ,2000),甚至神经网络(Yang,Wu,Jin,&Xu,2016)混合。遗传算法研究的另一个重要方面是寻找行为参数的最佳值。遗传算法的性能非常依赖于它的参数,如人口规模,交叉和变异率。在文献中,这个问题有两个方面。首先,一些作品纯粹研究GA以了解其在不同问题的不同参数下的行为(Gibbs,Maier,Dandy,2015)。此外,也有研究微调提出的算法,为自己的问题,田河内是著名的用于这一目的(何,蔡,林,周,2009年;蔡,刘,周,2004年)。1.2. 贡献尽管存在几个巨大的进步,使算法更适合不同类型的问题,如多目标,分布式决策问题,利用遗传算法的灵活性来处理不同的问题,很少有任何研究集中在改善GA的本质本身。本文的动机是努力使遗传算法更接近其生物学基础,正在改变其现有的一些部分,并添加新的功能和概念,以提高其能力。实验表明,流体遗传算法比标准遗传算法具有更快、更准确、更可靠和更强的适应性。1.3. 论文前言论文的其余部分组织如下:第2节将介绍经典的GA,并为第3节的读者做好准备,第3节介绍了Fluid GA和the two.按照科学惯例,最后三个部分是实验和结果,讨论和结论以及未来的研究。2. 遗传算法遗传算法是一种基于种群的进化算法,与许多元算法相似。也就是说,答案的群体将在优化过程中演变,以朝着问题的最优性发展。遗传算法中的答案或个体是在染色体中呈现的,顺便说一句,染色体是该算法的强项。染色体实际上是对问题的答案,它被编码形成染色体。应用最广泛的染色体是二元染色体.因此,每个GA都需要具有解码功能,目的是将染色体编码转换为答案。图1呈现了算法的一般流程图。遗传算法将通过随机产生与种群数量一样多的染色体来初始化。在二进制染色体的情况下,染色体的单元格将以相同的机会填充0或1。每个染色体将被解码为一个答案,因此,它们的适应值将被计算。根据定义,适应度值是根据问题的答案的优度。接下来,将根据个体的适应度值对种群进行排序。交叉和变异是该算法的两个非常重要的操作。在这两种情况下,选择函数都起着重要的作用。基本上,操作员会改变输入的染色体,希望改善它们,但选择哪个染色体进行操作是通过选择函数。一次又一次用于此目的的函数是轮盘赌功能。该函数的操作方式使得群体中的每个成员都有机会被选择,但是染色体的适应值越好,选择的机会,它会有。Crossover是一个双染色体操作符,在这个意义上,它将在两个染色体上工作以输出其他染色体。两个进入的染色体将混合并产生一个或两个新的染色体,它们的后代知道在二元染色体的情况下,最常用的在一次切割交叉中,两条染色体将从相同的细胞数断裂,并且它们的部分将在两者之间交换,从而产生两条具有均进入染色体的特征的不同染色体。交叉是著名的遗传算法与交叉不同的是,突变不是双染色体的,并且不用于使种群朝着最优方向移动的目的它对算法的贡献是通过从根本上改变进入的染色体来防止算法陷入局部最优。单个进入的染色体被操作者粗暴地、毫无理由地、随机地改变关于变异的最后一句话是操作者将改变进入染色体的程度。突变率是算法的这种行为因素的术语。算法和流程图中的关键步骤是决定何时停止进化,并对手头的最佳答案感到满意有没有办法GA可以肯定的最佳解决方案,除非一个最优是已知的,它提前,所以有必要停止策略。事实上,有不同的停止标准。它们可以简单到特定的迭代次数,或者通过将缩放的改进带入等式来涉及更多。3. 流体遗传算法3.1. FGA和GA的区别流体遗传算法(FGA)实际上是一种遗传算法,但它与遗传算法有着本质的区别。这些差异是160R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)1580.410.26 0.99 0.21 0.63 0.39图二. FGAGA陷入局部最优的机会。事实上,遗传算法中的变异过程是内在地进行的。例如,在图2染色体的情况下,每个细胞都有机会变成1或0;因此,突变将由算法的内部大脑处理这将使算法有越来越少的机会早熟收敛。GAFig. 1. GA和FGA通用流程图。FGA3.2. 染色体与GA相比,FGA染色体不再是答案的另一种事实上,函数“一个人”是一个随机过程,通过这个过程,问题的答案将根据染色体(预处理)产生。图2可以是FGA中二元个体的染色体。单元格中的每个值表示个体具有值1而不是零的概率例如,将被分配到图2中的染色体的个体只有26%的机会在左起第二个单元格中具有1而不是0突出显示在表1中。与GA相比,FGA的基础变化是染色体和个体(答案)不是相同的实体。在GA文献中,染色体和个体可互换使用。虽然,最细致的GA大师可能会认为染色体和个体从来都不是同一个概念,但没有人可以否认每个染色体和每个个体之间存在一对一的关系。也就是说,每一条唯一的染色体只能有一个唯一的关联个体。然而,FGA提出了一个不同的想法。在生物学上,FGA更接近于遗传世界中发生的事情每条染色体可能有许多不同的个体。话虽如此,在FGA中,一个个体将被随机关联到染色体:表中的“一个个体”函数。第二个最大的区别是,在GA的新公式中,真的不需要变异操作-如图所示。1.一、由于新的结构,该算法提供了一个聪明的人口多样性,因此有更少的表1强调GA和FGA之间的差异。GA FGA染色体U改变个人(答案)U已更改适合度值解码函数U U适合度值交叉U已更改突变U ×选择函数U U停止标准个人学习率×U全局学习率×U分集率×U天生一个人×U生成蓝图× U3.3. 生个体函数FGA中染色体概念与个体概念之间的联系是通过引入出生-个体函数而建立起来的基于进入的染色体,该函数将输出与GA的染色体非常相似的答案。这个函数的工作原理是,根据染色体中相应细胞的值,例如,图1中染色体上的第一个细胞。 3是0.41,因此出生个体的第一个细胞有41%的机会是1,分别有59%的机会是0。从理论上讲,对于图1中的染色体, 2,每个(2 7= 128)7的二元组合都有机会成为关联个体,只是概率不同。该函数还提供了算法的概念命名结构、全局学习率和生成方案。当量(1)展示了如何使用生成蓝图和全局学习率来生成个体。生成蓝图实际上是一个染色体,其单元格中填充了每次迭代(生成)中所有染色体的平均值第一代的蓝图总是从所有单元格值的0.5开始该函数将始终获得两个输入,一个是蓝图,另一个是染色体。的概率,其中值为1或0将产生calculu- lated使用方程。(一). 这里,gg、PVCi、PVBi、gDR和EPVi分别是全局学习率、来自小区i的染色体的概率值、来自小区i的蓝图的概率值、多样性率和有效概率值i。当量(1)计算个体的每个细胞基于其退出抚养孩子功能的概率。如等式所示,这两个条件将试图保持EPV的概率低于1和高于0。这是为了保护FGA陷入局部最优。在第一条件的情况下,如果EPVi小于分集率,则将其设置为等于分集率。原因是FGA总是为每一种可能性保留如果该值达不到分集率(其应该是小值)并且向0移动,则小区只能初始化初始化停下来? 没有停下来? 没有是是突变交叉交叉排序排序终止终止R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)158161¼NR-NSR0.41 0.26 0.99 0.79 0.63 0.13 0.9710111000.46 0.2110.84 0.68 0.08 0.9210111000.46 0.2110.84 0.68 0.08 0.920.41 0.26 0.99 0.21 0.63 0.39 0.8510100010.26 0.64 0.49 0.79 0.63 0.13 0.970111100图三. FGA有0而不是1。第二个条件句也是为了同样的目的,但要确保每个单元格仍然有机会变成0。gg×PVBi发泡剂1-gg ×PVCigDREPVi¼gDR1-gDR否则EPVi¼gg×PVBi1-gg ×PVCið1Þ3.4. 交叉4. 实验和结果为了比较FGA与标准GA的性能,使用了两种性能度量(AugerHansen,2005)。在这里,在Eqs。(2)和(3)是成功绩效测量值,NESR、NR、NSR和n分别是成功验证的评估次数此外,基于Liang、Qu和Suganthan(2013)制定的规则,使用七个基准函数进行实验。FGA将个体学习率(一个新的特征)和交叉(一个变化的特征)联系在一起与GA类似,两个进入的染色体将共享它们的部分本质以产生新的染色体。同样的程序用于GA二进制染色体可以应用于FGA染色体仅作为一个开始。 图3SP1NESR×NRNSR2S P2¼n×1 04×。NR-NSRR R Rð2Þð3Þ描述的程序,并澄清了学习率(LR = 0.05)的参与。应该注意的是,染色体和个体都进入交叉函数,但操作员只输出一个染色体。两条进入的染色体将随机混合。结果将根据学习率值发生一些变化。在交叉程序的这个阶段,将对染色体的每个细胞进行以下程序,也在图3中呈现。如果个人的细胞是一个,相关染色体的价值将通过学习而增加率,如果个人3.5. 进化迭代与GA类似,FGA依赖于其迭代性质来向最优方向移动。FGA的流程图与GA的流程图(如图1所示)的唯一区别但是,这两种算法的初始化是不同的。所有的FGA的染色体都将是相同的,所有的细胞都有0.5,因为算法还没有开始它的进化过程。这将使第一代的蓝图与每一个染色体相同,因此,在初始化时,函数“生一个孩子”将不受Eq的影响。(一).如果FGA在对最优解有一定了解的情况下,可以使用blueprint来给算法一个更好的开端和更快地收敛到全局最优解。等式事实上,(2)和(3)提出了更多的成功衡量标准,而不仅仅是答案的平均质量。虽然答案的质量很重要,但在这个级别的算法开发中,找到可以找到最优解或非常好的解的可靠方法更重要。因此,成功率以及SP1和SP2用于比较两种算法。对于SP1和SP2,算法实现的值越小越好。事实上表2是一组功能,其中两个算法进行测试。第一列显示每个函数的名称和公式范围基本上是例如,在第一个函数中,10个变量中的每一个的范围可以从64到20。64.二进制变量是对指定范围的所有可能性进行编码所需的二进制变量的数量。最后,穷举搜索是通过蛮力方法解决问题为了在运行最终实验之前公平地比较这两种方法,算法被调整为以其最佳潜力接近每个基准函数。在调整阶段,算法对GA和FGA的行为参数的每个可能的组合运行20次在遗传FGA有四个参数,分别是交叉率、个体学习率(IRL)、全局学习率(GLR)和多样性率(DR)。作为…的榜样8><>:162R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)158公司简介pi¼1ii¼1ii1拉吉吉D1/1ðxiþ61/1我40001/1我我表2基准功能。函数名称和公式范围二进制变量D穷举搜索高条件椭圆函数:FxPD106i-1x221[-64,64] 70 10 270弯边功能:Fx¼x2106PDx231i¼1i[-128,128] 80 10 280铁饼功能:F×106×2D×24我[-512,512] 100 10 2100Rosenbrock函数:FxPD-1。100米x2-x2x-12 [-512,512] 100 10 2100Rosenbrock20次实验002q1PD2exp.1个PD cos2p20[-128,128] 80 10 280Griewank7x2-QD我cos. 电话:+86-512- 8888888传真:+86-512 -8888888我Rastrigin函数:F x ¼ PD . x2-10余弦2px余弦10π[-512,512] 100 10 2100附录A中的表A1和表A2显示了函数1情况下GA和FGA参数的每种可能组合的结果。在表A1和A2中,带下划线的项目显示了所选的调谐参数。在这两个表中,每行代表相关算法的20次运行。为了在每个函数的情况下选择最佳调优参数,考虑了四个性能度量的重要性:SP1,SP2,成功率和平均时间。我们通过经验看到,前三个是高度相关的,如果一个病例的SP1高于另一个病例,那么SP2和成功率也是如此。因此,我们从未遇到过这种情况,但在我们的方法中,如果前三个度量相等,则平均时间将是决胜局。表3显示了GA和FGA的实验结果所有七个健身功能。对于每个函数和每个方法,相关的方法运行50次,其中4次执行。4.1. 一个工程问题二次指派问题是运筹学中的经典问题之一。QAP有许多应用,研究界仍在努力寻找更好的解决方法(Loiola,de Abreu,Boaventura-Netto,Hahn,Querido,2007)。这个问题可以简单地描述如下。一组相同的物体将位于一组相同的位置上。每对站点(i和j)具有与其相关联的距离(Dij),并且,每对对象(k和l)具有流量值(Tkl)。求解器必须努力找到在站点之间具有最小可能移动的分配。这里,在目标函数中,Xik是二元决策变量,仅当对象k在位置i中时其具有值1。此外,Fik是如果对象k位于站点i处将强加的固定成本。nsnsnononsno使用所有50次运行的结果计算Mance测量TijDklXikXjl即使粗略地看一下表格,也会发现FGA在处理所有功能方面一直都更强大应当注意1/1ji k<$1l<$ki<$1k<$1带下划线的值表示一种方法优于另一种方法。此外,表4示出了基于预先执行的调谐为每个算法的每个函数选择的调谐参数。Tate和Smith(1995)是最早将遗传算法应用于QAP的几个人之一。他们只是使用了一个使用整数排列染色体的通用GA。如果在问题中有5个对象和5个站点可供分配,[4,1,3,5,2]可以是它们中的一个表3GA和FGA比较功能FGAGA成功率(%)SP1SP2平均时间(S)成功率(%)SP1SP2平均时间(S)F19845.302044.50.71796116.7141121.5667F210038.3638.360.58186137.7314,1181.5998F384399.6616,3364.449856511.7942,8782.8497F49590.222088.41.434640,37096,4223.0115F510075.3675.361.34598119.3321171.9710F670329.9530233.30232415,000106,3003.2998F786123.9514,1072.192654552.862946,2992.95表4GA和FGA调整参数。FGA调谐参数遗传算法参数整定交叉ILRGLR博士交叉突变突变率F10.50.150.1500.50.30.05F20.50.150.1500.50.30.2F30.70.050.1500.70.30.05F410.10.100.70.30.05F50.50.150.100.70.30.2F60.70.050.0500.70.20.1F710.10.100.80.30.051/1F5×104-- -Di¼1xi-埃莱1/1R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)1581630.10.10.10的情况。。。40的情况。。。60的情况。。。80的情况。。。352324见图4。FGA染色体该染色体建议,例如,机器4、1、3、5和2应分别分配给位置1、2、3、4和5。我们采用FGA的QAP,以显示其适应现有研究的能力。设计的用于QAP的FGA染色体是FGA染色体和GA用于QAP的常规染色体的组合。如图4所示,染色体有两行。第二行填充从1到赋值次数的数字。然而,我们可以看到,在例子中,数字2是重复的,而数字1不是染色体的第二行。这强调了GA的染色体和FGA的染色体的第二行之间的差异。 虽然GA的染色体是一行中所有分配的完美排列,这意味着代表分配的每个数字必须在染色体中列出一次且仅一次,但FGA的染色体允许为每个单元随机选择分配,而不管其他单元的分配是什么。这为FGA染色体所需的流动性铺平了道路,并将我们的注意力带到染色体的第一行。第一行中的每个单元格表示相应单元格染色体的子染色体(其类似于GA染色体的子染色体)可能从染色体继承的概率类型。例如,由于图中染色体第二行上的第二个2,即从左数第四个细胞,具有分配给它的最高概率(0.8),因此从该染色体出生的个体将在相应细胞中具有2的概率是最高的。图5中呈现的伪代码示出了在应用于QAP的FGA中用于出生子函数应用于FGA的交叉也与GA非常相似至少在概念上。在FGA中,如图3所示,如果孩子个人学习率,如果它是0,它将被扣除相同的相比之下,在QAP-FGA中,如果相应的孩子的单元格具有与染色体的第二行相同的值,则将发生对概率行的添加,并且当值为不匹配。为了比 较遗传算 法和模糊 遗传算法 在QAP 问题上 的性能, 从QAPLIB-A Quadratic Assignment Problem Library中选取了5个问题实例在使用算法之前,GA和FGA都进行了微调。GA使用0.8,0.2和0.2的交叉百分比,变异百分比,变异率,而FGA使用0.01,0.1和0.9分别为个人学习,全局学习率,交叉百分比。此外,两种算法分别使用100和200的人口数和最大迭代次数。对于每个问题,每个算法运行10次,并记录其性能。表5给出并比较了QAP应用的GA和FGA的性能。可以看出,FGA已经达到或超过了GA的性能.5. 讨论实验结果表明,流体遗传算法优于标准遗传算法。证据见图6。我们可以看到,在所有的功能,为SP1,SP2,和成功率,FGA享有优越性。注意,在SP1和SP2的情况下,性能测量值越小越好,对于其他两个反之亦然只有在两种情况下,功能号码3和6,GA花了,平均而言,更少的时间解决问题,尽管其性能较差的其他措施。这是次要的,因为在优化的世界里,最优性比少两秒的运行时间更重要。有趣的是,它显示了FGA的优越性,它具有足够的适应性来检测需要更长时间才能解决的更具挑战性的问题。值得注意的是,图6中所有图中的函数的阶数都是从SP1和SP2的求和的排序值导出的。这个结果是非常重要的。正如我们在文献综述中所介绍的,遗传算法正被应用于许多科学和技术领域图五. 伪代码FGA表5FGA和GA名称N. 屁股最优解FGAGA最佳发现差距(%)最佳发现差距(%)Chr12a12955211,05415.711,24817.7Chr15b157990935217.012,32854.3Esc16a1668680.0702.9Had2020692270021.270021.2Esc32a3213018844.618844.6164R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)1586005004003002001000百分百百分之八十百分之六十百分之四十百分之二十0%的百分比SP16 4 7 3 2 15FGA GA成功率120000100000800006000040000200000543210SP26 4 7 3 2 1 5FGA GA平均时间6 4 7 3 2 15FGA GA6 4 7 3 2 1 5FGA GA图六、基于SP1、SP2、成功率和平均时间的FGA和GA比较来解决不同的问题。本文从生物学的角度出发,介绍了几个提高遗传算法性能的概念。这意味着研究人员可以开始采用FGA而不是GA,以更好地成功处理他们的问题。FGA的优越性并不仅仅在于其更好的性能。在下面的部分中,我们将介绍FGA的每个新特性如何帮助算法更具适应性,并适用于更广泛的问题。5.1. 染色体和个体是不同的染色体和个体之间的流动性的存在提供了一个极好的机会,将多层次的基于FGA的解决方案的程序。许多决策和优化问题都有不止一个不同的部分。一部分的决策或优化将影响另一部分。有许多情况下,遭受这种类型的挑战。例如,在供应链管理领域,库存问题和运输问题结合在一起,形成了著名的库存路径问题(IRP)。2013年。库存的决策将改变运输问题的决策,反之亦然。当然,一种方法可以是将所有标准灌输到一个数学问题中,并使用现有的技术来解决这个问题,但正如Rabbani等人(2013)的作者所示,这往往会增加问题的复杂性。可以参考的另一个示例是建筑群的分布式决策制定,用于它们的电力消耗,其中所有房屋都具有决策制定的独立性,并且同时它们的决策将极大地影响其他房屋(Jafari-Marandi等人,2016年)。在这些情况下,染色体和个体之间存在的流动性将有助于实现比文献中已经存在的更深入的解决方案程序的合成。如果所有这些情况都使用FGA,那么问题5.2. 种群多样性遗传算法的早熟收敛行为多次被比作种群多样性的快速丧失。许多不同的技术,包括遗传算法中模糊逻辑的杂交已经被提出来弥补这一点(王,2001年)。FGA由于其特殊的染色体不会丢失某些群体多样性元素。此外,FGA有一个多样性率变量,可以控制人口的多样性。虽然保持种群的多样性可能会减慢算法的速度,但它会给求解器更多的时间来收敛到最优值而不是局部最优值。5.3. 流动性只有当染色体不仅仅是数学模型中答案的二进制表示时,GA才会表现得更好。对于遗传算法来说,这意味着需要发明一种新的染色体,这将导致创造新的交叉和突变程序的必要性。此外,这可能会在将FGA应用于相同问题时产生挑战。FGA需要染色体之间的流动性和它可能产生的答案。例如,FGA将需要找到一个新的染色体结构,其中GA可以简单地使用排列染色体。 这些类型的染色体广泛存在于许多问题中,例如二次分配问题(Loiola等人,2007),或细胞形成问题(Tavakkoli-Moghafari-Marandi&,2013)。本文提出并实现了一种基于流体染色体的快速遗传算法。虽然这可能是更多的挑战,ING设计所需的流动性,该文件已经显示了功能的FGA,使努力值得的。5.4. 更多的调整参数和可控收敛虽然FGA正在消除突变,因此不需要调整GA的两个参数(突变百分比和突变率R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)158165突变率),它有三个新的行为参数来调整:个体学习率,全局学习率和多样性率。 正如我们在论文的实验中所观察到的,FGA在处理函数3和6时花费了更多的时间,但它最终提供了更好的结果。FGA的调谐参数的能力表现为:事实上,他们可以塑造算法,以更有效地解决不同的问题。从表3中可以看出,FGA使用非常不同的调优参数来处理每个问题。对于挑战性较小的问题,个体和全局学习率保持较高,从而加快收敛速度。同时,分集率也可以控制FGA的最终收敛性。本文中的函数都没有使用分集率提供的这种类型的收敛控制。当然,如果分集率被调整到零以上,这意味着FGA将花费更多的时间来解决问题;然而,这可能正是算法解决特定问题所需要的。5.5. 蓝图在FGA设计中使用Blueprint有两个主要优点。正因为如此,FGA已经能够纳入全局学习率的概念。如果FGA被用来接近一个问题,需要一个快速的答案在一个非常明显的最优解环境,全局学习率和蓝图将有助于FGA收敛很快。另一方面,如果使用FGA来寻找具有许多局部最优值的问题的最优解,则设置较低的全局学习率将导致FGA花费更多的时间来收敛,因此有更好的机会找到最优解。这个调整参数的存在,使FGA适应性和可调的范围内不同的问题。其次,Blueprint本身在求解器必须随着新信息的出现而反复使用的情况下非常有用。上一次的蓝图FGA的收敛性可以用来给出FGA的新的演化一个更好的开端这将有助于在寻找新的最佳解决方案的过程中节省时间。6. 结论和未来研究本文提出了一种改进的遗传算法-流体遗传算法。新方法去掉了遗传算法的一些标准部分它还引入了新的功能和概念。通过实验,我们证明了FGA在精度、速度和更智能的收敛方面优于GA。我们还讨论了模糊遗传算法在多目标多层次问题中的优势。在这个方向上,对于未来的研究,FGA可以被采用来解决在不同领域存在的许多挑战此外,它可以用来介绍一个通用的多目标FGA,包括现有的思想在文献中,如NSGA-II。最后但并非最不重要的是,可以进行潜在的研究,以调查FGA的行为的基础上,其调谐参数。确认这项研究在2016年INFORMS年会上发表。作者希望感谢与会者提出的意见。此外,作者想向匿名评论者表达他们深深的感激之情,他们的评论帮助我们提高了所呈现的工作的质量。附录A见表A1和A2。表A1功能1 GA调整表。调谐参数成功参数交叉突变突变率NSER成功率(%)SP1SP2平均时间0.50.10.054160159244.44486386.671.984050.50.10.014612253689.675922.41.8306810.50.10.24248.571351734.11165606.941.7507860.50.20.055250.52695290.88795276.3431.6160890.50.20.01430075382.222225286.671.5566820.50.20.25461.17685377.936115321.251.7712660.50.30.0550001002502501.4432080.50.30.014992.63295276.60015262.771.4910170.50.30.25106.31695282.89845268.7531.5605370.70.10.056410402003.12560801.252.5250940.70.10.015966.66760828.703740497.222.2980660.70.10.26388501277.650638.82.4290570.70.20.056082.35385420.924115357.792.125120.70.20.016485.26395359.29445341.332.163930.70.20.25240.58885362.670515308.271.8631860.70.30.055368.42195297.41945282.5481.8186080.70.30.015461.11190337.105610303.41.8098340.70.30.259401002972971.8176030.80.10.056524.61565772.143835501.892.4888860.80.10.016316.92365747.564935485.922.4228550.80.10.25827.85770594.679330416.282.2318270.80.20.055327.77890328.875210295.991.8213830.80.20.017133.33390440.329210396.32.3829830.80.20.25805.26395321.62125305.541.8823440.80.30.055737.5100286.875286.8751.7272540.80.30.015686.84295315.06055299.3071.8029050.80.30.25963100298.15298.151.794205带下划线的项目显示所选的调整参数。166R. Jafari-Marandi,B.K. Smith/ Journal of Computational Design and Engineering 4(2017)158表A2功能1 FGA调谐表。调谐参数成功参数交叉ILRGLR博士NSER成功率(%)SP1SP2平均时间0.50.050.0503885100194.25194.251.1971260.50.050.050.057245100362.25362.252.2977670.50.050.050.1003.1444560.50.050.104175100208.75208.751.2643690.50.050.10.057347.36895407.05645386.7042.3082630.50.050.10.1003.0694210.50.050.1504595100229.75229.751.3971780.50
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功