基于多目标粒子群求解含风、光、柴油机、储能的微电网多目标优化问题(Matlab实现)

简介: 基于多目标粒子群求解含风、光、柴油机、储能的微电网多目标优化问题(Matlab实现)

摘要:

本文使用一种经济与环保相协调的微电网优化调度模型,针对光伏电池、风机、微型燃气轮机、柴油发电机以及蓄电池组成的微电网系统的优化问题进行研究,在满足系统约束条件下,建立了包含运行成本、可中断负荷补偿成本以及污染物处理费用的微电网多目标优化调度模型,并利用多目标粒子群算法(MOPSO)求解微电网优化调度问题,代码注释详细,结构简洁,适合快速入门多目标粒子群和多目标微电网调度的同学。


1.微电网模型

本文讨论的微电网模型中包括:风力发电机、光伏太阳能板、柴油发电机、储能电池、电力负荷。使用MOPSO算法求解该微电网的多目标最优化调度问题。


2.微电网多目标优化调度的目标函数

由于是多目标优化调度,因此本文设置目标函数有两个:运行成本最小和风光消纳率最高。


2.1运行成本最小:


式中:T为微电网的调度周期的时段数;N为微电源类型数目;COi,t为微电源i在t时刻的发电费用;IRt为微电网在t时刻的可中断费用;Pi,t为第i台微电源在t时刻的发电功率。

2.2风光消纳率最高:

使用各个时刻预测的可再生能源最大可调度功率值与实际使用了的可再生能源功率值进行相减,再将全日的总可再生能源未消纳的量相加,即可构成可再生能源消纳目标函数

 

式中:PWT,tPPV,t表示t时刻的风电和光伏能发出的最大功率,PWT,t'PPV,t'表示实际使用了的风电和光伏功率。


3.微电网多目标优化调度的约束条件

3.1最大最小功率约束:

3.2最大最小功率约束:

3.3储能电池运行约束:

储能电池的SOC需要在运行一天后回到初始的位置,并且在运行的过程中不能超过最大和最小的储能元件容量约束。

4.多目标粒子群算法(MOPSO)

粒子群算法的原理在这里就不再赘述了,感兴趣的可以看我之前的文章,这里主要说一下多目标粒子群的不同之处。由于优化问题中含有多个目标函数,因此需要在求解过程中引入Pareto分层排序原则对个体进行选择,主要的步骤为:


(1)数据初始化。输入微电网的系统组成和结构参数、模型参数、MOPSO算法参数等


(2)将将粒子个体作为系统变量输入仿真模型,对违背约束的变量进行修正,并计算系统的运行成本、环境成本以及惩罚项作为个体适应度值。


(3)将个体适应度作为优化模型的输入,得到子代种群确定个体极值pbest。将pbest作为粒子的初始个体极值,如果当前的粒子支配pbest,则将当前的粒子作为pbest个体极值;如果两者不能比较,则计算两者在群体中支配其他粒子的个数,支配较多则作为个体极值pbest。


(4)对种群进行分层排序,将最优的非支配解Pareto存入外部存档集合,清除非Pareto解,并判断外部存档集合是否超过规定容量,若是,则按照拥挤距离选取m个粒子。


(5)全局最优值gbest。采用外部存档集合保存的Pareto最优解,本文引用轮盘赌方法根据最优解的拥挤距离从外部集合中选取gbest。


(6)重复计算(3-5)直到达到最大的迭代次数。


5.程序运行结果

6.代码展示

%% 程序初始化
clear;
clc;
close all;
%% 定义全局变量
global P_load; %电负荷
global WT;%风电
global PV;%光伏
global WT_price;%
global PV_price;
global BT_price;
%% 获取数据
data=xlsread('mopso_data');
P_load=data(:,1);
PV=data(:,2);
WT=data(:,3);
PV_price=0.8;
BT_price=0.5;
WT_price=0.6;
%储能最大放电功率
StorageMaxDischargingPower=250;
%储能最大充电功率
StorageMaxChargingPower=-200;
%柴油发电机最大功率
DGMaxImportPower=600;
%柴油发电机最小功率
DGMinImportPower=200;
%% 调用mopso函数
mm=mopso; %调用mopso函数
nn=length(mm.swarm); %非支配解数目
%将非支配解中的经济成本和消纳比例分别赋值给yyy,xxx
for i=1:nn
   yyy(i)= mm.swarm(1,i).cost(1);
   xxx(i)= mm.swarm(1,i).cost(2);
end
m1=max(yyy);
m2=max(xxx);


相关文章
|
30天前
|
算法
基于粒子群算法的分布式电源配电网重构优化matlab仿真
本研究利用粒子群算法(PSO)优化分布式电源配电网重构,通过Matlab仿真验证优化效果,对比重构前后的节点电压、网损、负荷均衡度、电压偏离及线路传输功率,并记录开关状态变化。PSO算法通过迭代更新粒子位置寻找最优解,旨在最小化网络损耗并提升供电可靠性。仿真结果显示优化后各项指标均有显著改善。
|
1月前
|
算法 数据挖掘
基于粒子群优化算法的图象聚类识别matlab仿真
该程序基于粒子群优化(PSO)算法实现图像聚类识别,能识别0~9的数字图片。在MATLAB2017B环境下运行,通过特征提取、PSO优化找到最佳聚类中心,提高识别准确性。PSO模拟鸟群捕食行为,通过粒子间的协作优化搜索过程。程序包括图片读取、特征提取、聚类分析及结果展示等步骤,实现了高效的图像识别。
|
25天前
|
算法 决策智能
基于GA-PSO遗传粒子群混合优化算法的TSP问题求解matlab仿真
本文介绍了基于GA-PSO遗传粒子群混合优化算法解决旅行商问题(TSP)的方法。TSP旨在寻找访问一系列城市并返回起点的最短路径,属于NP难问题。文中详细阐述了遗传算法(GA)和粒子群优化算法(PSO)的基本原理及其在TSP中的应用,展示了如何通过编码、选择、交叉、变异及速度和位置更新等操作优化路径。算法在MATLAB2022a上实现,实验结果表明该方法能有效提高求解效率和解的质量。
|
2月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的GroupCNN分组卷积网络时间序列预测算法matlab仿真
本项目展示了一种结合粒子群优化(PSO)与分组卷积神经网络(GroupCNN)的时间序列预测算法。该算法通过PSO寻找最优网络结构和超参数,提高预测准确性与效率。软件基于MATLAB 2022a,提供完整代码及详细中文注释,并附带操作步骤视频。分组卷积有效降低了计算成本,而PSO则智能调整网络参数。此方法特别适用于金融市场预测和天气预报等场景。
|
3月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
190 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
3月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
122 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
|
3月前
|
数据采集 存储 移动开发
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
本文介绍了2023年五一杯数学建模竞赛B题的解题方法,详细阐述了如何通过数学建模和MATLAB编程来分析快递需求、预测运输数量、优化运输成本,并估计固定和非固定需求,提供了完整的建模方案和代码实现。
88 0
【2023五一杯数学建模】 B题 快递需求分析问题 建模方案及MATLAB实现代码
|
6月前
|
数据安全/隐私保护
耐震时程曲线,matlab代码,自定义反应谱与地震波,优化源代码,地震波耐震时程曲线
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
基于混合整数规划的微网储能电池容量规划(matlab代码)
基于混合整数规划的微网储能电池容量规划(matlab代码)
|
6月前
|
算法 调度
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)
含多微网租赁共享储能的配电网博弈优化调度(含matlab代码)