精华内容
下载资源
问答
  • 针对波束卫星系统中资源分配序列决策的多目标优化(MOP)问题,为了在提升卫星系统性能的同时,提高用户业务需求的满意度,提出了一种基于深度增强学习(DRL)的DRL-MOP 算法。所提算法基于DRL和MOP 技术,对动态...
  • 基于深度增强学习和多目标优化改进的卫星资源分配算法.pdf
  • 多目标优化快速入门 多目标优化--引子 正如生活中,你想买一辆车,又想汽车的性能好,外观不错,价格还比较低,对于这同时满足这三个条件,我们应该如何进行考虑呢? 在投资的时候,我们想投入的资金最少,所付出...

    多目标优化快速入门

    多目标优化--引子

    正如生活中,你想买一辆车,又想汽车的性能好,外观不错,价格还比较低,对于这同时满足这三个条件,我们应该如何进行考虑呢?

    在投资的时候,我们想投入的资金最少,所付出的风险最小,同时收益是最大的,如何同时进行实现呢?

    在数学学习中,求求函数 f1(x1,x2,…,xn)=x1^2+x2^2 +…+xn^2 及函数 f2(x1,x2,…,xn)=(x1-1)^2+(x2-1)^2 +…+(xn-1)^2 同时达到最小的 (x1,x2,…,xn) 的取值,不存在一组 (x1,x2,…,xn) 的取值,使 f1 和 f2 同时达到最小值,这时候怎么办呢?

    帕累托最优

    帕雷托最优是指资源分配的一种理想状态。帕雷托最优的状态就是不可能再有更多的帕雷托改善的状态;换句话说,不可能再改善某些人的境况,而不使任何其他人受损。

    进化计算

    最早的是达尔文的进化论-物竞天择,适者生存

    后来是约翰.霍兰德提出的遗传算法

    1.遗传算法(Genetic Algorithm, GA)是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,通过模拟自然进化过程搜索最优解。

    2.该算法通过数学的方式,利用计算机仿真运算,将问题的求解过程转换成类似生物进化中的染色体基因的交叉、变异等过程。在求解较为复杂的组合优化问题时,相对一些常规的优化算法,通常能够较快地获得较好的优化结果。

    3.遗传算法已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。

    具体步骤是:

    (1)种群中个体随机初始化.

    (2)每个个体通过评价得到一个适应度值.

    (3)适应度值大的个体有更大的概率保留下来.

    (4)通过对适应度值大的个体交叉变异产生新的个体.

    不断的迭代第 (2)-(4) 步骤,经过足够多的迭代次后,最终能得到好的解.

    基本概念

    MOP

    1.求解单个函数 f1 的最小值为单目标优化问题(SOP)

    2.同时求解多个函数 f1 和 f2 的最小值为多目标优化问题(MOP)

    3.多目标优化问题的一般数学描述:

    4.对于两个个体 X1 和 X2 以及目标函数 F(X),若 X1 的每一个目标函数值 fi(X1) 都比 X2 对应的目标函数值 fi(X2) 要小,则认为 X1 要比 X2 更好,称 X1 支配(dominate) X2 ,记作 X1 ≺ X2 (它具有传递性)

    5.若存在 i 和 j 使得 fi(X1) < fi(X2) 且 fj(X1) > fj(X2), 则认为 X1 和 X2 无法比较,视为一样好,称 X1 与 X2 是非支配 (non-dominated)的,记作 X1 ⊀ X2 且 X2 ⊀ X1

    6.对于一组个体,若 Xa 不被其它任何一个个体支配,则 Xa 也称为是非支配的;Xa 也叫做 Pareto 最优解

    7.对于一个多目标优化问题,目的是求出一组 Pareto 最优解 Xi ,i=1,2,…,并使得目标函数的值尽可能地小

    根据左图中目标变量可知 ,帕累托最优解往往在左下角,值相对偏小。

    在右图中,可以看出,B支配C,D两点,在A点,B是被支配的,其余空间则是非支配

    EC

    1.想要求得多目标问题的最优解,我们利用计算机强大的计算能力,在决策空间中随机产生大量个体,并找出其中最好的(不被支配的)个体。也就是不断地“试”,来找到越来越好的个体。随机寻找个体的过程称为 搜索

    2.但无法做到遍历决策空间中每一个个体,我们需要在更短的时间里利用随机的方法找到更好的个体

    3.利用进化算法的策略,可以朝着越来越好的方向随机产生个体,而不是在决策空间中完全盲目地产生个体

    4.作为一个随机性算法,进化算法有如下 特点:

    •得到的不是问题的精确结果,而是近似的结果

    •每次得到的结果不一样

    •结果的精度随着迭代次数的增加而不断上升

    •往往以算法得到的结果的精度来评价算法的性能

                        进化算法的一般策略

    Indicator

    1.不同的算法,产生的结果是不同的,从结果可以看出各个算法性能的好坏

    2.算法产生的解集的好坏标准:

    •接近真实前沿面(收敛性)

    •在空间上分布性好(分布性)

    3.还有许多量化的评价解集的好坏的标准

    发展历程

    古典多目标时期

    传统的多目标优化方法是将各个子目标聚合成一个带正系数的单目标函数,系数由决策者决定,或者由优化方法自适应调整。

    为了获取近似Pareto最优集,一些优化方法使用不同的系数来实施动态优化。

    常见的古典方法有加权法(利用斜率来判断最优解)、约束法、目标规划法以及极大极小法等

    进化多目标时期

    最早提到可以利用EA来解决多目标优化问题的是Richard S. Rosenburg 于1967年在他的博士论文 “Simulation of genetic populations with biochemical properties”中

    David Goldberg 于1989年首次提出了Pareto Ranking的概念:MOEA中个体必须经由Pareto支配关系来选出,同时他也指出了MOEA中分布性保持的重要性,主要采取Fitness Share的策略

    Carlos M. Fonseca 和 Peter J. Fleming 于1993年提出了Multiobjective Optimization Genetic Algorithm (MOGA)。MOGA采用基于排序数的适应度赋值机制以及自适应的适应度共享的策略,风靡一时

    Kalyanmoy Deb于1994年提出了Non-dominated Sorting Genetic Algorithm (NSGA),采用分层的非支配排序机制以及适应度共享机制。然而算法缺陷是计算复杂度为O(MN3),随后,Deb跟他的学生在2000年提出了NSGA的改进版本NSGA2,文章于2002年发表TEVC。NSGA2采用快速非支配排序以及拥挤距离的策略,时间复杂度在O(MN2)。由于其速度及效果上的优势,许多年来NSGA2都被作为对比算法。

    Eckart Zitzler 在1998年一个会议上提出Strength Pareto Evolutionary Algorithm (SPEA),第二年文章被TEVC收录。SPEA在算法中使用了一个外部Archive来保留搜索到的好解,称之为Elitism。Elitism的使用随后也开始流行,随后不久Zitzler等人又对SPEA进行了改进SPEA2,主要引入了较细的适应度赋值方式以及密度估计方式(Truncation Method)。

    2006年,张青富跟李辉首次提出了基于分解的多目标优化算法,MOEAD,是将MOP问题分解成SOP问题并同时对这些子问题进行优化。MOEAD不仅在速度上有优势,而且搜到的结果很规律。在MOEA领域开辟了一条新的通道。

    2014年,Deb的NSGA3分成上下两个部分发表在TEVC上。主要是用来处理高维多目标问题。采用了基于参考点以及分解的策略。是NSGA2 + MOEAD 的结合

    其中目前最经典的算法还是NSGA-II 和MOEAD,

    请持续关注,后期会总结出这些算法的文章。

    展开全文
  • 基于深度强化学习的插电式柴电混合动力汽车多目标优化控制策略.pdf
  • 多目标优化-NSGAII算法

    千次阅读 2020-07-04 22:42:26
    NSGA-II学习笔记 ...从学长那里得知,NSGA-II和MOEAD是多目标优化算法的经典算法,不了解这两个讲点算法,相当于白学了多目标优化算法,很算法也是基于NSGA-II和MOEAD来进行改进和拓展,从而衍生出一系列算法

    NSGA-II学习笔记

    阅读文献:A Fast and Elitist Multiobjective Genetic Algorithm:
    NSGA-II
    有兴趣的话可以阅读中文翻译版本:https://wenku.baidu.com/view/61daf00d0508763230121235.html

    简介

    从学长那里得知,NSGA-II和MOEAD是多目标优化算法的经典算法,不了解这两个讲点算法,相当于白学了多目标优化算法,很多算法也是基于NSGA-II和MOEAD来进行改进和拓展,从而衍生出一系列算法。
    下面我先介绍一下NSGA-II
    NSGA-II 是由Deb跟他的学生在2000年提出了NSGA的改进版本。NSGA2采用快速非支配排序以及拥挤距离的策略,时间复杂度在O(MN2)。由于其速度及效果上的优势,许多年来NSGA2都被作为对比算法。

    下面来说一下,NSGA-II相比于NSGA有以下三点改进:

    1.提出快速非支配排序算法,是计算复杂度由计算复杂度O(MN^3 )降低为O(MN^2 )

    2.引入精英策略,扩大采样空间。将父代种群与其产生的子代种群组合,共同竞争产生下一代种群,有利于保持父代中的优良个体进入下一代,保证某些优良的种群个体在进化过程中不会被丢弃,从而提高了优化结果的精度。并通过对种群中所有个体的分层存放,使得最佳个体不会丢失,有效提高种群水平。

    3.采用拥挤度和拥挤度比较算子,不但克服了NSGA中需要人为指定共享参数的缺陷,而且将其作为种群中个体间的比较标准,使得准Pareto域中的个体能均匀地扩展到整个Pareto域,保证了种群的多样性。

    具体

    1.大体算法流程

    	确定种群大小 n,交叉概率 t,迭代次数 g
    
    ​	随机产生 n 个个体,它们整体视为种群 P
    
    ​	for i = 1 to g
    
     		  P’ = ∅ 
    
      		 for j = 1 to n
    
    ​            产生一个 [0,1] 的随机数 a
    
    ​      	 if (a<t)
    
    ​         	从 P 中随机选出两个个体作为父母,交叉产生一个新的个体并放入 P’ 中
    
    ​     	  else
    
    ​         	从 P 中随机选出一个个体,变异产生一个新的个体并放入 P’ 中
    
    ​       	end
    
       end
    
       利用非支配排序和拥挤距离,从 P∪P’ 中选出 n 个个体, 代替 P
    
    end
    输出最终种群 P 中的**非支配个体**
    
    

    在这里插入图片描述

    2.快速非支配排序

    传统的NSGA排序方法:计算复杂度O(MN3) ,M为目标个数,N为种群大小。计算第一帕累托前沿时,每个解都要与其他N-1个解比较M次,即比较次数为M*(N-1)*N,则计算的复杂度为O(MN2),
    如果按照最坏的打算来看的话,即每个解占一个前沿,每个前沿中只有一个解的时候,则计算的复杂度是O(MN3)。
    在经过改进的NSGA-II的快速非支配算法中,计算的复杂度为O(MN2).
    在上篇博客已经写到支配和非支配之间的关系以及表示形式,不熟悉的可以看上一篇博客。
    在这里插入图片描述

    符号含义:
    •种群:P(大写)
    •个体:p,q
    •NP:支配个体p的个体数量
    •SP:被个体p支配的个体集合
    在这里插入图片描述
    根据上图我们可以分析到对于每个种群P而言,p是属于P中的,SP所支配的集合不为空,NP一开始为0,如果p支配于q,那么个体q将并入Sp集合中,如果p被q支配,那么NP自动加一,如果NP为0,那么将是帕累托第一前沿,将p并入F1(第一帕累托前沿)。接着,访问帕累托最优解中S的集合中的解,对每个个体p被访问后,则所支配的个体q,Nq减一,Qrank=i+1。其中若有解对应n值为0,则保存至下一前沿面Frank+1 ,重复上一步骤,直到所有解都划分到对应的前沿面中。在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    同理可得出以下的4.5.6.7.8.9各个点支配情况
    在这里插入图片描述
    我们可以看出1,2,3号点并没有被支配,所以为第一帕累托前沿Np为0,同理可得,4号点被1,2号支配,Np为2,以此类推,N5=3,N6=2,N7=5,N8=6,N9=5。通过下面这张图,通过这张可以非常直观的看到NP和SP的具体情况。
    在这里插入图片描述
    对于4号点,当1号点进行确定后,则1号多支配的4,5,7,8,9的NP-1
    在这里插入图片描述
    以此类推,则可以看到下图,以及Frank的情况
    在这里插入图片描述

    3.拥挤比较算子

    拥挤度

    目的 同一层非支配个体集合中,为了保证解的个体能均匀分配在Pareto前沿,就需要使同一层中的非支配个体具有多样性,否则,个体都在某一处“扎堆”。NSGA—II采用了拥挤度策略,即计算同一非支配层级中某给定个体周围其他个体的密度。

    计算 每个个体的拥挤距离是通过计算与其相邻的两个个体在每个子目标函数上的距离差之和来求取
    在这里插入图片描述
    在这里插入图片描述
    就是在目标变量空间,两个个体在每个子目标函数上的距离差之和来求取拥挤距离。
    在这里插入图片描述
    经过快速非支配排序和拥挤度计算之后,种群中每个个体拥有两个属性:非支配等级ⅈrank和拥挤度id
    定义偏序<n如下:
    在这里插入图片描述

    4.精英策略

    在这里插入图片描述
    在父代种群p和t代产生的新种群Q中,通过非支配排序可以选择出帕累托最优解靠前的前沿面Z1,Z2,对于Z3来说,整体数量已经超过N,可以通过拥挤度比较算子来选择比较优越的个体,从而淘汰不够优越的个体,最终使得父代获得一个整体为N 的个体数量。

    总结

    这是我个人理解的NSGA-II算法大概思想,希望能够帮到大家,也是初学多目标优化算法,如果有一些不对的地方还请大佬们进行批评指正,同时也借鉴了https://blog.csdn.net/qq_35414569/article/details/79639848 这篇博客,使我受益匪浅。

    展开全文
  • 基于CS优化深度学习卷积神经网络的目标检测算法.pdf
  • 动态多目标优化

    千次阅读 2019-06-28 19:59:45
    在生产调度、人工智能、组合优化、工程设计、大规模数据处理、城市运输、水库管理、网络通信、数据挖掘和资本预算等诸多优化领域,常常会遇到许多复杂的...在实际生活中,研究动态多目标优化问题就变得格外重要。 ...

    在生产调度、人工智能、组合优化、工程设计、大规模数据处理、城市运输、水库管理、网络通信、数据挖掘和资本预算等诸多优化领域,常常会遇到许多复杂的更为接近现实生活的动态和静态优化问题.动态优化问题是指其目标函数不仅与决策变量有关,而且还会随着时间(环境)动态变化。

    在实际生活中,研究动态多目标优化问题就变得格外重要。

     

    展开全文
  • 多目标优化ABC

    2018-04-14 13:13:11
    MOABC,人工蜂群算法多目标优化matlab代码,注释,容易读。
  • 文章目录1 与单目标优化的区别2 多目标优化问题的处理3 多目标优化的性能评估 1 与单目标优化的区别 与单目标优化不同,MOCOP(目标组合优化问题)的解不唯一,而是由一组解组成的,代表目标之间所能达到的最佳权衡...

    1 与单目标优化的区别

    与单目标优化不同,MOCOP(多目标组合优化问题)的解不唯一,而是由一组解组成的,代表目标之间所能达到的最佳权衡(或妥协),这导致其最优性的概念不同于单目标优化。多目标得到的一组解通常称为Pareto最优。

    2 多目标优化问题的处理

    可以转化为一系列的单目标优化问题,这涉及字典序法、线性聚合函数等方法等使用。

    对于多目标元启发式算法,可分四类:

    1. 标量法:把问题转化为一个/多个单目标问题,具体有聚合法、ε-约束法、加权度量、目标规划、达成函数、目标达成等
    2. 基于群体方法:利用多个元启发式算法都在采用多群体,与几个标量搜索程序相结合。如向量评估遗传算法
    3. 基于Pareto方法:支配排序(MOGA)、支配深度(NSGA-II)和支配计数(SPEA、SPEA2)
    4. 基于指标的方法:采用性能评估测量来选择解。如基于指标的进化算法(IBEA)和S-度量选择EMOA(SMS-EMOA)

    常用非支配排序遗传算法II(NSGA-II)、强度Pareto进化算法2(SPEA2)、基于指标的进化算法(IBEA)、简单精英进化算法(SEEA)、多目标局部搜索法(MOLS)

    3 多目标优化的性能评估

    根据不同特性,性能指标可分:

    1. 一元或二元指标:二元指标允许我们直接比较精确Pareto前沿的两个近似点,而一元指标为每个近似点指定一个标量值
    2. 对精确Pareto前沿对需求:一些性能指标要求用户提供问题对精确Pareto前沿,可在许多情况下精确Pareto前沿是未知的
    3. 对额外信息的需求:有些质量指标需要对一些值给出定义,这些值可能在某些情况下难以获取(如理想点、最低点、标准组等)

    通常我们会采用多个性能指标来评估多目标元启发式算法的性能。

    • 基于收敛的指标:提供所获得的近似点与精确Pareto前沿的紧密度,如贡献、世代距离和 ε ε ε指标
    • 基于多样性的指标:提供所得解在Pareto前沿周围分为的均匀性信息,如间隔、扩展和熵
    • 混合指标:它们试图在一个单值上并入收敛和多样性两方面的性能,如超体积和 R R R度量

    参考书籍《大数据元启发式算法教程》

    展开全文
  • 直纹曲面喷漆机器人喷枪轨迹多目标优化.pdf
  • 在学习深度学习,目标检测等相关知识时,需要了解一些基础的优化方法与评价指标(这里只是简单叙述方便理解,想真正弄明白还得撸论文)。 优化算法 批量梯度下降(Batch gradient descent) 每次使用全量的训练集...
  • 推荐算法如何做多目标优化

    千次阅读 2020-03-13 23:08:59
    文章目录阿里 ESMM阿里 DUPN美团"猜你喜欢" 深度学习排序模型Google MMoE阿里 ESM2YouTube 多目标排序系统美图小结 推荐系统中如果只优化ctr,那么有很已有的ctr预估模型可以做。但是往往一个优秀的推荐系统除了...
  • 前言 自从上三篇博客详细讲解了Python遗传和进化算法工具箱及其在带约束的单目标函数值优化中的应用、利用遗传算法求解有向图的最短路径...1 多目标优化概念 首先大致讲一下多目标优化: 在生活中的优化问题,往...
  • 如何优化深度学习模型

    千次阅读 2019-05-01 09:48:34
    其他算法——即网格搜索、随机搜索和贝叶斯优化——要求你运行与训练良好神经网络目标相关的整个项目。LR范围测试只是执行简单定期的训练循环,并保持跟踪一些变量。 以下是使用最佳学习速率时大致可以获得的收敛...
  • 简介和使用方法PlatEMO是基于Matlab的一款拥有可视化界面的多目标优化算法平台。下载文件,下载链接:https://github.com/BIMK/PlatEMO文件下载完成后,...
  • 基于多目标粒子群优化算法的6R工业机器人轨迹优化.pdf
  • 推荐系统中如何做多目标优化

    千次阅读 2020-01-08 11:42:49
    在做推荐系统的过程中,我们希望同时优化多个业务目标。比如电商场景中,希望能够在优化GMV的基础上提高点击率,从而提高用户的粘性;在信息流场景中,希望提高用户点击率的基础上提高用户关注,点赞,评论等行为,...
  • 尽管优化方法可以最小化深度学习中的损失函数值,但本质上优化方法达到的目标深度学习的目标并不相同。 优化方法目标:训练集损失函数值 深度学习目标:测试集损失函数值(泛化性) %matplotlib inline import sys...
  • 尽管优化方法可以最小化深度学习中的损失函数值,但本质上优化方法达到的目标深度学习的目标并不相同。 优化方法目标:训练集损失函数值 深度学习目标:测试集损失函数值(泛化性) %matplotlib inline import sys...
  • 深度多目标跟踪算法综述

    万次阅读 多人点赞 2018-10-23 10:54:33
    其它机器学习、深度学习算法的全面系统讲解可以阅读《机器学习-原理、算法与应用》,清华大学出版社,雷明著,由SIGAI公众号作者倾力打造。 书的购买链接 书的勘误,优化,源代码资源 ...在多目标...
  • 深度学习优化算法总结

    千次阅读 2018-03-13 09:23:47
    本文基于目前深度学习中使用较优化学习算法进行总结。 1 深度学习中的优化算法  优化算法之前讨论两个问题:  (1) 局部最小值问题  在深度学习中,最优化问题其实并不容易困在局部最小值点。在高维度...
  • 组合在线学习:实时反馈玩转组合优化 看似无比困难的权衡问题,如今组合在线学习就能帮你“算出”最优解,轻松破解传统组合优化问题。本文中,我们邀请到微软亚洲研究院资深研究员陈卫为大家多面解读组合在线学习的...
  • 深度学习优化方法-AdaGrad

    万次阅读 2018-06-21 10:09:44
    “微信公众号” 梯度下降算法、随机梯度下降算法(SGD)、小批量梯度下降算法... 但是在实际应用中,各个参数的重要性肯定是不一样的,所以我们对于不同的参数要动态的采取不同的学习率,让目标函数更快的收敛。 A...
  • 本文给出了一种基于稀疏化鲁棒最小二乘支持向量机与多目标遗传参数优化的铁水[Si]动态软测量建模方法。首先,针对标准LS-SVR的拉格朗日乘子与误差项成正比导致最终解缺少稀疏性的问题,提取样本数据在特征空间映射集...
  • 我的CSDN博客地址:红色石头的专栏 我的知乎主页:红色石头 我的微博:RedstoneWill的微博 我的GitHub:RedstoneWill的GitHub ...Andrew Ng的深度学习专项课程的第一门课《Neural Networks and...
  • 深度学习中的Adam优化算法详解

    万次阅读 多人点赞 2019-08-23 01:22:12
    Adam(Adaptive method)是一种随机优化方法(A method for stochastic optimization),经常作为深度学习中的优化器算法。 (二)、Adam算法如何实现? (1). 上图就是Adam优化算法在深度学习应用于梯度下降方法的详细...
  • 深度学习各种优化函数详解

    万次阅读 多人点赞 2017-04-12 19:47:00
    深度学习中有众多有效的优化函数,比如应用最广泛的SGD,Adam等等,而它们有什么区别,各有什么特征呢?下面就来详细解读一下一、先来看看有哪些优化函数BGD 批量梯度下降所谓的梯度下降方法是无约束条件中最常用的...
  • 深度学习中的优化简介

    千次阅读 2018-04-16 10:47:40
    深度学习算法在许多情况下都涉及到优化。 1. 学习和纯优化有什么不同 在大多数机器学习问题中,我们关注某些性能...训练深度模型的优化算法通常也会包括一些针对机器学习目标函数的特定结构进行的特化。通常,代...
  • 浅析深度学习中优化方法

    千次阅读 2017-01-12 17:02:01
    目前而言,深度学习是机器学习的发展前沿,一般针对大数据量的学习目标。其优化方法来源于基本的机器学习的优化方法,但也有所不同。下面,小结一下,其基础是随机梯度下降的方法,但是为了学习的自适应性,做了如下...
  • 深度理解Powell优化算法

    万次阅读 多人点赞 2016-03-31 22:04:30
    该方法不需要对目标函数进行求导,当目标函数的导数不连续的时候也能应用,因此,鲍威尔算法是一种十分有效的直接搜索法。 Powell法可用于求解一般无约束优化问题,对于维数n 不同于其他的直接法,Powell法有一套...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 160,229
精华内容 64,091
关键字:

多目标优化深度优化