EMCMO--多任务优化求解约束多目标问题

EMCMO–多任务优化求解约束多目标问题

title: An Evolutionary Multitasking Optimization Framework for Constrained Multi-objective Optimization Problems

author: Kangjia Qiao, Kunjie Yu, BoyangQu, Jing Liang, Hui Song, and Caitong Yue.

journal: IEEE TRANSACTIONS ON EVOLUTIONARY COMPUTATION (TEVC)

DOI:10.1109/TEVC.2022.3145582

code:

1.主要贡献:

​ 1)提出了EMCMO算法,将约束多目标优化(CMO)问题构建为多任务优化(MTO)问题,其中一个任务是原始的CMO问题,另一个辅助任务是无约束的MOO问题。

​ 2)考虑了两类有效的知识源:父代个体以及子代个体。

2.问题提出:

​ 1)在求解CMO问题时,存在两种帕累托前沿(PF):无约束的PF(UPF)和有约束的PF(CPF),UPF和CPF之间存在如下图所示的四种关系:相同,包含,部分重叠和不重叠。所以,使用无约束的MOO和有约束的CMO一起优化并交互信息可能会提高算法的效率。

image-20241018194649024

​ 2)MTO可以通过利用任务之间的相关关系来加速多个优化任务的求解效率,并在许多实际应用中得到证明。因此,本文提出了一种基于MTO的方法来求解约束多目标优化问题。

​ 3)在没有先验知识的情况下,很难知道辅助任务中包含的约束子集的难易程度;当辅助任务太多时,又会消耗大量的计算资源。

image-20241018205919987

​ 4)迁移什么:在优化过程中包含两类知识,父代个体和子代个体。

​ 如下图所示,在优化前期,主任务的父代种群在可行域内,而辅助任务的父代种群在不可行域内。当两个任务产生了目标值更好的子代个体时,主任务的种群不能帮助主任务跳出局部可行域,辅助任务的种群也不能帮助主任务跳出局部可行域而辅助任务的子代则可以帮助主任务跳出局部可行域。所以在进化前期,子代个体是有用的知识。

image-20241018210320751

​ 在算法迭代后期,由于两个种群的PF都更接近其真实的PF,根据图1,会存在如下的四种情况:

第一类,当UPF和CPF相同时,父代种群更有效;第二类,当UPF包含CPF时,父代种群更有效;第三类,当UPF与CPF部分重叠时,则取决于它们的重叠程度,重叠部分父代种群有效,非重叠部分子代种群有效;第四类,当UPF与CPF不重叠时,子代种群更有效。

image-20241018210419467

3.EMCMO:

3.1 算法框架

​ 1)如算法1所示,EMCMO对两个任务分别初始化了一个种群 P 1 , P 2 P_1,P_2 P1,P2,并评估。

​ 2)因为不同阶段的有用知识不同,所以在主循环中,分为两个阶段:前期进化根据算法2,后期则使用算法3.
image-20241019100900908

3.2 EMCMO前期

EMCMO前期的更新过程如下图和算法2所示,具体步骤如下:

​ 1)对于每个任务随机选择父代

​ 2)每个任务分别产生子代

​ 3)将当前任务种群,当前任务子代以及辅助任务子代合并至一个临时种群中,并评估

​ 4)对于每个任务的临时种群分别进行环境选择。

换句话说,EMCMO前期的知识迁移是通过直接迁移子代个体实现的。

image-20241019100900908 image-20241019100900908 ​ ## 3.3 EMCMO后期

EMCMO后期的更新过程如下图和算法3所示,具体步骤如下:

​ 1)对每个任务,根据个体质量来选择父代,产生子代,并评估。

​ 2)根据主任务的环境选择策略选择出辅助任务中前NP个个体,并计算子代和父代种群在主任务中的成功率如下:
α P j = n u m _ P j N P α O P j = n u m _ O P j N P / 2 \alpha_{P_j}=\frac{num\_P_j}{NP}\\ \alpha_{OP_j}=\frac{num\_OP_j}{NP/2} αPj=NPnum_PjαOPj=NP/2num_OPj
α P j < α O P j \alpha_{P_j}<\alpha_{OP_j} αPj<αOPj时,说明辅助任务的子代(迁移种群)更适合主任务;否则说明辅助任务的父代(迁移种群)更适合主任务。

​ 3)将每个任务的父代,子代及辅助任务的迁移种群融合为临时种群,并在对应任务上进行评估和选择。

image-20241019100900908 image-20241019100900908

4.思考

1)EMCMO为CMO问题构建了一个辅助任务(无约束的MOO问题),通过使用MTO在两个任务之间的有效信息交互来求解CMO问题。其次,文章还分析了两个任务的PF之间的关系,以及迁移什么的问题。

2)在原始的MFEA的定义中,MTO旨在通过利用任务之间的隐式并行性来同时求解多个优化问题,而对于什么是知识,迁移什么的问题却很少有人提到。一种常用的方式是通过属于两个任务的个体进行交叉来实现的,也就是隐式知识迁移;另一种是显示知识迁移,直接或者间接地迁移个体。

3)所以进一步挖掘这种知识表示也是MTO领域的一种未来研究方向。
常用的方式是通过属于两个任务的个体进行交叉来实现的,也就是隐式知识迁移;另一种是显示知识迁移,直接或者间接地迁移个体。

3)所以进一步挖掘这种知识表示也是MTO领域的一种未来研究方向。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/55792.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis7 数据类型

Redis7 数据类型 文章目录 Redis7 数据类型1. Redis键&#xff08;Key&#xff09;2. Redis字符串&#xff08;String&#xff09;3. Redis列表&#xff08;List&#xff09;4. Redis哈希表&#xff08;Hash&#xff09;5. Redis集合&#xff08;Set&#xff09;5.1 常用操作5.…

Atlas800昇腾服务器(型号:3000)—驱动与固件安装(一)

服务器配置如下&#xff1a; CPU/NPU&#xff1a;鲲鹏 CPU&#xff08;ARM64&#xff09;A300I pro推理卡 系统&#xff1a;Kylin V10 SP1【下载链接】【安装链接】 驱动与固件版本版本&#xff1a; Ascend-hdk-310p-npu-driver_23.0.1_linux-aarch64.run【下载链接】 Ascend-…

Vue3学习:vite项目中图片不能显示,报错 require is not defined

今天做了一个案例“给你喜欢的人送花”&#xff0c;如果喜欢谁&#xff0c;就给谁送花&#xff0c;最多可以送5朵。运行效果如下。 这个项目是使用 npm create vitelatest 命令创建的。 包括2个组件&#xff1a; 根组件App.vue子组件HelloVote.vue。 目录结构如图所示&#x…

秋招面试题记录_半结构化面试

c八股(可能问的多一点) 1.简单说说C11语法特性 答&#xff1a; 1.auto以及decltype自动类型推导&#xff0c;避免手动声明复杂类型&#xff0c;减少冗长代码提升了可读性和安全性。 2.智能指针 自动释放内存 (具体说说) 有shared和unique 差异主要体现在所有权、内存开销、…

Java项目-基于springboot框架的校园在线拍卖系统项目实战(附源码+文档)

作者&#xff1a;计算机学长阿伟 开发技术&#xff1a;SpringBoot、SSM、Vue、MySQL、ElementUI等&#xff0c;“文末源码”。 开发运行环境 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringBoot、Vue、Mybaits Plus、ELementUI工具&#xff1a;IDEA/…

Java的walkFileTree方法用法【FileVisitor接口】

在Java旧版本中遍历文件系统只能通过File类通过递归来实现&#xff0c;但是这种方法不仅消耗资源大而且效率低。 NIO.2的Files工具类提供了两个静态工具方法walk()和walkFileTree()可用来高效并优雅地遍历文件系统。walkFileTree()功能更强&#xff0c;可自定义实现更多功能&am…

(二十)、从宿主机访问 k8s(minikube) 发布的 redis 服务

文章目录 1、环境准备2、具体操作2.1、启动 minikube (start/stop)2.2、准备 redis-deployment.yaml2.3、执行 redis-deployment.yaml2.3.1、查看 pod 信息和日志 2.4、检查部署和服务状态2.4.1、如果需要删除 3、查看 IP 的几个命令3.1、查看IP的几个命令3.2、解读3.3、宿主机…

k8s的部署和安装

k8s的部署和安装 一、Kubernets简介及部署方法 1.1 应用部署方式演变 在部署应用程序的方式上&#xff0c;主要经历了三个阶段&#xff1a; 传统部署&#xff1a;互联网早期&#xff0c;会直接将应用程序部署在物理机上 优点&#xff1a;简单&#xff0c;不需要其它技术的参…

HarmonyOS Next模拟器异常问题及解决方法

1、问题1&#xff1a;Failed to get the device apiVersion. 解决方法&#xff1a;关闭模拟器清除用户数据重启

电子商务网站维护技巧:保持WordPress、主题和插件的更新

在这个快节奏的数字时代&#xff0c;维护一个电子商务网站的首要任务之一是保持WordPress、主题和插件的最新状态。过时的软件不仅可能导致功能故障&#xff0c;还可能带来安全风险。本文将深入探讨如何有效地更新和维护您的WordPress网站&#xff0c;以确保其安全性和性能。 …

【天池比赛】【零基础入门金融风控 Task2赛题理解】【2.3.6】

【天池比赛】【零基础入门金融风控 Task2赛题理解】【2.3.1-2.3.5】 2.3.6 变量分布可视化 2.3.6.1 单一变量分布可视化 对于 pandas.core.series.Series 类型的变量&#xff1a; index&#xff1a;含义&#xff1a;它表示 Series 对象的索引&#xff0c;也就是每个数据点对…

Docker-Consul概述以及集群环境搭建

文章目录 一、Docker consul概述二、consul 部署1.consul服务器2.registrator服务器&#xff08;客户端&#xff09;2.consul-template&#xff08;在consul服务器&#xff09;3.consul 多节点 一、Docker consul概述 容器服务更新与发现&#xff1a;先发现再更新&#xff0c;…

FFmpeg 4.3 音视频-多路H265监控录放C++开发三 :安装QT5.14.2, 并将QT集成 到 VS2019中。

一&#xff0c;安装QT&#xff0c; 重点&#xff1a;在安装QT的时候要安装msvc201x版本的组件&#xff0c; 二 &#xff0c; 安装 qt-vs-tools Index of /development_releases/vsaddin/2.8.1 三&#xff0c;需要安装过 windows10 SDK&#xff0c;一般我们在安装vs2019的时候就…

【MR开发】在Pico设备上接入MRTK3(三)——在Unity中运行MRTK示例

在前面的文档中&#xff0c;介绍了如何在Unity工程中配置号MRTK和Pico SDK 【MR开发】在Pico设备上接入MRTK3&#xff08;一&#xff09;在Unity中导入MRTK3依赖【MR开发】在Pico设备上接入MRTK3&#xff08;二&#xff09;在Unity中配置Pico SDK 本文将介绍如何运行一个简单…

Docker 安装sql server 登陆失败

错误&#xff1a; Sqlcmd: Error: Microsoft ODBC Driver 18 for SQL Server : SSL Provider: [error:0A000086:SSL routines::certificate verify failed:self-signed certificate]. Sqlcmd: Error: Microsoft ODBC Driver 18 for SQL Server : Client unable to establish co…

【virtuoso】sp测电阻

电路测量原理&#xff1a; 1. 电路原理图 2. 仿真设置 点击select&#xff0c;在原理图选择port设置sp扫频范围 3. plot图像 3.1 plot电阻图像 由公式可得&#xff0c;电阻值为阻抗的实部&#xff0c;所以 1. 选择 ZP 2. 绘制real 3. 点击Z11 4. 即可看到电阻值 3.2 plot电容图…

C++第七讲:STL--list的使用及模拟实现

C第七讲&#xff1a;STL--list的使用及模拟实现 1.list的使用1.1list是什么1.2构造、析构、赋值运算符重载1.3迭代器1.4empty、size、max_size1.5front、back1.6assign -- 代替1.7push_back和emplace_back1.8emplace1.9insert、erase、swap、resize、clear1.10find1.11splice1.…

CSDN Markdown 编辑器语法大全

Markdown 是一种轻量级标记语言&#xff0c;它以简洁、易读易写的特点&#xff0c;被广泛应用于技术文档、博客文章、笔记等领域。CSDN 的 Markdown 编辑器为用户提供了丰富的功能&#xff0c;让用户能够轻松地创建格式规范、内容丰富的文档。以下是一份详细的 CSDN Markdown 编…

大数据治理--法规遵从与隐私保护

目录 ​编辑一、国际及地方数据保护法规 1.1 国际数据保护法规 1.1.1 欧盟《通用数据保护条例》&#xff08;GDPR&#xff09; 1.1.2 美国《加州消费者隐私法案》&#xff08;CCPA&#xff09; 1.1.3 中国《网络安全法》及《个人信息保护法》 1.2 地方数据保护法规 二、…

深入解析缓存技术

文章目录 1. 缓存基本原理2. 缓存更新机制2.1 Cache Aside模式2.2 Read/Write Through2.3 Write Behind Caching2.4 对比总结 3. 缓存数据过期策略3.1 最近最少使用&#xff08;Least Recently Used, LRU&#xff09;算法3.2 先进先出&#xff08;First-In-First-Out, FIFO&…