多目标优化怎么偏向某个目标?通过参考点的方式可以解决

2023-10-20 17:36

本文主要是介绍多目标优化怎么偏向某个目标?通过参考点的方式可以解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

通过参考点的方式可以使算法偏向某个目标,其中这些参考点的某些性质符合你所需要偏向的这个目标, 例如决策者偏好的分子是活性较好的分子,那么优化后的分子也会是这个偏好


一、基于参照点集合的方法概述

近年来出现了一类基于参照点集的超多目标演化算法。这类方法使用一个参照点集合来评价解的优劣。因此,搜索的过程由选中的参照点集合来指导方向。 这类方法有两个关键点:

  1. (a)如何构造参照点集合?
  2. (b)如何使用参照点集合来比较解的优劣?

如表2.10所示,这类方法包含三种:

  1. Two Archive Algorithms(TAAs)【从历史解和当前种群中选择解来构建参照点集合】
  2. Many Objective NSGA-II (NSGA-III)、【使用一组虚拟的理想解作为搜索目标】
  3. Taxi-Cab Surface Evolutionary Algorithm(TC-SEA)【使用一组虚拟的理想解作为搜索目标】

TAA 从历史解和当前种群中选择解来构建参照点集合,而  NSGA-II 和TC-SEA, 则使用一组虚拟的理想解作为搜索目标。对于虚拟解来说, 我们只知道其在目标空间的位置,但是并不知道其决策变量的取值。

1) 基于真实参照点集合的算法

在l2,128]中,作者提出了一种新颖的两档案算法 two archive algorithm(TAA) 以及它的改进版(Two Arch2)。 该算法将非支配解分为两个档案保存:收敛性档案(Convergence Archive,CA)和多样性档案(Diversity Archive, DA)。收敛性档案可以被看成是在线更新的参照点集合,只包含那些曾经支配过别的解的非支配解。当收敛性档案和多样性档案的解的个数超过限制时,多样性档案中的解根据它和收敛性文档距离进行筛选,距离最近的会被迭代式的删除,直到满足数量要求。实验结果显示,在相当的多样性指标的基础上, TAA[2]和其最新的变种 (Two Arch2)在收敛性能上显著优于其他当前最优的超多目标演化算法。算法也被应用到现实问题上,如软件工程30]和传感器网络协议优化。

2)基于虚拟参照点集合的方法

与TAA 不同, NSGA-III  TC-SEA 使用目标空间里的虚拟点来构造参照点集合。但是,两个算法的选择机制略有不同。

为了降低NSGA-  在超多目标优化问题上的性能退化, NSGA-III 将原来的基于拥塞距离 (crowding distance) 的多样性保持机制,替换成了基于参照点集合的小生境保持策略[52]。在确定了超平面上的参照点之后,种群个体进行归一化。然后,根据到参照点和圆点连线的投影距离每个个体指定给距离最近的那个参照点。进行选择时,优先从关联的种群个体最多的参照点的关联解中进行选择并删除。这种机制使得各个搜索方向的搜索能力得到了平衡。实验结果显示, NSGA-III在最多10目标的测试问题上得到优异的性能1521.此外,作者还研究了  算法的自适应版本,得到了更好的种群分布。

Taxi-Cab Surface Evolutionary Algorithm(TC-SEA)|129]与 NSGA-III 相比主要有以下不同:首先, TC-SEA 使用了在线构造的参照点集合而NSGA-Ⅲ 使用的是预定义好的参照点集合。其次, TC-SEA 关联解和参照点是距离是出租车距离,而NSGA-Ⅲ 使用的是垂线段长度。最后,TC-SEA 利用了出租车距离的排名和数值作为两个排序标准,而NSGA-II 主要根据小生境的拥挤程度来进行选择。 TC-SEA 在DTLZ 测试集合上进行了实验验证

二、可以使用的参考点的方式有哪些: 

参考点在多目标优化的进化算法中,特别是在NSGA-III和RVEA等算法中,起着关键的作用。它们被用作引导算法搜索的方向或帮助算法决策解的分配。

选择参考点的目的是为了捕获Pareto前沿的多样性,即覆盖整个Pareto优化解的范围。下面是参考点选择的常见方法:

  1. 均匀分布的参考点:这是最常用的方法,特别是在NSGA-III中。对于两个目标的情况,参考点可能是在单位超球上均匀分布的点。对于多于两个目标的情况,参考点的选择稍微复杂一些,但目的是相同的:确保参考点覆盖整个目标空间。

  2. 基于历史信息的参考点:在某些算法中,可以使用先前迭代中得到的信息来调整或选择新的参考点。【使用历史中性质优质的分子作为参考点

  3. 基于决策者偏好的参考点:如果决策者对优化结果有明确的偏好,可以使用这些信息来定义参考点。例如,决策者可能更关心某个特定目标或希望某个目标在一个特定范围内。【将一些性质好的分子(例如活性)提前抽取出来,然后作为参考点指导模型

  4. 动态调整参考点:在优化过程中,根据当前解的分布或性质,动态地调整参考点位置。例如,如果某个区域的解过于拥挤,可以调整参考点以引导搜索到其他区域。

当选择或生成参考点时,重要的是确保参考点能够覆盖整个Pareto前沿或决策者关心的区域,并且在不同的目标之间保持均匀分布,以确保解的多样性。

这篇关于多目标优化怎么偏向某个目标?通过参考点的方式可以解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/248627

相关文章

SpringBoot3实现Gzip压缩优化的技术指南

《SpringBoot3实现Gzip压缩优化的技术指南》随着Web应用的用户量和数据量增加,网络带宽和页面加载速度逐渐成为瓶颈,为了减少数据传输量,提高用户体验,我们可以使用Gzip压缩HTTP响应,... 目录1、简述2、配置2.1 添加依赖2.2 配置 Gzip 压缩3、服务端应用4、前端应用4.1 N

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

Spring Boot + MyBatis Plus 高效开发实战从入门到进阶优化(推荐)

《SpringBoot+MyBatisPlus高效开发实战从入门到进阶优化(推荐)》本文将详细介绍SpringBoot+MyBatisPlus的完整开发流程,并深入剖析分页查询、批量操作、动... 目录Spring Boot + MyBATis Plus 高效开发实战:从入门到进阶优化1. MyBatis

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

使用Sentinel自定义返回和实现区分来源方式

《使用Sentinel自定义返回和实现区分来源方式》:本文主要介绍使用Sentinel自定义返回和实现区分来源方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Sentinel自定义返回和实现区分来源1. 自定义错误返回2. 实现区分来源总结Sentinel自定

Springboot处理跨域的实现方式(附Demo)

《Springboot处理跨域的实现方式(附Demo)》:本文主要介绍Springboot处理跨域的实现方式(附Demo),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不... 目录Springboot处理跨域的方式1. 基本知识2. @CrossOrigin3. 全局跨域设置4.

springboot security使用jwt认证方式

《springbootsecurity使用jwt认证方式》:本文主要介绍springbootsecurity使用jwt认证方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录前言代码示例依赖定义mapper定义用户信息的实体beansecurity相关的类提供登录接口测试提供一

Python如何使用__slots__实现节省内存和性能优化

《Python如何使用__slots__实现节省内存和性能优化》你有想过,一个小小的__slots__能让你的Python类内存消耗直接减半吗,没错,今天咱们要聊的就是这个让人眼前一亮的技巧,感兴趣的... 目录背景:内存吃得满满的类__slots__:你的内存管理小助手举个大概的例子:看看效果如何?1.

springboot security之前后端分离配置方式

《springbootsecurity之前后端分离配置方式》:本文主要介绍springbootsecurity之前后端分离配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的... 目录前言自定义配置认证失败自定义处理登录相关接口匿名访问前置文章总结前言spring boot secu

一文详解SpringBoot响应压缩功能的配置与优化

《一文详解SpringBoot响应压缩功能的配置与优化》SpringBoot的响应压缩功能基于智能协商机制,需同时满足很多条件,本文主要为大家详细介绍了SpringBoot响应压缩功能的配置与优化,需... 目录一、核心工作机制1.1 自动协商触发条件1.2 压缩处理流程二、配置方案详解2.1 基础YAML