基于拥挤距离与变异支配的多目标PSO算法

2023-05-16

这一篇是Xue Bing在一区cybernetics发的论文,里面提出了两个多目标PSO特征选择算法,一个是NSPSO另一个是CMDPSO。其中NSPSO是参考了NSGA2的框架和思想。下面具体说说CMDPSO。

CMDPSO全称是Crowding,Mutation,Dominance PSO算法。

NSPSO算法概述与实现
http://www.omegaxyz.com/2018/09/01/nspso/
http://www.omegaxyz.com/2018/09/22/nspso_matlab/

PSO算法
http://www.omegaxyz.com/2018/01/17/matlab_pso/

个体拥挤距离
在同一层Fk中需要进行选择性排序,按照个体拥挤距离(crowding distance)大小排序。个体拥挤距离是Fk上与i相邻的个体i+1和i-1之间的距离,其计算步骤为:
①对同层的个体距离初始化,令L[i]d=0(表示任意个体i的拥挤距离)。
②对同层的个体按照第m个目标函数值升序排列。
③对于处在排序边缘上的个体要给予其选择优势。
④对于排序中间的个体,求拥挤距离
⑤对于不同的目标函数,重复②到④的步骤,得到个体i的拥挤距离L[i]d,有限选择拥挤距离较大的个体,可以是计算结果在目标空间均匀地分布,维持群体的多样性。

伪代码

在这里插入图片描述
注意archive中存的是每一代的精英粒子集合

具体流程
①划分数据集
②初始化精英集合和存档Archive
③计算拥挤距离
④二进制锦标赛选择一个一个精英个体来作为gbest指导更新
⑤更新粒子
⑥使用变异算子
⑦粒子真实评价
⑧将LeaderSet加入存档
⑨迭代完成后计算存档中的两个目标值

更多内容请访问:http://www.omegaxyz.com/2018/10/15/cmdpso/

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

基于拥挤距离与变异支配的多目标PSO算法 的相关文章

  • wxpython控件自适应窗口大小

    问题 xff1a wxpython作的窗口 xff0c 点击窗口最大化 xff0c 就会出问题 xff0c 1 窗口控件并不一起最大化 2 最大化后有些控件找不着了 xff0c 再恢复窗口 xff0c 那些消失的控件一样找不到 wxPyth
  • Python统计磁盘代码文件行数

    听说简历要求10万行代码经验 于是写了个Python脚本用来计算电脑磁盘内代码的行数 主要功能 xff1a 统计指定代码的总行数 统计每个代码单独的行数 自定义设置存储路径 设计思路 xff1a 将文件转化为txt文档 xff0c 对txt
  • 第一个Android程序

    Android Studio 是一个Android集成开发工具 xff0c 基于IntelliJ IDEA 类似 Eclipse ADT xff0c Android Studio 提供了集成的 Android 开发工具用于开发和调试 在ID
  • 面向过程与面向对象代码实例对比

    面向过程式代码 xff08 使用数据结构的代码 xff09 便于在不改动既有数据结构的前提下添加新函数 面向对象代码便于在不改动既有函数前提下添加新类 过程式代码难以添加数据结构 xff0c 因为必须修改所有函数 面向对象代码难以添加新函数
  • 机器学习

    文章目录 机器学习基本理论 基本术语与方法特征选择概述多目标优化问题 分类算法 经典算法 分类算法NSGA2算法粒子群优化算法 xff08 PSO xff09 聚类算法蚁群算法 xff08 ACO xff09 其它算法 前沿算法 NSGA2
  • 英文字母信息熵与冗余度计算Python实现

    26个英文字母在平均出现时的信息熵是4 7BIT 而去掉冗余度后的英文字母的信息熵是4 03BIT 公式 H 信息熵 61 Pi log2 Pi Pi 为每个字母在信息中出现的概率 计算公式并不复杂 取以2为底的对数的道理也很简单 因为如果
  • C++静态成员详解

    静态成员是解决同一个类的不同对象之间数据和函数共享问题的 实例属性 xff1a 一个类的所有对象具有相同的属性 xff0c 属性值可以不同 类属性 xff1a 描述类的所有对象共同特征 xff0c 对于任何对象其属性值相同 静态数据成员 用
  • 混淆矩阵简介与Python实现

    什么是混淆矩阵 混淆矩阵是机器学习中总结分类模型预测结果的情形分析表 xff0c 以矩阵形式将数据集中的记录按照真实的类别与分类模型作出的分类判断两个标准进行汇总 这个名字来源于它可以非常容易的表明多个类别是否有混淆 xff08 也就是一个
  • JAVA CPU占用过高问题排查

    1 查找进程 top查看进程占用资源情况 明显看出java的两个进程22714 xff0c 12406占用过高cpu 2 查找线程 使用top H p lt pid gt 查看线程占用情况 3 查找java的堆栈信息 将线程id转换成十六进
  • 【译】Python3.8官方Logging文档(完整版)

    注 xff1a 文章很长 xff0c 约一万字左右 xff0c 可以先收藏慢慢看哟 01 基础部分 日志是用来的记录程序运行事件的工具 当程序员可以通过添加日志打印的代码来记录程序运行过程中发生的某些事件时 这些事件包含了诸如变量数据在内的
  • C语言银行家算法

    算法简介 银行家算法 xff08 Banker s Algorithm xff09 是一个避免死锁 xff08 Deadlock xff09 的著名算法 xff0c 是由艾兹格 迪杰斯特拉在1965年为T H E系统设计的一种避免死锁产生的
  • 操作系统动态优先级调度算法C语言实现

    动态优先级算法 动态优先数是指在进程创建时先确定一个初始优先数 xff0c 以后在进程运行中随着进程特性的改变不断修改优先数 xff0c 这样 xff0c 由于开始优先数很低而得不到CPU的进程 xff0c 就能因为等待时间的增长而优先数变
  • 软件工程-软件小组的组织形式

    为什么要形成软件小组 大多数软件产品由一个软件专业人员不可能在有限时间内单独完成 因而 xff0c 产品必须分配给一组专业人员 xff0c 形成一个小组 在具体说软件小组的组织形式之前先介绍一下布鲁克斯法则 布鲁克斯法则 布鲁克斯是上世纪6
  • 差分分组的合作协同进化的大规模优化算法详解

    合作协同进化已经引入协同进化算法 xff0c 目的是通过分而治之的范式解决日益复杂的优化问题 理论上 xff0c 协同改 变子成分的想法是十分适合解决大规模优化问题的 然而在实践中 xff0c 没有关于问题的先验知识 xff0c 问题应如何
  • 软件工程内聚详解

    简介 内聚标志一个模块内各个元素彼此结合的紧密程度 xff0c 它是信息隐蔽和局部化概念的自然扩展 内聚是从功能角度来度量模块内的联系 xff0c 一个好的内聚模块应当恰好做一件事 它描述的是模块内的功能联系 内聚和耦合是密切相关的 xff
  • Python使用matplotlib画动态图

    机器学习需要使用python实现相应的算法 xff0c 因此学习了Matplotlib中的画图 更多内容访问omegaxyz com 当然为了能显示机器学习中每次迭代的效果与收敛速度 xff0c 需要画出动态图形 下面给出两个例子 xff0
  • JavaScript模拟终端输出

    利用JavaScript 43 CSS能够模拟出终端输入画面 xff08 类似于Linux终端画面 xff09 当然更好的代码也可以模拟出黑客帝国那样的输出画面 CSS设置 xff1a height auto表示随着输出字数的增加 xff0
  • 机器学习分类与回归

    分类 xff0c 即classification xff1a a process in which you put something into the group or class it belongs to xff0c 这是指将某物放入
  • 边缘计算与嵌入式系统

    文章目录 边缘计算简介 边缘计算的起源 嵌入式系统与边缘计算 3 1 嵌入式系统概述 3 2 嵌入式系统的发展历史 3 3 嵌入式系统应用到边缘计算 3 4 嵌入式硬件的要求 3 5 边缘计算环境下嵌入式系统与人工智能 观点与看法 4 1
  • QQ聊天记录多角度分析Python实现

    简介 有时候我们想看看自己跟另一个人的时长 频率 时间等或者是聊天过程中谁更在乎谁多一点 xff0c 谁是话痨 xff0c 聊天性格怎么样 xff0c 这时就需要一个聊天记录分析的程序 下面的Python代码能够统计聊天记录中的时间 消息次

随机推荐

  • VUE axios 加载中提示封装

    import axios from 39 axios 39 引入axios以及element ui中的loading和message组件 import MessageBox Indicator from 39 mint ui 39 超时时间
  • 百度文库下载器Python实现

    简介 以前可以用学校的企业账户下载文档 xff0c 后来百度文库改版 xff0c 需要买下载券或者会员 因此需要一个百度文库下载器 之前有冰点文库下载器但是后来不好使了 下面给出利用Python写的百度文库下载器 此下载器可以下载doc类型
  • 特征离散化概述

    定义 连续特征离散化是采取各种方法将连续的区间划分为小的区间 xff0c 并将这连续的小区间与离散值关联起来 连续特征离散化的本质是 xff1a 决定选择多少个分割点和确定分割点的位置 背景 连续数据经常采用离散化处理之后再放入模型 离散化
  • 汇编语言辗转相除法求最大公约数

    辗转相除法 xff0c 又名欧几里德算法 xff08 Euclidean algorithm xff09 xff0c 是求最大公约数的一种方法 它的具体做法是 xff1a 用较小数除较大数 xff0c 再用出现的余数 xff08 第一余数
  • JavaScript入门

    什么是JavaScript JavaScript xff0c 也称ECMAScript xff0c 是一种基于对象和事件驱动并具有相对安全性并广泛用于客户端网页开发的脚本语言 xff0c 同时也是一种广泛用于客户端Web开发的脚本语言 Ja
  • 基于互信息的特征选择算法MATLAB实现

    在概率论和信息论中 xff0c 两个随机变量的互信息 xff08 Mutual Information xff0c 简称MI xff09 或转移信息 xff08 transinformation xff09 是变量间相互依赖性的量度 不同于
  • 海明码汇编语言实现

    海明码简介 海明码其性能是检测一位错 xff0c 是在奇偶校验码的思想上发展起来的 xff0c 它在K位数据位中加入r个校验位 xff0c 形成一个K 43 r位的新码字 xff0c 并且将数据的每个二进制位分配到几个不同的奇偶校验组中 这
  • Linux通过Shell进行数学运算

    在Bash shell环境中 xff0c 可以利用let 和 来执行基本的算术操作 而高级的算术操作可以使用expr和bc这两个工具 let let操作 xff1a let命令可以直接执行基本的算术操作 xff0c 当使用let时 xff0
  • HTML常用标签

    简介 文本标记语言 xff0c 即HTML xff08 Hypertext Markup Language xff09 xff0c 是用于描述网页文档的一种标记语言 HTML之所以称为超文本标记语言 xff0c 是因为文本中包含了所谓 超级
  • HTML5与HTML4区别

    什么是html5呢 xff1f html5最先由WHATWG Web 超文本应用技术工作组 命名的一种超文本标记语言 xff0c 随后和W3C的xhtml2 0 标准 相结合 xff0c 产生现在最新一代的超文本标记语言 可以简单点理解成
  • 列向量互信息计算通用MATLAB代码

    互信息的定义 正式地 xff0c 两个离散随机变量 X 和 Y 的互信息可以定义为 xff1a 其中 p x y 是 X 和 Y 的联合概率分布函数 xff0c 而p x 和p y 分别是 X 和 Y 的边缘概率分布函数 其中 p x y
  • 面向初学者的 Python IDE:Thonny,你值得一试

    Thonny xff0c 这个号称为初学者打造的 IDE 体验怎么样 xff1f 简介 Python 的初学者面对的第一个勉强称得上是 IDE 的肯定是自带的 IDLE 了 我还专门写了一篇文章分析过 xff0c 但是这个工具实在有点古老
  • Python3 OpenCV

    OpenCV是一个基于BSD许可 xff08 开源 xff09 发行的跨平台计算机视觉库 xff0c 可以运行在Linux Windows Android和Mac OS操作系统上 它轻量级而且高效 由一系列 C 函数和少量 C 43 43
  • 基于非支配排序的多目标PSO算法

    这一篇是Xue Bing在一区cybernetics发的论文 xff0c 里面提出了两个多目标PSO特征选择算法 xff0c 一个是NSPSO另一个是CMDPSO 其中NSPSO是参考了NSGA2的框架和思想 下面具体说说NSPSO 非支配
  • kmeans聚类选择最优K值python实现

    Kmeans算法中K值的确定是很重要的 下面利用python中sklearn模块进行数据聚类的K值选择 数据集自制数据集 xff0c 格式如下 xff1a 手肘法 手肘法的核心指标是SSE sum of the squared errors
  • 高维(多变量)优化问题的技术与瓶颈

    现实世界中的优化问题往往具有较高的复杂度和维数 xff0c 称为LSGO问题 xff0c 即Large Scale Global Optimization 此问题在各个领域的研究工作中都引起了极大的兴趣 许多科学和工程应用程序被表述为LSG
  • 基于变长PSO的高维特征选择算法(VLPSO)概述

    原文 xff1a http www omegaxyz com 2018 09 16 vlpso 简介 原文 xff1a Variable Length particle swarm optimisation for feature sele
  • JavaWeb-MVC模式概述

    MVC设计模式 MVC模式 xff08 Model View Controller xff09 是软件工程中的一种软件架构模式 xff0c 把软件系统分为三个基本部分 xff1a 模型 xff08 Model xff09 视图 xff08
  • IntelliJ IDEA创建Java-Web项目

    eclipse和idea都能够创建Java web项目 下面介绍使用idea创建Java web项目的步骤 需要准备的东西 intellij idea xff08 包括jdk xff09 Tomcat7 0 43 可选 xff08 如果需要
  • 基于拥挤距离与变异支配的多目标PSO算法

    这一篇是Xue Bing在一区cybernetics发的论文 xff0c 里面提出了两个多目标PSO特征选择算法 xff0c 一个是NSPSO另一个是CMDPSO 其中NSPSO是参考了NSGA2的框架和思想 下面具体说说CMDPSO CM