1 简介

MVO算法源于多元宇宙理论,该理论认为:多元宇宙源于宇宙大爆炸,每一个宇宙都存在一个膨胀率使其膨胀,宇宙间存在黑洞和白洞,黑洞引力很大能够通过虫洞链接到另一个时空,黑洞会吸入所有物质甚至光,白洞就是由黑洞吸收过多物质后而开始吐出的物质。MVO算法依据多元宇宙理论的3个主要概念:白洞、黑洞和虫洞来建立数学模型,定义候选解为宇宙,候选解的适应度为宇宙的膨胀率。迭代过程中,每一个候选解为黑洞,适应度好的宇宙依轮盘赌原理成为白洞,黑洞和白洞交换物质(维度更换),部分黑洞可以通过虫洞链接穿越到最优宇宙附近(群体最优附近搜索)。本文绘出多元宇宙优化内部循环结构的逻辑流程,如图1所示。

2 部分代码

%______________________________________________________________________________________
% Multi-Objective Multi-Verse Optimization (MOMVO) algorithm source codes version 1.0
%%______________________________________________________________________________________clear all;
close all;
clc;
format long g% Initial parameters of the MODA algorithm
max_iter=100;
N=100;
ArchiveMaxSize=100;
obj_no=2;
Archive_F1=load('weldedbeam.txt');
%-------------------------- MOMVO -----------------------------------------
for i=1:5   % Numbver of independent runs[Best_universe_score,Best_universe_pos,Archive_F]=MOMVO(max_iter,N,ArchiveMaxSize);%% using the matlab codes for calculating metric values
hv = hypeIndicatorExact8(Archive_F, ones(1, obj_no), obj_no);
gd = GD_matlab(Archive_F, Archive_F1);
epsilonNew = epsilon_matlab(Archive_F, Archive_F1);
spread = Spread_matlab(Archive_F, Archive_F1);
generalizedspread = GeneralizedSpread_matlab(Archive_F, Archive_F1);
igd = IGD_matlab(Archive_F, Archive_F1);
disp(['hv = ' num2str(hv)  ' GD = ' num2str(gd)  ' epsilon = ' num2str(epsilonNew)  ' Spread = ' num2str(spread)  ' GSpread = ' num2str(generalizedspread)  ' IGD = ' num2str(igd) ]);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
GD=Generational_distance(Archive_F,Archive_F1);
S=metric_of_spacing(Archive_F);
DELTA= Diversity_metric_delta(Archive_F,Archive_F1);
MS=metric_of_maximum_spread(Archive_F,Archive_F1);
disp(['GD = ' num2str(GD)  ' S = ' num2str(S)  ' DELTA = ' num2str(DELTA)  '   MS = ' num2str(MS)   ]);
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
plot(Archive_F1(:,1),Archive_F1(:,2),'Color','b','LineWidth',4);
hold on
plot(Archive_F(:,1),Archive_F(:,2),'ro','LineWidth',2,...'MarkerEdgeColor','r',...'MarkerFaceColor','r',...'MarkerSize',6);
legend('True PF','Obtained PF');
title('MOMVO FOR Welded beam design PROBLEM');
xlabel('obj_1');
ylabel('obj_2');hold offfprintf('%d %20.15f %20.15f %20.15f %20.15f\n',i,GD,S,DELTA,MS);fprintf('%d %20.15f %20.15f %20.15f %20.15f %20.15f %20.15f\n',i,hv,gd,epsilonNew,spread,generalizedspread,igd);GGD(i)=GD;SS(i)=S;DELTAA(i)=DELTA;MSS(i)=MS;hvd(i)=hv;
gdd(i)=gd;
epsilonNewd(i)=epsilonNew;
spreadd(i)=spread;
generalizedspreadd(i)=generalizedspread;
igdd(i)=igd;endMin_Generational_distance=min(GGD)
Average_Generational_distance=mean(GGD)
Max_Generational_distance=max(GGD)
SD_Generational_distance=std(GGD)Min_metric_of_spacing=min(SS)
Average_metric_of_spacing=mean(SS)
Max_metric_of_spacing=max(SS)
SD_metric_of_spacing=std(SS)Min_Diversity_metric_delta=min(DELTAA)
Average_Diversity_metric_delta=mean(DELTAA)
Max_Diversity_metric_delta=max(DELTAA)
SD_Diversity_metric_delta=std(DELTAA)Min_metric_of_maximum_spread=min(MSS)
Average_metric_of_maximum_spread=mean(MSS)
Max_metric_of_maximum_spread=max(MSS)
SD_metric_of_maximum_spread=std(MSS)Min_hypeIndicatorExact8=min(hvd)
Average_hypeIndicatorExact8=mean(hvd)
Max_hypeIndicatorExact8=max(hvd)
SD_hypeIndicatorExact8=std(hvd)Min_Generational_distance1=min(gdd)
Average_Generational_distance1=mean(gdd)
Max_Generational_distance1=max(gdd)
SD_Generational_distance1=std(gdd)Min_epsilon=min(epsilonNewd)
Average_epsilon=mean(epsilonNewd)
Max_epsilon=max(epsilonNewd)
SD_epsilon=std(epsilonNewd)Min_spread=min(spreadd)
Average_spread=mean(spreadd)
Max_spread=max(spreadd)
SD_spread=std(spreadd)Min_generalizedspread=min(generalizedspreadd)
Average_generalizedspread=mean(generalizedspreadd)
Max_generalizedspread=max(generalizedspreadd)
SD_generalizedspread=std(generalizedspreadd)Min_IGD=min(igdd)
Average_IGD=mean(igdd)
Max_IGD=max(igdd)
SD_IGD=std(igdd)Best_universe_score
Best_universe_pos

3 仿真结果

4 参考文献

[1]刘京昕. 多元宇宙优化算法的改进及应用. Diss. 广西民族大学, 2019.

部分理论引用网络文献,若有侵权联系博主删除。

5 MATLAB代码与数据下载地址

见博客主页

【优化求解】基于多元宇宙MVO算法求解多目标matlab代码相关推荐

  1. 【优化求解】基于多元宇宙MVO算法求解最优目标matlab源码

    1 简介 2 部分代码 ```matlab %_____________________________________________________________________________ ...

  2. 【图像压缩重建】基于霍夫曼算法实现图像压缩重建matlab代码

    1 简介 哈夫曼编码是一种数据编码方式,以哈夫曼树--即最优二叉树.用带杈路径长度最小的二叉树,对数据进行重编码,经常应用于数据压缩.在计算机信息处理中,"哈夫曼编码"是一种一致性 ...

  3. 【图像融合】基于改进模糊聚类算法实现侧扫声呐图像分割matlab代码

    1 简介 当前图像分割技术越来越受到人们的重视.很多研究者针对图像分割技术设计出了不计其数的方法.图像分割技术已经涉及到许多范畴,并且逐渐成为了许多领域的基础技术之一.图像分割技术在当今时代具有极其重 ...

  4. 【优化求解】基于花朵授粉FPA算法求解最优目标matlab代码

    1 简介 花朵授粉算法( Flower Pollination Algorithm,FPA)是由英国剑桥大学学者Yang 于2012年提出的,其基本思想来源于对自然界花朵自花授粉.异花授粉的模拟,是一 ...

  5. DL之Yolov3:基于深度学习Yolov3算法实现视频目标检测之对《我要打篮球》视频段进行实时目标检测

    DL之Yolov3:基于深度学习Yolov3算法实现视频目标检测之对<我要打篮球>视频段进行实时目标检测 目录 输出结果 设计思路 核心代码 相关文章 成功解决AttributeError ...

  6. DL之Yolov3:基于深度学习Yolov3算法实现视频目标检测之对《俄罗斯总统普京对沙特王储摊的“友好摊手”瞬间—东道主俄罗斯5-0完胜沙特》视频段实时检测

    DL之Yolov3:基于深度学习Yolov3算法实现视频目标检测之对<俄罗斯总统普京对沙特王储摊的"友好摊手"瞬间-东道主俄罗斯5-0完胜沙特>视频段实时检测 导读   ...

  7. 灰狼(GWO)算法(附完整Matlab代码,可直接复制)

    尊重他人劳动成果,请勿转载! 有问题可留言或私信,看到了都会回复解答! 其他算法请参考: 1.粒子群(PSO)优化算法(附完整Matlab代码,可直接复制)https://blog.csdn.net/ ...

  8. 粒子群(PSO)算法(附完整Matlab代码,可直接复制)

    在粒子群优化算法中,每个解可用一只鸟(粒子)表示,目标函数就是鸟群所需要寻找的食物源.寻找最优解的过程中,粒子包含两种行为:个体行为和群体行为. 个体行为:粒子根据自身在寻优过程中的最优解更新自己的位 ...

  9. 基于fpga的fir滤波器设计,通过matlab代码设计滤波器参数,最终通过fpga实现

    基于fpga的fir滤波器设计,通过matlab代码设计滤波器参数,最终通过fpga实现,modelsim仿真,最后在开发板上实现,两路adc采集的掺杂高频信号经过低通滤波器之后,由dac输出,由si ...

最新文章

  1. Java 学习(20)--异常 /  IO 流
  2. 使用JSP/SERVLET实现在校学生管理系统
  3. MySQL事务的可串行化
  4. c语言ox32左移一位的值,程序设计基础 (C)(32+32) 实验指导书.docx
  5. 微软2020开源回顾:止不住的挨骂,停不下的贡献
  6. Linux中brk()系统调用,sbrk(),mmap(),malloc(),calloc()的异同【转】
  7. JAVA方法中的参数用final来修饰的原因
  8. opencv之使用open3d可视化opencv加载的点云数据
  9. es 仅返回单个字段 查询_ES性能优化实战,几十亿数据查询 3 秒返回!
  10. 用三方做的豆瓣电影页面
  11. 基于C语言的小游戏合集
  12. linux PMBus总线及设备驱动分析
  13. 上海Apple面试php,面试Apple苹果APO的MQE经验
  14. 工厂模式,java描述
  15. 《数据出境安全评估办法》将正式施行,聊聊数据出境安全合规那些事
  16. 103000大写加零吗_103000怎样大写不写零
  17. 多线程并发中什么是竞争条件?
  18. 利用集群技术实现Web服务器的负载均衡 集群和负载均衡的概念
  19. 数据库安全防护几点介绍
  20. 学习80亿个偏好模型才能了解地球上每个人的偏好

热门文章

  1. zip压缩包带有密码如何解压
  2. Qt5.10编写俄罗斯方块
  3. 腾讯云被索赔一亿,否认对她拍进行技术打压
  4. 【stm32】delay详解
  5. windows开机启动项设置
  6. python无法运行图像_OpenCV Python不使用imread()打开图像
  7. python开发数据库_有没有利用python开发数据库的案例
  8. Oracle实现按季度划分,并计数
  9. HR与应聘者谈薪酬的“黄金计”
  10. win10自动添加打印机设备