文章目录

  • Pareto Optimal(帕累托最优理论)
    • Pareto解
    • 多目标优化的帕累托解
  • Pareto理论使用实例-岭回归
    • 岭回归(Ridge Regression)
    • Pareto前沿面的求解-多目标转单目标
    • 岭回归的另一种等价形式

以下Pareto理论部分参考自

https://blog.csdn.net/u010180815/article/details/78994486?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-4.nonecase

维弗雷多·帕雷托 (Villefredo Pareto) 在1987年提出:社会财富的80%是掌握在20%的人手中,而余下的80%的人只占有20%的财富。渐渐地,这种“关键的少数(vital few)和次要的多数(trivial many)”的理论,被广为应用在社会学和经济学中,并被成之为Pareto原则(Pareto Principle)。Pareto Principle也常被称为80/20原则,或称帕累托法则、帕累托定律、最省力法则或不平衡原则、犹太法则。而帕累托法则认为:原因和结果、投入和产出、努力和报酬之间本来存在着无法解释的不平衡。


Pareto Optimal(帕累托最优理论)

Pareto Optimal在维基的解释是:“不可能再改善某些人的境况,而不使任何其他人受损”。帕雷托最优的定义:帕雷托最优是资源分配的一种状态,在不使任何人境况变坏的情况下,不可能再使某些人的处境变好。帕累托最优(Pareto Optimality),也称为帕累托效率、帕累托改善,是博弈论中的重要概念,并且在经济学, 工程学和社会科学中有着广泛的应用。

Pareto解

Pareto解又称非支配解或不受支配解(nondominated solutions):在有多个目标时,由于存在目标之间的冲突和无法比较的现象,一个解在某个目标上是最好的,在其他的目标上可能是最差的。这些在改进任何目标函数的同时,必然会削弱至少一个其他目标函数的解称为非支配解或Pareto解。一组目标函数最优解的集合称为Pareto最优集。最优集在空间上形成的曲面称为Pareto前沿面(Pareto optimal front)。Pareto 在1986 年提出多目标的解不受支配解(Non-dominated set)的概念,其定义为:假设任何二解S1及S2对所有目标而言,S1均优于S2,则我们称S1 支配S2,若S1没有被其他解所支配,则S1 称为非支配解(不受支配解),也称Pareto解。

多目标优化的帕累托解

考虑下图,我们以国家经济发展的又快又好为多目标优化,那么他的帕累托前沿面如图所示,面上的每个点都对应一个<速度,质量>的策略,而前沿面上的每个策略都在其中一个目标上做到了极致,也就是说在相同速度的情况下,前沿面上的点总是质量最好的。想提升速度,那么必须相应的降低质量。

但是多目标优化问题往往没有这么好的前沿面,考虑同时最小化两个目标,我们得到的前沿面往往是比较奇怪的,类似于下图:

同时使这两个目标最小化的点称之为oracle solution–神才能到达的点,这样的多目标优化问题时很难的,我们一般通过等价变化将他变成单目标优化的形式。下面将通过岭回归来探讨这个转变的过程。

Pareto理论使用实例-岭回归

岭回归(Ridge Regression)

岭回归在本质上时一个双目标优化问题,我们希望误差的二范数的平方尽可能的小,也希望 x x x的能量尽可能的小,因此可以写为如下的形式
min ⁡ ∣ ∣ b − A x ∣ ∣ 2 2 \min ||b-Ax||^2_2 min∣∣b−Ax∣∣22​
min ⁡ ∣ ∣ x ∣ ∣ 2 2 \min ||x||_2^2 min∣∣x∣∣22​

他的曲线我们可以画成如下的形式:

他的帕累托前沿面就是图中加粗的部分。

Pareto前沿面的求解-多目标转单目标

我们可以将上述的岭回归写成如下形式:
min ⁡ ∣ ∣ b − A x ∣ ∣ 2 2 + λ ∣ ∣ x ∣ ∣ 2 2 ; λ ≥ 0 \min{||b-Ax||^2_2+\lambda ||x||_2^2};\lambda\geq0 min∣∣b−Ax∣∣22​+λ∣∣x∣∣22​;λ≥0
这就是我们常见的岭回归的形式,其实就是使用参数 λ \lambda λ,将多目标优化转化成了单目标无约束优化。便利这个 λ \lambda λ,我们就可以取到前沿面上的所有的点, λ = 0 \lambda=0 λ=0与 λ = i n f \lambda=inf λ=inf时的点已经画在了图上。

但是很多时候,即使是转化成了单目标优化我们也无法求出前沿面上的所有点。

岭回归的另一种等价形式

上面我们已经给出了两种岭回归的形式,这里再给出另一种,这三种形式也就是我们常用的多目标向单目标转化的方法

m i n ∣ ∣ b − A x ∣ ∣ 2 2 min ||b-Ax||_2^2 min∣∣b−Ax∣∣22​
s . t . ∣ ∣ x ∣ ∣ 2 2 ≤ κ s.t. ||x||_2^2\leq \kappa s.t.∣∣x∣∣22​≤κ
即我们主要优化其中一个目标,而使得另一个目标成为优化的限制条件。同样的在这里如果 κ = 0 \kappa=0 κ=0,那么是上图中 λ = i n f \lambda=inf λ=inf的点,而 κ = i n f \kappa=inf κ=inf对应 λ = 0 \lambda=0 λ=0的点。这也给我们提供了一种将约束去掉,将问题转化为无约束的方法,从而导出了拉格朗日乘子的概念。

深入理解帕累托与多目标优化相关理论相关推荐

  1. 基于帕累托的多目标遗传算法优化的原理与 Python 实现

    文章目录 帕累托多目标遗传算法 代码实现 排序函数 查找所需索引函数 Pareto 法得到帕累托前沿函数 拥挤度计算 从父代和子代中选择下一个父代 帕累托多目标遗传算法 在优化领域,遗传算法绝对占得上 ...

  2. [11.7日学习记录]多目标优化和帕累托最优解集(未完成)

    目录 一.多目标优化问题MOP 1.1MOP定义 1.2支配和帕累托最优定义 二.求帕累托最优解集 2.1多目标进化算法MOEA 2.2 粒子群优化算法PSO Reference 一.多目标优化问题M ...

  3. 帕累托改进和帕累托最优、卡尔多-希克斯改进

    根据目标个数,分为单目标规划,以及多目标规划.多目标的规划是去找折中的解集合,既pareto最优解集合.对优化目标超过3个以上的,称之为超多目标优化问题. 帕累托改进描述的就是在没有人变得不好的前提下 ...

  4. python matplotlib绘制柏拉图pareto_强大的帕累托分布——其可视化实现方法

    1.帕累托分布 帕累托分布是一种幂律概率分布,以意大利土木工程师.经济学家和社会学家维尔弗雷多·帕累托的名字命名,用来描述社会.科学.地球物理.精算和其他各种可观察到的现象.帕累托分配有时也被称为帕累 ...

  5. 直方图 帕累托图_工具讲解 | 用Excel绘制帕累托图

    帕累托图又叫排列图.主次图,是按照发生频率大小顺序绘制的直方图,表示有多少结果是由已确认类型或范畴的原因所造成.它是将出现的质量问题和质量改进项目按照重要程度依次排列而采用的一种图表.可以用来分析质量 ...

  6. 基于QCustomplot实现帕累托图

    一.什么是帕累托图? 二.相关代码 void MainWindow::setParetoDemo(QCustomPlot *customPlot) {demoName = "Bar Char ...

  7. 帕累托图及其在Matlab中的应用

    1. 帕累托图原理 帕累托图又叫排列图.主次图,是按照发生频率大小顺序绘制的直方条图,表示有多少结果是由已确认类型或范畴的原因所造成.它是将出现的质量问题和质量改进项目按重要程度依次排列而采用的一种图 ...

  8. pmp直方图与帕累托图的区别_PMP?考试项目质量管理工具之帕累托图(6)

    在质量管理过程中,我们常见的质量管理工具有七种,分别为控制图.鱼骨图.流程图.直方图.散点图.帕累托图.趋势图.为了更好的帮助大家顺利通过PMP®考试,下面为大家整理的是关于PMP®考试项目质量管理工 ...

  9. 多目标优化之帕累托最优

    帕累托最优 维基百科:帕累托最优是指资源分配的一种理想状态.给定固有的一群人和可分配的资源,如果从一种分配状态到另一种状态的变化中,在没有使任何人境况变坏的前提下,使得至少一个人变得更好,这就是帕累托 ...

最新文章

  1. day04 JDBC java数据库连接
  2. apache下用expires_module让浏览器缓存静态文件
  3. 2016总结 - 我的转型之路
  4. Flash Catalyst之乱盖
  5. python3爬虫(9)分布式爬虫与对等分布式爬虫
  6. Zabbix3.2.6之通过JMX监控Tomcat
  7. 贝叶斯公式的共轭分布
  8. 索尼rx1r人脸识别_徕卡Q2 索尼rx1r2对比
  9. React基础(肆)———状态和循环渲染
  10. 如何从mac拷贝文件到NTFS格式的移动硬盘
  11. 大福利:4000余本数学书下载地址
  12. 台湾南海岸一带发生了7.1级地震
  13. sata及adma控制器linux操作系统驱动的设计与实现,SATA及ADMA控制器Linux操作系统驱动的设计与实现.pdf...
  14. 哈佛凌晨四点半...
  15. 论文翻译:2000_wideband extension of telephone speech using a hidden Markov model
  16. 【数据压缩(五)】基于C++实现BMP序列转YUV文件
  17. [Golang梦工厂]一个小项目带你学会GIN框架、JWT鉴权、swagger生成接口文档,看这一篇就够了
  18. 【POJ 2987】Firing
  19. 什么是超频,怎么给CPU超频?
  20. Python+Django基于python的古诗词在线学习网站

热门文章

  1. thinkphp5 引入钉钉接口 调取企业员工信息 存入数据库
  2. ubuntu 18.04下使用MATLAB
  3. numpy中的max和maximum
  4. VB6.0 ActiveX 控件开发详解 [第一章:创建工程]
  5. 报表控件ActiveReports帮助高校实现办公、财务管理数字化
  6. TP_LINK AP和CPE连接配置
  7. PHP单页面加密视频教程附源码,thinkphp3.2最新版本项目实战视频教程(含源码)
  8. java 异步调用 事务_@Transactional事务提交后触发异步方法
  9. Python - 装机系列66 pandas读取excel的问题
  10. 某生鲜电商mfsig加密算法分析