首页 > 编程语言 >基于档案演化路径的快速收敛EO多目标优化算法及其在工程设计问题中的应用

基于档案演化路径的快速收敛EO多目标优化算法及其在工程设计问题中的应用

时间:2024-09-18 23:23:37浏览次数:11  
标签:AEP EO MOEO ACRep 目标 算法 工程设计 优化

目录


在这里插入图片描述

1.摘要

在实际的工程优化问题中,耗时的目标函数是不可避免的。这类函数使得元启发式方法的实现充满挑战,因为设计者必须在最终解的质量和优化过程的总体运行时间之间做出权衡。本文提出了一种名为FC-MOEO/AEP的多目标优化算法,适用于处理耗时较长的目标函数。该算法基于平衡优化算法EO,并配备了档案演化路径(AEP)机制。AEP机制考虑了决策空间的进化轨迹,并预测了潜在的最优解区域。除了具有较高的收敛速度外,该新方法还能够在探索和开发能力之间平衡,使算法能够有效避免陷入局部Pareto解集。

2.基于档案演化路径机制的快速收敛多目标平衡优化算法(FC‑MOEO/AEP)

2.1 单目标平衡优化算法EO

【智能算法】平衡优化器(EO)原理及实现

2.2 多目标平衡优化算法FC‑MOEO/AEP

在处理多目标问题时,我们采用Maxmin函数来比较和排名解。第k个解的maxmin值可以表示如下:
f max ⁡ i min k = max ⁡ j = 1 , 2 , … , n ; j ≠ k { min ⁡ i = 1 , 2 , … , M { f i ( x k ) − f i ( x j ) } } f_{\max}^{i\text{min}k}=\max_{j=1,2,\ldots,n;j\neq k}\left\{\min_{i=1,2,\ldots,M}\{f_i(x_k)-f_i(x_j)\} \right\} fmaximink​=j=1,2,…,n;j=kmax​{i=1,2,…,Mmin​{fi​(xk​)−fi​(xj​)}}
其中 n 是种群大小,m 是目标数量。在这个等式中,首先使用 min 运算符计算所有目标函数的最小值,再对除第k个解之外的所有解应用 max 运算符。可能存在以下几个结论:(i)任何 maximin 值大于 0 的解都是被支配的解(ii)任何 maximin 值小于 0 的解都是非被支配的解(iii)maximin 值较小的解位于非密集区域。

FC-MOEO/AEP算法是一个复杂的多目标优化框架,旨在处理同时具有多个相互冲突目标的问题。FC-MOEO/AEP算法随机生成一个初始种群,并计算每个个体的目标函数值。定义并维护一个有限容量的外部存档,每次迭代时更新,将当前的非支配解插入存档,同时删除被支配的解。使用两种机制(EO和AEP)生成新解,每次迭代生成两倍于群体大小的解,但只从中选择最佳的一半解作为下一代群体。选择过程使用maxmin函数,优先选择maxmin值较小的解,这些解通常位于非密集区域。

流程图

在这里插入图片描述

伪代码

在这里插入图片描述

档案演化路径
在这里插入图片描述

Song等人提出了基于路径演化算子,目的是生成具有高潜力的解决方案。这种方法的核心是通过分析主群体在决策空间的运动来计算进化路径(EP)向量。然而,该方法存在两个主要的缺陷:首先,它假设每一代的群体总是比前一代更优,但实际上并非总是如此。在某些情况下,一代的表现可能不如其前一代,此时计算得到的EP向量无法有效指导生成有潜力的解,并可能误导算法的方向。其次,EP向量的计算仅依赖于当前和前一代群体的数据,这忽略了多代间的演化信息,从而可能限制了进化路径的准确估计。

为克服这些限制,提出了改进的AEP机制,与平衡优化算法协同工作。AEP机制利用存档成员的演化历程,这些成员代表了迄今为止找到的最佳解。存档的不断演化使得能够更准确地估计演化路径。在AEP机制中,关键的元素是ACRep向量,它基于过去步骤的经验更新,并用于预测决策空间中的潜在区域,从而提高整个优化过程的效率和准确性:
ACRep ‾ = Archive Center c − Archive Center j \overline{\text{ACRep}}=\text{Archive Center}_c-\text{Archive Center}_j ACRep​=Archive Centerc​−Archive Centerj​
在这里插入图片描述

在计算了ACRep向量后,必须从存档中选择N个解来生成使用这些解的新AEP解。我们采用轮盘赌选择方法从存档中选择这些解,因此位于非密集区域的解将有更好的被选择机会:
C A E P = α × A C R e p ‾ × r a n d + C s e l e c t e d C_{\mathrm{AEP}}=\alpha\times\overline{\mathrm{ACRep}}\times\mathrm{rand}+C_{\mathrm{selected}} CAEP​=α×ACRep​×rand+Cselected​

在这里插入图片描述

3.结果展示

包括多目标CEC2009,CEC2020,DTLZ,ZDT测试集

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

4.参考文献

[1] Ilchi Ghazaan M, Ghaderi P, Rezaeizadeh A. A fast convergence EO-based multi-objective optimization algorithm using archive evolution path and its application to engineering design problems[J]. The Journal of Supercomputing, 2023, 79(16): 18849-18885.

5.代码获取

标签:AEP,EO,MOEO,ACRep,目标,算法,工程设计,优化
From: https://blog.csdn.net/Logic_9527/article/details/142342287

相关文章

  • 算法:动态规划思路(仅作记录)
    以leetcode70题爬楼梯为例:假设你正在爬楼梯。需要n阶你才能到达楼顶。每次你可以爬1或2个台阶。你有多少种不同的方法可以爬到楼顶呢?递归一共两种爬楼梯的方式如果最后一步要用到方法1,那么我们得先爬到n−1,要解决的问题缩小成:从0爬到n−1有多少种不同的方法。......
  • 自动驾驶运动规划学习_碰撞检测算法_GJK
    自动驾驶运动规划学习:碰撞检测算法:GJKGilbert–Johnson–Keerthi(GJK)算法,是一种用于检测两个凸集是否重叠的高效算法,并且可以得到两个凸集的最小距离.1.4.1 GJK算法原理1.4.1.1 闵可夫斯基差(Minkowski Difference)1.4.1.3 凸性在二维空间中,如果一个凸集包含原......
  • Dijkstra 算法
    普通堆实现的Dijkstra算法时间复杂度为O(m*logm),m为边数distance[i]表示从源点到i点的最短距离,visited[i]表示i节点是否从小根堆弹出过准备好小根堆,小根堆存放记录:(x点,源点到x的距离),小根堆根据距离排序令distance[源点]=0,(源点,0)入堆从小根堆弹出(u......
  • Yargs里的Levenshtein距离算法
    “Yargs是一个Node.js库,专为那些想要解析命令行选项字符串的开发者设计。”yargs介绍yargs是一个用于解析命令行参数的流行库,周下载量达到了惊人的93154k,它能帮助开发者轻松地定义CLI(命令行接口),并提供参数处理、命令组织、help文本自动生成等功能。它通过简洁的API使......
  • 地平线占用预测 FlashOcc 参考算法-V1.0
    1.简介3DOccupancyNetworks的基本思路是将三维空间划分成体素网格,并对每个网格进行各类感知任务的预测。目前以网格为中心的方法能够预测每个网格单元的占用率、语义类别、未来运动位移和实例信息。3Doccupancy可以对道路障碍物进行更细粒度的划分,同时获取更精确的占用和语......
  • 代码随想录算法 - 回溯算法1
    题目177.组合给定两个整数n和k,返回范围[1,n]中所有可能的k个数的组合。你可以按任何顺序返回答案。示例1:输入:n=4,k=2输出:[[2,4],[3,4],[2,3],[1,2],[1,3],[1,4],]示例2:输入:n=1,k=1输出:[[1]]提示:1<=n<=201<=k<=......
  • General OCR Theory: Towards OCR-2.0 via a Unified End-to-end Model
    摘要传统的OCR系统(OCR-1.0)越来越无法满足人们对智能处理人造光学字符的需求。在本文中,我们将所有人造光学信号(例如,普通文本、数学/分子公式、表格、图表、乐谱,甚至是几何形状)统称为“字符”,并提出了通用OCR理论以及一个优秀的模型,即GOT,以促进OCR-2.0的到来。GOT拥有5.8亿参......
  • 深入理解算法效率:时间复杂度与空间复杂度
    目录引言一、算法效率的基础二、时间复杂度1.概念2.常见类型1.O(1)—常数阶 2.O(n)—线性阶3.O(n^2)—平方阶4.O(2^......
  • neo4j安装启动教程+对应的jdk配置
    参考这位博主的视频教程:neo4j社区windows版下载一、官网下载neo4j的安装包(1)官网下载页面(2)上一步【download】之后,会自动下载,如果没有,点击【here】这里可以看到一行字【Defaultloginisusername‘neo4j’andpassword‘neo4j’】默认的用户名和密码都是这个,后......
  • 数据挖掘实战-基于朴素贝叶斯算法构建真假新闻分类模型
     ......