多目标应用:基于多目标人工蜂鸟算法(MOAHA)的微电网多目标优化调度MATLAB

一、微网系统运行优化模型

参考文献:

1\]李兴莘,张靖,何宇,等.基于改进粒子群算法的微电网多目标优化调度\[J\].电力科学与工程, 2021, 37(3):7 ## 二、多目标人工蜂鸟算法MOAHA 多目标人工蜂鸟算法(multi-objective artificial hummingbird algorithm,MOAHA)是2022年提出的一种高效的多目标优化算法,其采用基于拥挤距离的动态消除法( dynamic elimination-based crowding distance ,DECD)维护外部存档。 ![](https://file.jishuzhan.net/article/1699288844647534594/184de6938a344641b6887a42fdc51879.png) MOAHA算法描述如下: ![](https://file.jishuzhan.net/article/1699288844647534594/0a59b42a641746e68b98923adb057d15.png) 参考文献: \[1\]Weiguo Zhao, Zhenxing Zhang, Seyedali Mirjalili, Liying Wang, Nima Khodadadi, Seyed Mohammad Mirjalili.**An effective multi-objective artificial hummingbird algorithm with dynamic elimination-based crowding distance for solving engineering design problems**,Computer Methods in Applied Mechanics and Engineering, 398,2022, ## 三、求解结果 (1)部分代码 ``` close all; clear ;  clc; global P_load; %电负荷 global WT;%风电 global PV;%光伏 %% TestProblem=1; MultiObj = GetFunInfo(TestProblem); MultiObjFnc=MultiObj.name;%问题名 % Parameters params.Np =100;        %  种群大小(可以修改) params.Nr =200 ; % (外部存档的大小) params.maxgen =100;    % 最大迭代次数(可以修改) [Xbest,Fbest] = MOAHA(params,MultiObj); % Xbest是MOAHA所求得到的POX % Fbest是MOAHA所求得到的POF %% 画结果图 figure(1) plot(Fbest(:,1),Fbest(:,2),'ro'); legend('MOAHA'); xlabel('运行成本') ylabel('环境保护成本') ``` (2)部分结果 ![](https://file.jishuzhan.net/article/1699288844647534594/866384860b9b4433b125ae3754cfc0b2.png) 运行成本最低情况下: ![](https://file.jishuzhan.net/article/1699288844647534594/f08d8970e81e4416acc38f646a508b16.png) ![](https://file.jishuzhan.net/article/1699288844647534594/4dcc92abfa13497d93060f13868b437e.png) ![](https://file.jishuzhan.net/article/1699288844647534594/8e084d76df6d45369cac8e5f0834ab0c.png) ![](https://file.jishuzhan.net/article/1699288844647534594/bef8de85b9cf4945be0aa1f644c574f4.png) ## 四、完整MATLAB代码

相关推荐
吃好睡好便好9 小时前
创建全0矩阵和全1矩阵
开发语言·学习·线性代数·算法·matlab·信息可视化·矩阵
加成BUFF12 小时前
MATLAB 基础命令合集:从入门到精通(环境、变量、矩阵、绘图全解析)
数据结构·matlab·矩阵
吃好睡好便好12 小时前
创建随机矩阵
开发语言·人工智能·线性代数·算法·matlab·矩阵
吃好睡好便好12 小时前
用直接输入的方式创建矩阵
开发语言·人工智能·学习·线性代数·算法·matlab·矩阵
吃好睡好便好21 小时前
用while循环语句求和
开发语言·学习·算法·matlab·信息可视化
吃好睡好便好1 天前
用for循环语句求和
开发语言·人工智能·学习·matlab·学习方法
构建的乐趣1 天前
Givens rotation matlab实验
matlab·linear algebra
Deep-w1 天前
【MATLAB】基于 MATLAB/Simulink 的无刷直流电机(BLDC)转速控制模糊 PID 算法
开发语言·算法·matlab
Evand J1 天前
【MATLAB代码介绍】到达时间(TOA)定位,三维空间,带EKF的轨迹滤波与误差分析
开发语言·matlab
吃好睡好便好1 天前
用if…elseif…end语句输出成绩等级
开发语言·前端·javascript·数据库·学习·matlab·信息可视化