多目标优化-测试问题及其Pareto前沿

2023-10-27

多目标进化算法系列

  1. 多目标进化算法(MOEA)概述
  2. 多目标优化-测试问题及其Pareto前沿
  3. 多目标进化算法详述-MOEA/D与NSGA2优劣比较
  4. 多目标进化算法-约束问题的处理方法
  5. 基于C#的多目标进化算法平台MOEAPlat实现
  6. MOEAD中聚合函数等高线分析
  7. MOEAD中一种使解更均匀分布的聚合函数介绍

在很多工程问题中都会涉及需要对多个目标同时进行优化的问题,且这些目标间是相互互斥的,也即一个目标的增大往往至少存在一个其他的目标减小,以下举一个简单的例子说明:

m i n { f 1 ( x ) = x f 2 ( x ) = 1 − x s . t .      x ∈ [ 0 , 1 ]          \begin{matrix} min \begin{cases} f_1(x)=x\\ f_2(x)=1-x \end{cases} \\ s.t.\;\;x \in [0,1]\qquad\;\;\;\;\\ \end{matrix} min{f1(x)=xf2(x)=1xs.t.x[0,1]

为了简便起见,对于 x x x例举了如下几个值:

x x x f 1 ( x ) f_1(x) f1(x) f 2 ( x ) f_2(x) f2(x)
0 0 1
0.2 0.2 0.8
0.4 0.4 0.6
0.6 0.6 0.4
0.8 0.8 0.2
1 1 0

显然从该表中我们不能找到一个解是全局最优的的,因为若 f 1 ( x ) f_1(x) f1(x)小,那么 f 2 ( x ) f_2(x) f2(x)又变大,因此没有一个解使得 f 1 ( x ) f_1(x) f1(x) f 2 ( x ) f_2(x) f2(x)同时最小成立。因此,表格中列出的 x x x的值都是该问题的最优解。也就是说,对于有多个目标的优化问题,不能得到单一的解使得全局最优,而是一个解集,称之为Pareto Set(PS),其对应的目标值的集合则称之为Pareto Front(PF)。Pareto Set(PS)和Pareto Front(PF)的具体定义可参考 我之前的文章 。此类问题就称之为多目标优化问题,其一般表达形式为:

m i n    F ( x ) = ( f 1 ( x ) , . . . , f m ( x ) ) s . t .    x ∈ Ω      \begin{matrix} min\;F(x)=(f_1(x),...,f_m(x))\\ s.t.\;x\in \Omega\qquad\qquad\qquad\qquad\;\;\\ \end{matrix} minF(x)=(f1(x),...,fm(x))s.t.xΩ

m m m为需要同时优化的目标个数。有时,对于某一个目标函数,我们需要最大化该目标,只需要将该目标简单的转换为最小化该目标即可。

对于上面所提的多目标优化问题,很容易观察到,由于其自变量 x x x只有一个维度,因此任意一个 x x x都是最优解。但当 x x x在多个维度取值时,最优解往往只出现在很少的区域,这就需要我们求解该类问题的算法有很强的搜索能力。目前来说,单纯的数学方法不能很好的处理该类问题,而进化算法却能取得较好的结果。所谓进化算法是一种模拟生物进化的过程的算法,典型的算法有遗传算法(GA),粒子群算法(PSO),蚁群算法(ACO)等。基于进化算法求解多目标优化问题的方法我在这篇文章中已经有较为详细的描述。

这篇文章主要介绍下一些常见的多目标优化问题测试函数以及Pareto Front(PF)。
ZDT系列
Comparison of multiobjective evolutionary algorithms: Empirical results
DTLZ系列
可参考Scalable Multi-Objective Optimization Test Problems
WFG系列
可参考A Review of Multiobjective Test Problems and a Scalable Test Problem Toolkit
MOP系列
出自Decomposition of a Multiobjective Optimization Problem into a Number of Simple Multiobjective Subproblems
UF系列
出自Multiobjective optimization Test Instances for the CEC 2009 Special Session and Competition
以上都是比较经典的测试问题,一般的论文中都会使用上述的测试函数。同时,有些不是很常见的多目标问题也会出现在文献中,如对于有long tail和sharp peak的测试问题,如F1- F6, mF4,出自An Improved Multiobjective Optimization Evolutionary Algorithm Based on Decomposition for Complex Pareto Fronts,另外,对于此类问题以及前沿不连续的多目标优化问题,本人有一篇文章做了一点点工作,A modified PBI approach for multi-objective optimization with complex Pareto fronts

QQ交流群:399652146

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

多目标优化-测试问题及其Pareto前沿 的相关文章

  • thinkPHP6.0入门笔记(一)——环境配置

    thinkPHP6 0环境配置 选择thinkPHP的原因 thinkPHP6 0引入bootstrap 选择thinkPHP的原因 虽然php的热度已经大不如从前了 在实用上存在较多的高并发问题 但是相对于java和go php的语法更加
  • mac node 操作

    安装nvm命令 Mac 安装 nvm 知乎 2 安装node Mac安装node 简书
  • Elasticsearch学习(十六)Elasticsearch8 http方式使用用户名密码访问集群

    目录 前言 步骤 1 环境 2 解压 3 生成证书 elastic stack ca p12 4 生成证书 elastic certificates p12 5 将证书拷贝到其他节点 6 配置密码 7 配置 elasticsearch ym
  • No valid entries or contents found, this is not a valid OOXML (Office Open XML) file

    问题描述 导出Excel的时候出现的异常 我这个导出是为导入Excel做准备的 也就是用户先下载模板 然后根据模板填写数据再导入Excel 模板当中Excel也是可以正常打开的 解决过程 Maven编译过后的target文件夹当中的Exce
  • JavaScript 数据结构——树

    概念 树是一种分层数据的抽象模型 树的常用操作 深度优先遍历 广度优先遍历 实现 JavaScript中没有树 但是可用Object和Array来构建树 如上图中的树可表示为 const tree val A children val B
  • 使用Harbor构建docker私有仓库

    目录 一 概述 1 什么是Harbor 2 Harbor的优势 3 Docker私有仓库架构 4 Harbor 配置文件以及相关参数 1 所需参数 2 可选参数 二 使用Harbor构建docker私有仓库 1 部署 Harbor 服务 1
  • NeurlPS 2022

    作者 字节跳动智能创作团队 来源 机器之心 近期 由新加坡国立大学和字节跳动联合发表的论文入选 NeurIPS 2022 该论文提出了一个全新的 针对大模型训练的参数高效微调方法 SSF Scaling Shifting Your Feat
  • Serial Port Monitor -- 测试Modbus RTU

    Serial Port Monitor 测试Modbus RTU Serial Port Monitor 是一款用于测试和调试Modbus RTU协议的高效软件 在某些情况下 使用Modbus RTU测试仪非常有用 如果你正在开发或调试串行
  • layui 多选限制选择3个

    可以使用 layui 的表单组件进行多选 然后通过 JavaScript 代码限制用户最多只能选择 3 个选项 具体的实现步骤如下 在 layui 的表单组件中 使用多选框进行多选 div class layui form item div
  • Day1.线索化二叉树

    线索二叉树基本介绍 1 n 个结点的二叉链表中含有 n 1 公式 2n n 1 n 1 个空指针域 利用二叉链表中的空指针域 存放指向 该结点在某种遍历次序下的前驱和后继结点的指针 这种附加的指针称为 线索 2 这种加上了线索的二叉链表称为
  • java版本工程项目管理系统源码-简洁+好用+全面-工程项目管理

    工程项目管理系统是指从事工程项目管理的企业 以下简称工程项目管理企业 受业主委托 按照合同约定 代表业主对工程项目的组织实施进行全过程或若干阶段的管理和服务 系统定义 工程项目管理企业不直接与该工程项目的总承包企业或勘察 设计 供货 施工等
  • Can not find ‘Converter‘ support class List问题解决

    问题描述 com alibaba excel exception ExcelDataConvertException Can not find Converter support class List 问题解释 EasyExcel开源框架中
  • Airtest图像识别测试工具原理解读&最佳实践

    1 Airtest简介 Airtest是一个跨平台的 基于图像识别的UI自动化测试框架 适用于游戏和App 支持平台有Windows Android和iOS Airtest框架基于一种图形脚本语言Sikuli 引用该框架后 不再需要一行行的
  • 如何解决ChatGPT网络错误的问题,让AI对话更丝滑~

    前言 在当今人工智能技术的飞速发展中 ChatGPT 作为一款大型语言模型备受瞩目 近期 其在各大社交媒体平台上的表现更是引来了一片关注之声 无论是与用户进行有趣的对话 还是帮助人们解决实际问题 ChatGPT 展现出了其强大的自然语言处理
  • 【C语言】自定义类型:结构体,枚举,联合小结

    结构体 结构是一些值的集合 这些值被称为成员变量 结构的每个成员可以是不同类型的变量 结构的声明 struct tag member list variable list 描述一个学生 struct Stu 成员变量 成员列表 char n
  • 数值分析--线性方程组解的算法(6种)(附算法百度云链接,纯手写原创)

    先上干货百度云 纯手写 纯HTML 可直接打开 如下 链接 https pan baidu com s 1LxZptQ6Wz0ROYnyT1x u4g 密码 r7qd 注 参考书籍 数值分析 北京航空航天大学出版社 一 顺序GUASS消去法
  • 数据导入的三种方法

    1 定量研究 定量研究最重要的是如何提出问题 而不是数据和统计方法 谢宇 定量研究是分析趋势 是找寻和社会相适应的一个概括视角 这才是定量研究 刘德寰 2 数据导入 训练机器学习模型时 用到的大量数据都是以CSV的格式来存储 或者能方便转化

随机推荐

  • 【内排序 -- 八大排序】

    目录 前言 算法实现 一 插入排序 1 直接插入排序 2 希尔排序 缩小增量排序 二 选择排序 1 选择排序 2 堆排序 三 交换排序 冒泡排序 快速排序1 hoare版 快速排序2 挖坑版 快速排序3 前后指针版 优化 三数取中 小区间优
  • vscode+clangd远程服务器看linux内核源码,完美替换source insight

    vscode clangd远程服务器看linux内核源码 完美替换source insight vscode插件需求 插件设置 工具需求 bear编译 clangd编译 内核索引 设置代码风格及静态检查项 配置clangd工程代码风格 vs
  • python怎么画出圆润的曲线_在matplotlib图中绘制平滑曲线

    from netCDF4 import dataset from pylab import import numpy from scipy import interpolate from scipy interpolate import s
  • Docker安装以及常用命令

    Docker 的安装 Docker 是一个开源的商业产品 有两个版本 社区版 Community Edition 缩写为 CE 和企业版 Enterprise Edition 缩写为 EE 企业版包含了一些收费服务 个人开发者一般用不到 下
  • ubuntu 18.04 安装 Redis

    来源于 https wangxin1248 github io linux 2018 07 ubuntu18 04 install redis html top 感谢作者 Redis 安装 Redis是一款内存键值存储 以其灵活性 性能和广
  • ALLEGRO17.2椭圆过孔焊盘绘制

    1 先打开Padstack Editer 先把左下角Units 的单位改为MM 2 进入这个界面后这里选择Slot 3 这里Oblong Rectangle Rcunded Rectangle Chamfered Rectangle都可以选
  • VoVNet:实时目标检测的新backbone网络

    目前基于深度学习的目标检测模型无不依赖CNN分类网络来作为特征提取器 如SSD采用VGG YOLO采用DarkNet Faster R CNN采用ResNet 我们一般称这些网络为目标检测模型的backbone ResNet是目标检测模型最
  • 增强型pmos电路符号_一文看懂CMOS集成门电路

    来源 内容由半导体行业观察 ID icbank 授权转载自公众号 芯爵ChipLord 作者功烨 谢谢 CMOS门电路由PMOS场效应管和NMOS场效应管以对称互补的形式组成 本文先介绍MOS管 然后再介绍由CMOS组成的门电路 MOS英文
  • #No module named ‘tensorflow_core.keras‘引发的一连串问题

    No module named tensorflow core keras 引发的一连串问题 让头发掉得更猛烈些吧 项目场景 本人在用研究LSTM算法中遇到了bug 当要构建神经网络时出现了这条报错 问题描述 运行算法包 import te
  • 【阅读笔记】你不知道的Javascript--强制类型转换4

    目录 强制类型转换 基本概念 JSON boolean 强转归纳 其他知识点 被诟病的 安全使用隐式强转法则 抽象关系比较 语法 表达式变动 强制类型转换 基本概念 类型转换发生在静态类型语言的编译阶段 强制类型转换则发生在动态类型语言的运
  • github 在线使用vscode 小技巧

    问题 通常我们在github上预研 查看一些代码库的时候并不行把代码克隆下来 然后用IDE工具去查看 知识简短查看一部分内容 但是由于项目有时间代码文件层次比较深 不容易找到对应字符定义 方法 方法一 只读模式 github提供了在线vsc
  • vscode python print 输出窗口中文乱码

    一 搭建 python 环境 在 VSC 中点击 F1 键 弹出控制台 输入 ext install 界面左侧弹出扩展窗格 输入python 确认 开始搜索 下载发布者为Don Jayamanne 的 Python 插件 下载过程中不要切换
  • C++ 向kafka中发送数据

    kafka是一个分布式流处理的平台 通过kafka我们可以发布和订阅流式记录 有关kafka的介绍可以参考官网或者这篇文章 https juejin im post 6844903495670169607 介绍的非常的详细 我个人喜欢把ka
  • java图像处理-(指定区域内)灰度化、透明化(alpha通道)处理

    近日在一家小公司实习 老板要求我写一个图形编辑器 其中涉及到用java处理图像 一般图像处理python用的比较多 感觉网上关于java处理图像的资料不是很多 也许是因为我没有认真的去翻吧 所以想把自己处理的一些想法记录一下 灰度化 图片的
  • 毕业设计-基于大数据的电影推荐系统-python

    目录 前言 课题背景和意义 实现技术思路 实现效果图样例 前言 大四是整个大学期间最忙碌的时光 一边要忙着备考或实习为毕业后面临的就业升学做准备 一边要为毕业设计耗费大量精力 近几年各个学校要求的毕设项目越来越难 有不少课题是研究生级别难度
  • SystemVerilog

    inside属于SystemVerilog中操作符的一种 set membership operator 基本语法格式为 expression inside range list 有时合理使用inside操作 可以使得编码更为高效和简洁 在
  • 企业小程序开发步骤【教你创建小程序】

    随着移动互联网的兴起 微信已经成为了很多企业和商家必备的平台 而其中 微信小程序是一个非常重要的工具 本文将为大家介绍小程序开发步骤 教你创建小程序 步骤一 注册小程序账号 先准备一个小程序账号 在微信公众平台的网站上注册即可 注册时要注意
  • 算法训练营第二天(7.13)

    目录 双指针 LeeCode977 Squares of a Sorted Array 滑动窗口 LeeCode209 Minimum Size Subarray Sum 总结 双指针 LeeCode977 Squares of a Sor
  • cocos 制作微信箫游戏_Cocos Creator如何制作3D微信小游戏

    Cocos Creator推出了3D编辑器 集成到了2 1以后的版本 今天我们来看下如何来使用 Cocos creator2 1做3D 1 可以2D 3D来回切换的场景编辑器 点击按钮 可以进入3D编辑器模式 再点击一下有回到2D编辑模式
  • 多目标优化-测试问题及其Pareto前沿

    多目标进化算法系列 多目标进化算法 MOEA 概述 多目标优化 测试问题及其Pareto前沿 多目标进化算法详述 MOEA D与NSGA2优劣比较 多目标进化算法 约束问题的处理方法 基于C 的多目标进化算法平台MOEAPlat实现 MOE