Weighted Sum Approach

该方法给出的表达式为:

首先,λ被称之为权重向量,观察和式,这完全就是m维向量的点乘公式嘛。具体的说,在目标空间中,把算法求出的一个目标点和原点相连构造成一个向量,此时,该方法的做法是将该向量与对应权重向量点乘,由向量点乘的几何意义可知,所得的数为该向量在权重向量方向上的投影长度,因为权重向量不变,最大/小化该长度值其实就是在优化该向量。可知若要增大该向量在权重向量上投影的长度,一方面可以增大/减小与权重向量的夹角,另一方面可以增大/减小该向量的长度。样例图如下:

上图中:考虑红色权重向量,因为是最小化问题,所以减小长度,增大夹角都是可行的方案,绿色为等高线,垂直于权重向量。

TchebycheffApproach

该方法给出的表达式为:

注意该方法中不再含有Σ符号,故不能再从向量点乘的角度理解。该方法大致思想是减少最大差距从而将个体逼近PF。等高线示意图如下:

首先解释等高线为什么是这样的。单看f1函数,即只考虑纵坐标,若两点等值,必然是 式中f1的函数值相等(因为另外两个量是不变的),即纵坐标相等,所以f1函数的等高线是一组平行于横轴的直线。f2类似,为一组平行于纵轴的直线。

那么,图中的等高线是横竖相交且刚好交在权重向量的方向上的,这是巧合吗?可以稍微来证明一下,可知,对于任何一个可行的切比雪夫值(自己叫的),我们从f1的角度上可以得到一个f1的值y,从f2的角度上可以得到一个f2的值x,他们的切比雪夫值是相等的,自然想到,点(x,y)(图中紫色点)为该切比雪夫值得横纵两条等值线的交点,那么有:λ1*(y-z1)= λ2*(x-z2),化简的(y-z1)/(x-z2)= λ2/λ1,可知该交点位于权重向量的方向上。

需要注意一点,这里的权重向量起点是Z*,不再是原点。

此时可知,若某个个体位于其权重向量方向的上部,则max得到的一定是其f1部分,故优化也需要减小其f1的值,即个体向下移动,相反,若在权重向量方向的下部,则应像左移动。以此来保证个体目标值落在黄点附近。

一种可能的个体运动路线如下图橘黄色所示:

Boundary IntersectionApproach

该方法给出的表达式为:

式中个参数含义如下图所示:

式子中等式约束其目的是为了保证F(x)位于权重向量λ的方向上,通过减小d来使算法求出的解逼近PF。但该条件不太容易实现,故将其改进为下边这种方法。

penalty-basedboundary intersection approach

改进后的式子为:

各个参数的含义如下图:

可知算法放宽了对算法求出的解得要求,但加入了一个惩罚措施,说白了,就是你可以不把解生成在权重向量的方向上,但如果不在权重向量方向上,你就必须要接收惩罚,你距离权重向量越远,受的惩罚越厉害,以此来约束算法向权重向量的方向生成解。

接下来是关于d1和d2两个参数的计算表达式的含义说明,我依然是从几何角度理解的。

d1——观察d1的计算表达式,Z*-F(x)可以看做原点到Z*点的向量减去原点到F(x)的向量,得到的是从F(x)出发指向Z*的一个向量,暂且命名为μ,之后μ与λ相乘得到μ在λ方向上的投影,这个长度值与λ的长度值之比为d1。

d2——其表达式的含义其实也无非就是利用向量运算构造出d2所表示的向量,取模即可得到d2.构造过程如下:

Z*表红色向量,d1*λ表蓝色向量(因为减法,所以方向取反),红色减蓝色得紫色向量,F(x)表绿色向量,绿色减紫色得黄色向量,即d2表黄色向量的长度。

多目标进化算法(MOEA)概述的更多相关文章

  1. 【目标检测】基于传统算法的目标检测方法总结概述 Viola-Jones | HOG+SVM | DPM | NMS

    "目标检测"是当前计算机视觉和机器学习领域的研究热点.从Viola-Jones Detector.DPM等冷兵器时代的智慧到当今RCNN.YOLO等深度学习土壤孕育下的GPU暴力美 ...

  2. [Evolutionary Algorithm] 进化算法简介

    进化算法,也被成为是演化算法(evolutionary algorithms,简称EAs),它不是一个具体的算法,而是一个“算法簇”.进化算法的产生的灵感借鉴了大自然中生物的进化操作,它一般包括基因编 ...

  3. 多目标优化算法(一)NSGA-Ⅱ(NSGA2)(转载)

    多目标优化算法(一)NSGA-Ⅱ(NSGA2) 本文链接:https://blog.csdn.net/qq_40434430/article/details/82876572多目标优化算法(一)NSG ...

  4. 【Python Deap库】遗传算法/遗传编程 进化算法基于python DEAP库深度解析讲解

    目录 前言 概述 启发式的理解(重点) 优化问题的定义 个体编码 初始族群的创建 评价 配种选择 锦标赛 轮盘赌选择 随机普遍抽样选择 变异 单点交叉 两点交叉 均匀交叉 部分匹配交叉 突变 高斯突变 ...

  5. 差分进化算法 DE-Differential Evolution

    差分进化算法 (Differential Evolution)   Differential Evolution(DE)是由Storn等人于1995年提出的,和其它演化算法一样,DE是一种模拟生物进化 ...

  6. geatpy - 遗传和进化算法相关算子的库函数(python)

    Geatpy The Genetic and Evolutionary Algorithm Toolbox for Python Introduction Website (including doc ...

  7. 基于候选区域的深度学习目标检测算法R-CNN,Fast R-CNN,Faster R-CNN

    参考文献 [1]Rich feature hierarchies for accurate object detection and semantic segmentation [2]Fast R-C ...

  8. Python遗传和进化算法框架(一)Geatpy快速入门

    https://blog.csdn.net/qq_33353186/article/details/82014986 Geatpy是一个高性能的Python遗传算法库以及开放式进化算法框架,由华南理工 ...

  9. CARS: 华为提出基于进化算法和权值共享的神经网络结构搜索,CIFAR-10上仅需单卡半天 | CVPR 2020

    为了优化进化算法在神经网络结构搜索时候选网络训练过长的问题,参考ENAS和NSGA-III,论文提出连续进化结构搜索方法(continuous evolution architecture searc ...

随机推荐

  1. ORACLE 表空间扩展方法

    ORACLE 表空间扩展方法 环境: linux系统 工具:PL/SQL DEVELOPER 第一步:查看表空间的名字及文件所在位置: select tablespace_name, file_id, ...

  2. 028 -bash-4.1$ 出现故障的原理及解决办法?

    最近在搭建分布式的时候,出现了这个问题,很不爽.下面是我的解决方式. 1.在用户下删除bash rm -rf /home/beifeng/.bash* 2.拷贝 cp /etc/skel/.bash* ...

  3. Windows下调用caffe的matlab接口

    一.编译caffe的matlab接口 在我的这篇博客windows-caffe配置已经说了怎么编译了,这里就略过了. 编译成功后,会得到如下图所示文件: matlab接口就在matcaffe文件夹里. ...

  4. [USACO08FEB]修路Making the Grade

    [USACO08FEB]修路Making the Grade比较难的dp,比赛时打的找LIS,然后其他的尽可能靠近,40分.先举个例子61 2 3 1 4 561 2 3 3 4 5第4个1要么改成3 ...

  5. chrome使用技巧(转)

    原文:http://www.cnblogs.com/liyunhua/p/4544738.html 阅读目录 写在前面 快速切换文件 在源代码中搜索 在源代码中快速跳转到指定的行 使用多个插入符进行选 ...

  6. 024.Zabbix告警等级机制

    一 等级告警 告警升级可以对告警结果按自定义的时间段进行进行消息发送,并执行命令,形成一个梯度的告警处理. 二 按时间自定义告警梯度 2.1 添加时间发生的时间戳和发送时间 2.2 设置三个等级梯度 ...

  7. java中关于锁知识的整理

    1.1什么是锁? 在计算机科学中,锁(lock)或互斥(mutex)是一种同步机制,用于在有许多执行线程的环境中强制对资源的访问限制.锁旨在强制实施互斥排他.并发控制策略. 锁通常需要硬件支持才能有效 ...

  8. DBUtils工具

    DBUtils工具 简介 是Apache旗下的产品.是对jdbc的简单封装.提供出通用的jdbc操作方法.简化开发者使用jdbc的成本. 常用的API说明 |- QueryRunner类: 主要进行j ...

  9. BZOJ.1576.[Usaco2009 Jan]安全路经Travel(树形DP 并查集)

    题目链接 BZOJ 洛谷 先求最短路树.考虑每一条非树边(u,v,len),设w=LCA(u,v),这条边会对w->v上的点x(x!=w)有dis[u]+dis[v]-dis[x]+len的距离 ...

  10. tomcat 启动 关闭 重启脚本

    启动 #!/bin/bash # Author:wanglan # Mail:@qq.com # Fuction:Tomcat Start/stop/restart script # Version: ...