PlatEMO v2.9的简单介绍

本文详细介绍PlatEMO v2.9版本的使用,涉及MOEA算法选择、参数配置、可视化界面操作,以及命令行指令,适合理解和实践多目标优化问题求解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下载:在github中,搜索PlatEMO,找到 v2.9版本

基本使用简介

PlatEMO中有七个文件夹和一个main.m文件,如图所示
在这里插入图片描述

  1. main.m:PlatEMO的唯一接口,调用这个函数来运行平台(可以在控制台上直接敲上main,回车即

  2. Algorithms:用于存储所有MOEAs的源代码。

  3. GUI:用于存储代码以建立PlatEMO的GUI。

  4. Metrics:用于存储所有性能指标的源代码。

  5. Operators:用于存储所有操作符的源代码。

  6. Problems:用于存储所有MOPs的源代码。

  7. Public:用于存储公共类和实用程序函数。

可视化界面操作

运行main.m文件后会出现一个可视化界面,如图所示(下面会有两个界面,一个是测试模块,另一个是实验模块)

  • 测试模块
    在这里插入图片描述

    • A区域:选择需要执行的MOEA和MOP。
    • B区域:设置选择的MOEA和MOP参数。每个参数的值应该是一个标量。注意,这里将常用参数N、M、D和evaluation作为MOP的参数。如果将参数设置为空,则该参数将等于其默认值。
    • C区域:根据当前的配置来执行MOEA。
    • D区域:显示光标正在移动的区域B中的参数的介绍。
    • E区域:在优化过程中显示当前的种群。
    • F区域:放大、缩小、平移或旋转区域E中的轴。
    • G区域:在一个新的标准MATLAB图中打开E区域中的轴,这样就可以在轴上执行更多的操作,例如保存轴。
    • H区域:选择区域E中要显示在轴上的数据,包括 种群的帕累托前,种群的帕累托集合,真正的帕累托 前面的MOP,以及任何性能指标的收敛轮廓。
    • I区域:控制优化过程,即启动、暂停、停止、后退、向前。
    • J区域:显示其中一个历史结果。
    • K区域:显示结果的最终总体的性能指标值。
    • L区域:显示执行过程的详细信息。
  • 实验模块
    在这里插入图片描述

    • A区域:选择多个要执行的MOEA和MOP。
    • B区域:设置所选MOEAs和MOPs的参数。请注意,MOP中每个参数的值可以是一个向量,因此MOEAs可以在具有不同设置的相同MOP上执行。
    • C区域:设置在每个文件中保存的种群数。例如,如果种群数量为5,评估次数为20000,则将保存当评估次数为4000、8000、12000、16000和20000时获得的种群。
    • D区域:设置每个MOP上的每个MOEA的运行次数。
    • E区域:设置要保存实验设置的文件路径。用户还可以打开一个现有的配置文件来加载实验设置。所有的结果都将被保存到该文件路径的同一个文件夹中。
    • F区域:按顺序或并行地进行实验。
    • G区域:显示实验的统计结果。
    • H区域:指定要在表中显示的数据的类型。
    • I区域:将表保存为Excel或LaTeX格式。
    • J区域:选择要在表中显示的数据,包括最终总体的任何性能度量值。
    • K区域:控制优化过程,即启动、暂停和停止
    • L区域:右键单击一个单元格,以显示总体的帕累托前面、总体的帕累托集合或度量值的收敛轮廓。

使用命令行操作

用户可以通过调用具有输入参数的main()来运行PlatEMO的命令模式。main()的所有可接受的参数均列于表1中。请注意,用户不需要分配所有的参数,因为每个参数都有一个默认值。
在这里插入图片描述

  • -algorithm.:要执行的MOEA的函数。
  • -problem: 待解决的MOP。
  • -N:MOEA的种群规模。注意,它被固定在某些MOEAs(例如MOEA/D .m)中的某些特定值上,因此这些MOEAs的实际种群大小可能并不完全等于这个参数。
  • -M: MOP的目标数目。注意,在不可伸缩的MOPs(例如ZDT1.m)中,目标的数量是恒定的,因此这个参数对于这些MOPs是无效的。
  • -D.:MOP决策变量的个数。注意,在某些MOP中,决策变量的数量是常量或固定到某些特定整数上的(例如:ZDT5.m),因此决策变量的实际数量可能并不完全等于这个参数。
  • -evaluation: 函数评价的最大数目。
  • -run: 运行数。如果用户希望为相同的算法、问题、M和D参数保存多个结果,则在每次运行时修改此参数,使结果的文件名不同。
  • -save :保存的种群。如果将该参数设置为0(默认值),则会在终止后显示结果图;否则,在进化过程中获得的种群将保存在一个名为的文件中Data\algorithm\algorithm_problem_M_D_run.mat。例如:如果save为5并且evaluation是20000,评价数量为4000、8000、12000、16000、20000时得到的种群将被保存。
  • -outputFcn: 每次生成后调用的函数,通常不需要修改。

下面是用命令行操作的例子:

使用以下命令在种群规模分别为200和10个目标的WFG1上运行RVEA,并将显示最终结果:

1.main('-algorithm',@RVEA,'-problem',@WFG1,'-N',200,'-M',10);

使用以下命令在WFG2上运行KnEA,并设置KnEA和WFG2中设置参数:

1.main('-algorithm',{@KnEA,0.4},'-problem',{@WFG2,6});

每个MOEA和MOP的具体参数可以在相应函数头部的注释中找到。使用以下命令在DTLZ5上运行AR-MOEA10次,并保存最终的填充:

1. for r = 1 : 10 
2. main('-algorithm',@ARMOEA,'-problem',@DTLZ5,'-save',1, 
'-run',r); 
3. end

本人的表述如果有误,欢迎批评指正

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值