news 2026/10/27 12:10:35

2017-基于非支配排序鲸鱼优化(NSWOA)算法的多阈值图像分割(Otsu 法 + 最大熵法 + 最小交叉熵)(中文核心、SCI 四区可选)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
2017-基于非支配排序鲸鱼优化(NSWOA)算法的多阈值图像分割(Otsu 法 + 最大熵法 + 最小交叉熵)(中文核心、SCI 四区可选)

1 论文简介

《Non-Dominated Sorting Whale Optimization Algorithm (NSWOA): A Multi-Objective Optimization Algorithm for Solving Engineering Design Problems》是由 Pradeep Jangir 和 Narottam Jangir 于 2017 年发表在《Global Journal of Researches in Engineering: F Electrical and Electronics Engineering》上的一篇论文。该论文针对现实世界中普遍存在的、目标相互冲突的多目标优化问题(例如,设计产品时需要同时最小化成本和最大化性能),提出了名为非支配排序鲸鱼优化算法(NSWOA)的核心方法。该方法通过将新颖的鲸鱼优化算法(WOA)与非支配排序、拥挤距离机制和外部档案集相结合,能够有效搜索并保存一系列最优折衷解(即帕累托最优前沿)。NSWOA 因其在收敛速度、解的分布均匀性以及应对复杂约束方面的良好表现,被广泛应用于标准测试函数、机械结构设计(如四杆桁架、减速器)以及电力系统经济排放调度等复杂工程领域,为求解多目标优化问题提供了一个高效的新工具,在进化计算与多目标优化领域具有一定的影响力。

2 算法原理

NSWOA 算法是鲸鱼优化算法(WOA)的多目标扩展版本,其核心在于引入非支配排序和拥挤距离机制来引导种群朝真实的帕累托前沿进化,并利用外部档案集保存历史最优非支配解。

步骤 1:初始化与适应度评估

首先,初始化鲸鱼种群,随机生成一组解作为鲸鱼的位置。计算每个位置对应的所有目标函数值,即适应度。

步骤 2:位置更新策略(源自 WOA)

鲸鱼的位置更新模拟了其包围猎物和气泡网捕食的行为,由以下数学公式描述:

  • 包围猎物:鲸鱼识别当前最优解(猎物)并朝其移动。

    • 距离向量计算:D ⃗ = ∣ C ⃗ ⋅ X ⃗ ∗ ( t ) − X ⃗ ( t ) ∣ \vec{D} = |\vec{C} \cdot \vec{X}^*(t) - \vec{X}(t)|D=∣C⋅X∗(t)−X(t)∣
    • 位置更新:
      X ⃗ ( t + 1 ) = X ⃗ ∗ ( t ) − A ⃗ ⋅ D ⃗ \vec{X}(t+1) = \vec{X}^*(t) - \vec{A} \cdot \vec{D}X(t+1)=X∗(t)−A⋅D
      其中,X ⃗ ∗ ( t ) \vec{X}^*(t)X∗(t)是当前迭代中的最优位置向量,X ⃗ ( t ) \vec{X}(t)X(t)是当前位置向量。系数向量A ⃗ \vec{A}A和C ⃗ \vec{C}C的计算方式为:
      A ⃗ = 2 a ⃗ ⋅ r ⃗ 1 − a ⃗ , C ⃗ = 2 ⋅ r ⃗ 2 \vec{A} = 2\vec{a} \cdot \vec{r}_1 - \vec{a}, \quad \vec{C} = 2 \cdot \vec{r}_2A=2a⋅r1​−a,C=2⋅r2​
      这里a ⃗ \vec{a}a在迭代中从 2 线性减小到 0,r ⃗ 1 \vec{r}_1r1​和r ⃗ 2 \vec{r}_2r2​是[ 0 , 1 ] [0,1][0,1]内的随机向量。
  • 气泡网攻击(开发阶段):鲸鱼以螺旋路径逼近猎物。

    • 螺旋更新位置:
      X ⃗ ( t + 1 ) = D ⃗ ′ ⋅ e b l ⋅ cos ⁡ ( 2 π l ) + X ⃗ ∗ ( t ) \vec{X}(t+1) = \vec{D}' \cdot e^{bl} \cdot \cos(2\pi l) + \vec{X}^*(t)X(t+1)=D′⋅ebl⋅cos(2πl)+X∗(t)
      其中,D ⃗ ′ = ∣ X ⃗ ∗ ( t ) − X ⃗ ( t ) ∣ \vec{D}' = |\vec{X}^*(t) - \vec{X}(t)|D′=∣X∗(t)−X(t)∣表示鲸鱼与当前最优解的距离,b bb是定义螺旋形状的常数,l ll是[ − 1 , 1 ] [-1,1][−1,1]内的随机数。

算法以 50% 的概率在收缩包围机制(当p < 0.5 p < 0.5p<0.5且∣ A ⃗ ∣ < 1 |\vec{A}| < 1∣A∣<1时,使用包围猎物公式)和螺旋更新机制(当p ≥ 0.5 p \ge 0.5p≥0.5时)之间选择。

  • 搜索猎物(探索阶段):当∣ A ⃗ ∣ > 1 |\vec{A}| > 1∣A∣>1时,鲸鱼不围绕当前最优解,而是随机选择一条鲸鱼作为参考进行全局探索。
    • 距离向量:D ⃗ = ∣ C ⃗ ⋅ X ⃗ rand − X ⃗ ∣ \vec{D} = |\vec{C} \cdot \vec{X}_{\text{rand}} - \vec{X}|D=∣C⋅Xrand​−X∣
    • 位置更新:
      X ⃗ ( t + 1 ) = X ⃗ rand − A ⃗ ⋅ D ⃗ \vec{X}(t+1) = \vec{X}_{\text{rand}} - \vec{A} \cdot \vec{D}X(t+1)=Xrand​−A⋅D
      其中,X ⃗ rand \vec{X}_{\text{rand}}Xrand​是当前种群中的一个随机位置向量。

步骤 3:非支配排序与档案集维护

  • 对当前种群和外部档案集中的所有解进行非支配排序。不被任何其他解支配的解被分配 Rank 1(最高等级),仅被一个解支配的解分配 Rank 2,依此类推。
  • 使用拥挤距离计算同一非支配等级中解的密度。拥挤距离越大,说明该解周围越“空旷”,多样性越好。
  • 将新的非支配解加入档案集。如果档案集已满,则优先移除拥挤距离最小的解(即最拥挤区域的解),以保持解的分布性。

步骤 4:领导者选择

在 WOA 的位置更新公式中,需要选择一个领导者(即X ⃗ ∗ \vec{X}^*X∗)。在 NSWOA 中,领导者从档案集中选择。选择概率与解的等级成反比,公式为:
P i = c / Rank i P_i = c / \text{Rank}_iPi​=c/Ranki​
其中,c cc是一个大于 1 的常数,Rank i \text{Rank}_iRanki​是解i ii的非支配等级。这确保了更高等级(更优)的解有更大的概率被选为领导者,引导种群进化。

步骤 5:迭代与终止

重复步骤 2 至步骤 4,直到满足最大迭代次数。最终,外部档案集中保存的解集即为算法找到的近似帕累托最优前沿。

3 实验结果




4 参考文献

[1] Jangir P, Jangir N. Non-dominated sorting whale optimization algorithm (NSWOA): a multi-objective optimization algorithm for solving engineering design problems[J]. Glob. J. Res. Eng, 2017, 17: 15-42.

5 改进方向

  • 改进非支配排序鲸鱼优化算法,然后在阈值分割领域进行应用。
  • 改进阈值分割函数获取图像不同维度的特征,然后应用非支配排序鲸鱼优化算法获取阈值。
  • 不同领域图像数据集处理。面向不同领域图像的特征,设计不同的阈值分割函数,然后应用非支配排序鲸鱼优化算法获取阈值。
  • 彩色图像处理。
  • 将优化算法推广至多目标领域。

6 MATLAB 代码

代码中包含详尽的注释!

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/23 19:18:21

Java计算机毕设之基于Java+springboot的科研室实验报告管理系统的设计与实现基于SpringBoot和Vue的实验报告管理系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/10/23 19:18:23

计算机Java毕设实战-基于SpringBoot和Vue的实验报告管理系统的设计与实现学生实验报告管理系统项目标题、实验类型、提交时间【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/10/23 3:44:06

Minio的Docker部署

拉取Minio镜像&#xff1a;docker pull minio/minio要运行 MinIO 容器可以使用以下命令&#xff1a;docker run --name geofly-minio --restart always -d -p 9000:9000 -p 9001:9001 -v /etc/localtime:/etc/localtime -v /mnt/data/minio:/data -e "MINIO_ROOT_USERadmi…

作者头像 李华
网站建设 2026/10/23 19:19:13

FPGA基础知识(二十一):xilinx FPGA中常用的原语

《FPGA基础知识》系列导航 本专栏专为FPGA新手打造的Xilinx平台入门指南。旨在手把手带你走通从代码、仿真、约束到生成比特流并烧录的全过程。 本篇是该系列的第二十一篇内容 上一篇&#xff1a;FPGA基础知识&#xff08;二十&#xff09;&#xff1a;Xilinx Block Memory I…

作者头像 李华
网站建设 2026/10/23 22:34:07

语雀文档批量导出神器:轻松实现完整内容迁移

语雀文档批量导出神器&#xff1a;轻松实现完整内容迁移 【免费下载链接】yuque-exporter 项目地址: https://gitcode.com/gh_mirrors/yuqu/yuque-exporter 还在为语雀文档迁移而烦恼吗&#xff1f;这款强大的语雀文档导出工具能够帮你快速完成批量迁移&#xff0c;将珍…

作者头像 李华
网站建设 2026/10/27 8:48:34

基于SpringBoot高校迎新管理系统(毕设源码+文档)

课题说明本课题聚焦高校迎新工作流程繁琐、信息传递不及时及数据统计低效等痛点&#xff0c;设计并实现基于SpringBoot的高校迎新管理系统。系统依托SpringBoot框架的高效稳定与易拓展优势&#xff0c;整合新生信息管理、报到流程管控、资源调度协调等核心场景&#xff0c;涵盖…

作者头像 李华