Matlab|基于多目标粒子群算法的微电网优化调度

embedded/2024/9/23 11:14:57/

目录

1 主要内容

2 部分代码

3 效果图

4 下载链接


主要内容

本程序为《基于多目标粒子群算法的微电网优化调度》-王金全文章的方法复现,考虑因素较文章复杂,除了考虑基本机组、储能等的出力,还考虑了弃风和弃光,很值得大家学习参考!针对光伏电池、风机、微型燃气轮机、柴油发电机以及蓄电池组成的微电网系统的优化问题进行研究,在满足系统约束条件下,建立了包含运行成本、可中断负荷补偿成本以及污染物处理费用的微电网多目标优化调度模型,并利用多目标粒子群算法(MOPSO)求解微电网优化调度问题。

优势:

程序模块化好,必要注释清晰!

多目标粒子群算法采用结构体变量,变量数量集约性好,方便学习!

程序出图较多,实用性强!

部分代码

%% initialize parametersglobal PV;global WT;%储能最大放电功率StorageMaxDischargingPower=250;%储能最大充电功率StorageMaxChargingPower=-200;%柴油发电机最大功率DGMaxImportPower=400;%柴油发电机最小功率DGMinImportPower=100;if nargin==0    c = [0.1,0.2]; % [cognitive acceleration, social acceleration] coefficients    iw = [0.5 0.001]; % [starting, ending] inertia weight    max_iter =100; % maximum iterations    for n=1:96         if n<25%光伏限制            lower_bound(n)=0;            upper_bound(n) =PV(n);         end        if n>24&&n<49%风电限制            lower_bound(n)=0;            upper_bound(n) =WT(n-24);         end        if n>48&&n<73%储能限制            lower_bound(n)=StorageMaxChargingPower;            upper_bound(n)=StorageMaxDischargingPower;         end         if n>72%柴油机限制           lower_bound(n)=DGMinImportPower;            upper_bound(n)=DGMaxImportPower;         end   end   swarm_size=100; % swarm size    rep_size=100; % Repository Size    grid_size=7; % Number of Grids per Dimension    alpha=0.1; % Inflation Rate    beta=2; % Leader Selection Pressure    gamma=2; % Deletion Selection Pressure    mu=0.1; % Mutation Rate    problem=@prob; % objective functionend

效果图

4 下载链接


http://www.ppmy.cn/embedded/29755.html

相关文章

ffplay支持mac/iOS硬解码实践

1. ffmpeg编译开启videotoolbox的支持。 ./configure --enable-videotoolbox --enable-hwaccels 2. stream_component_open方法中开启硬件解码器。 int FSPlay::stream_component_open(VideoState *is, int stream_index) {//...codec avcodec_find_decoder(avctx->code…

指数分布、瑞利分布和Nakagami-m的联系

指数分布: Y = X 1 2 + X 2 2 Y=X_1^{2}+X_2^2 Y=X12​+X22​,即(n=2)的卡方分布 Y ∼ exp ⁡ ( 2 σ 2 ) Y\sim \exp(2\sigma^2) Y∼exp(2σ2) PDF: f Y ( y ) = 1 2 σ 2 e − y 2 σ 2 , y > 0 f_{Y}(y)=\frac{1}{2\sigma^2}e^{-\frac{y}{2\sigma^2}},y>0 fY​(y…

Electron-Builder 打包 Vue 项目避坑指南

最近在开发一个基于 Vue 的 Electron 项目&#xff0c;在打包时遇到了诸多问题&#xff0c;为了解决这些问题也查阅了非常多的资料&#xff0c;排除了很多坑。现在将可能遇到的问题整理成避坑指南&#xff0c;供大家参考&#xff08;此避坑指南后续还会继续更新&#xff09;。 …

用python画一个正八边形

1 问题 使用turtle库的turtle.fd()函数和turtle.seth()函数绘制一个边长100的正八边形。 2 方法 1、利用for循环解决如何画出图形中相同的八条边的问题。 2、再利用turtle.fd()函数和turtle.seth()函数画出完整的图形。 代码清单 1 import turtleturtle.pensize(2)d0for i in r…

智能优化算法及 MATLAB 实现(书籍推荐)

智能优化算法及 MATLAB 实现&#xff08;书籍推荐&#xff09; 介绍前言目录第1章 粒子群优化算法原理及其MATLAB实现第2章 哈里斯鹰优化算法原理及其MATLAB实现第3章 沙丘猫群优化算法原理及其MATLAB实现第4章 鲸鱼优化算法原理及其MATLAB实现第5章 大猩猩部队优化算法原理及其…

MongoDB聚合运算符:$stdDevPop

MongoDB聚合运算符&#xff1a;$stdDevPop 文章目录 MongoDB聚合运算符&#xff1a;$stdDevPop语法使用非数值类型的值单个值数组操作数窗口值 举例应用于$group阶段在$project阶段使用在$setWindowFields阶段使用 $stdDevPop聚合运算符用来计算输入值的总体标准差。如果确认数…

Eureka注册中心

本篇是在微服务的服务调用者和服务提供者的基础上进行更改&#xff0c;可以参考之前的博客。SpringCloud微服务项目创建流程-CSDN博客 简介 从一个单独的微服务项目会发现&#xff0c;user-service对外提供服务&#xff0c;需要对外暴露自己的地址。而consumer&#xff08;调用…

jvm垃圾回收机制介绍

JVM&#xff08;Java虚拟机&#xff09;是Java程序的运行环境&#xff0c;它负责执行字节码文件。JVM的工作原理主要包括以下几个部分&#xff1a;类加载器、执行引擎、垃圾收集器和内存管理。类加载器负责加载字节码文件并将其转换成Java平台上的机器码&#xff0c;执行引擎负…