没有合适的资源?快使用搜索试试~ 我知道了~
=:∈∈ =≤软件X 10(2019)100355原始软件出版物GenConstraint:求解约束优化问题的编程工具扬尼斯湾[10] Zhoua, Zhoub,Zhou E. Mastorakisb,Dimitrios Tsalikakisca希腊约阿尼纳大学信息学和电信系b希腊海军学院,计算机科学系,大学教育军事机构,18539比雷埃夫斯,希腊c西马其顿大学工程信息学和电信系,希腊ar t i cl e i nf o文章历史记录:收到2019年收到修订版2019年10月25日接受2019年10月25日保留字:遗传算法约束优化随机方法a b st ra ct本文提出了一种用改进的遗传算法求解约束优化问题的软件,该软件利用一系列改进的遗传算子来保持算法的可行性尝试解决方案和终止使用随机停止规则。该软件完全由在ANSI-C++和用户可以准备的目标函数在C++或Fortran。本文介绍了遗传算法及其软件,并对一系列优化问题进行了实验。此外,所提出的软件进行了测试的二维滤波器的设计。将结果与来自算法DONLP 2的结果进行比较©2019作者由爱思唯尔公司出版这是CC BY许可下的开放获取文章(http://creativecommons.org/licenses/by/4.0/)中找到。代码元数据当前代码版本1.0用于此代码版本的代码/存储库的永久链接https://github.com/ElsevierSoftwareX/SOFTX_2019_222法律代码许可证GNU通用公共许可证(GPL)使用git的代码版本控制系统使用C++的软件代码语言、工具和服务编译要求、操作环境依赖性Linux如果可用,链接到开发人员文档/手册https://github.com/itsoulos/GenConstraint/wiki问题支持电子邮件itsoulos@uoi.gr1. 介绍在优化问题中,主要目标是找到目标函数的最小值,通常定义为:f(x)x S Rn。函数f(x)在有或没有约束的情况下被最小化。在第二种情况下,可以使用线性和非线性约束。约束优化问题可以公式化为:其中x是[a i,b i],i1,. . .,n.不等式gi(x)0和方程hj(x)0分别代表目标函数的不等式和等式约束。该问题在医学[1,2]、物理学[3,4]、经济学[5,6]等一系列领域中有着广泛的应用。在过去的几年中,人们开发了许多方法来解决约束优化问题,如区间方法[7,8]、遗传算法方法[9,10]、粒子群优化方法[11,12]、minXf(x)服从gi(x)≤ 0 i = 1,. . . ,mh j(x)= 0 j = 1,. . . ,p(1)差分进化方法[13,14]等。所提出的软件提出并使用[15]中介绍的遗传算法的修改版本该方法包括:*通讯作者。电子邮件地址:itsoulos@uoi.grI.G.Tsoulos)。https://doi.org/10.1016/j.softx.2019.1003551. 对遗传算子进行了修改,以保证试验解的可行性.2352-7110/©2019作者。 由Elsevier B.V.出版。这是一篇开放获取的文章,使用CC BY许可证(http://creativecommons.org/licenses/by/4.0/)。可在ScienceDirect上获得目录列表SoftwareX期刊主页:www.elsevier.com/locate/softx2I.G. 措洛斯河谷Stavrou,N.E.Mastorakis等人粤公网安备44010802000019号[客户端]4.[2. 局部搜索程序在随机选择染色体中的应用。3. 一个随机停止规则。原来的方法已被增强,通过使用一个周期性的应用程序的全局搜索过程,保留了染色体的可行性。本文的其余部分如下:在第2节中详细描述了所提出的软件,在第3节中概述了各种约束优化问题的一系列实验结果,最后在第5节中提出了一些结论和一些未来研究的指导方针2. 软件描述所提出的算法在算法1中给出(参见[16])。遗传算法在目标函数的边界a, b内构造一组M个染色体,并且在每一代中,将修改的遗传算子应用于染色体,直到满足随机标准。原来的算法已被加强,增加了周期性的应用程序的全球搜索过程。2.1. 分布该软件可以从相关网址下载:https://github.com/itsoulos/GenConstraint/网站。该软件是用Ansi C++为Unix环境编写的。解压缩后,用户应仅更改Makefile.inc文件中的变量ROOTSTANDARD。此变量指向当前安装目录。编译的最终结果是将安装在bin目录下的实用程序make_program。make_program有以下命令行选项:-h显示帮助屏幕,程序终止。-p文件名 。参数filename指定具有目标函数的文件的名称。该函数可以用C++或Fortran编写。-o文件名 。编译的输出是参数文件名。参数文件名是可选的,使用的默认名称是constraint。2.2. 问题公式化• ANSI C++中目标问题的编码实例算法1所提出的算法的主要步骤1. 设置算法的参数:a)染色体数目M. b)选择率p s。c)突变率pm。d)局部搜索速率ple)gl是在应用全局搜索过程之前将通过的生成的数目g)gc是将在全局搜索过程中使用的染色体的数目。2. 设k=0。3. 在可行域内初始化M染色体a、b.评估每个染色体的适应度该评估使用惩罚技术来执行,以便保留由染色体给出的试验解的可行性。5. 将改进的交叉和变异遗传操作应用于种群。这些操作符旨在保持试验解决方案的可行性6. 从比率为pl的群体中随机选择一些染色体,并对其应用Cobyla [16]的局部搜索程序。7. 设k=k+1。8. 如果k modpl =0,则(a) 随机选择gc染色体并将其添加到集合LS中。(b) 对于LS中的每条染色体Xi,i. 随机选择一条Y染色体。ii. 使用提议的交叉方法创建Xi和Y的后代。将后代记为Ziii. 如果f(z)f(xi),则xi=Z<9. endif10. 如果终止条件为保持终止,则转到步骤4。在每一次迭代k中,f(x∈ N)的方差被测量.用σ(k)表示该方差。如果在若干代中没有找到任何新的最小值,则算法很可能已经找到全局最小值,因此它应该终止。算法在以下情况下终止:σ(klast)在chootinan1问题的相关wiki页面中提供。使用了以下函数σ(k)≤第二章intgetdimension():此函数返回目标问题的维度。intgeteq():此函数返回等式约束的数量。intgetineq():此函数返回不等式约束的数量。voidgetleftmargin(double *x):此函数在数组x中返回目标问题的下限。voidgetrightmargin(double *x):此函数在数组x中返回目标问题的上限。doublefunmin(double *x):此函数返回在x点处求值的目标函数。voidfeq(double *x,double *eq):此函数返回数组eq中在 x 点 处 计 算 的 等 式 约 束 。 voidfineq ( double*x ,double*ineq):此函数返回数组ineq中在x点处计算的不等式约束。voiddone(double*x).完成的方法将在遗传算法终止参数x是遗传算法发现的最佳值。其中klast是新的最小值被found.3. 实验3.1. 典型的跑步让我们考虑一下Chootinan1的问题。这个问题是用C++编码的,对应的文件是位于发行版的examples目录下的chootinan1.cc。在此函数上应用建议的方法需要执行以下步骤:cd examples;。/bin/make_program -p chootinan1.cc; ./约束。约束可执行文件有一系列的命令行选项,在相关的wiki页面中给出。约束可执行文件将一系列行打印到终端。图1中列出了一个示例运行的最后10行。软件在每行打印:代数、当前全局最小值和可行性位于最小值。最后,软件打印出············I.G. 措洛斯河谷Stavrou,N.E.Mastorakis等人粤公网安备44010802000019号3- -1 2- -=∑∑∑ ∑1210,否则2⏐联系我们表1图1.一、C h o o t i n a n 1 函 数 的最小化输出。响应(IIR)或递归滤波器。 在非递归滤波器表2遗传算法的参数。M200pc0.10下午0.05gc10gI50结构的输出仅取决于输入,而在递归滤波器结构中,输出既取决于输入又取决于先前的输出。递归滤波器已经在科学和技术中用于诸如信号处理、控制信号、雷达信号、天文信号、医学图像处理和X射线增强等问题[24]。2-D滤波器的设计方法基于(a)适当的1-D滤波器[24]和(b)适当的优化技术[24这里,所提出的技术已经被用于克服使用所提出的方法的实验结果。建议的功能Donlp22-D滤波器中出现的不稳定性问题。所研究的2-D递归滤波器的传递函数由下式给出:1.8730 1.8730赫斯309.45 262.83阿尔布费拉13.59 18.681Chootinan 1− 15−11.376H(z1,z2)=H0Ki=1Kj=1 αijzi zj、(3)乔蒂南2希梅尔布劳萨尔金−320.000−319.8040001的。的EQ。(3)可以通过最小化函数J,其中J=J(aij,bk,ck,dk,H0)N1N2定位全局最小值以及函数调用的总数。3.2. 基准函数=【日|M(ω1,ω2)|− |M d(ω1,ω2)|(4)n1=0n2= 0哪里M(ω,ω)=H(ω,ω)|z2=e−jω2(五)并与Donlp 2优化方法进行了比较[17] 一系列基准函数中的方法:1 2使用1 2z1=e−jω11. Levy函数,在[18]中描述2. Hess函数,在[19]中给出3. Shittkowsi函数,在[20]中提供。4. Chootinan1函数,在[21]中给出。5. Chootinan2函数,在[21]中给出。6. Himmelblau函数,如[22]中所述。ω1=(π/N1)n1ω2=(π/N2)n2p偶正整数因此,Eq. (4)可以写成7. Salkin函数,在[23]中描述。N1N2[2014 -05 -23](πn1πn2)πn1πn2π]p)将所提出的方法应用于上述测试问题30每次使用不同的随机数生成器的种子。实验中使用的参数列于表1中。的J=n1=0n2=0N1,N2−N2 ⏐(六)、将所提出的方法应用于上述基准函数的结果在表2中给出。列PRO-POSED表示所提出的方法,列DONLP 2表示将DONLP 2应用于上述问题的结果。|− 1 d k k= 1,2,.| − 1
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 基于Springboot的医院信管系统
- 基于Springboot的冬奥会科普平台
- 基于Springboot的社区医院管理服务系统
- 基于Springboot的实习管理系统
- TI-TCAN1146.pdf
- 基于Springboot的留守儿童爱心网站
- S32K3XXRM.pdf
- Ansible Automation Platform 快速安装指南 v3.8.1
- Ansible Tower 发行注记 v3.8.1-76页
- C语言笔记-考研版(进阶)
- Design_of_Analog_CMOS_Integrated_Circuit20200602-85440-9wt61m-with-cover-page-v2 (1).pdf
- Ansible Automation Platform 安装和参考指南 v3.8.1-59页
- 浅析5G技术在工业互联网领域的应用研究
- 查重17 岑彩谊-基于otn技术的本地承载网-二稿 .docx
- 自考计算机应用基础知识点.doc
- 数据库系统安全、技术操作规程.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功