粒子群优化算法matlab程序多维,基于粒子群优化算法求解指派问题
【优化调度】基于粒子群优化算法,用matlab代码实现发电机组调度_ MATLAB仿真技术博客_博客
内容简介随着国民经济的持续快速发展,全社会对电力的需求大幅增加。为了缓解全社会的电力短缺,电力工业得到了快速发展,但却造成了能源浪费和污染物超标排放。正因如此,国家要求发电量要按照发电机组类型和能耗进行排名。目前我国电力结构以火电为主,由于电网安全稳定的制约,不能仅仅以发电顺序表为标准,根据机组的煤耗率,必须考虑电网的安全稳定运行,因此机组组合将成为目前我国节能发电调度的核心。机组组合问题是一个高维、离散、非线性的优化问题,理论上很难找到最优解。然而,由于其显著的益处,人们一直在积极地研究它。提出了各种方法来解决这个问题。本文根据节能发电调度的要求,以节约能耗和减少污染为目标,建立了节能发电调度机组组合问题的数学模型。在目标函数中,考虑了潮流分布变化引起的网损变化。对于模型的约束,考虑了机组出力、节点电压、线路潮流和爬坡率的约束。机组组合优化问题的求解。
2模拟代码% * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
%主函数,利用粒子群优化算法,求6台机组发电调度成本最低的目标函数。
%用于初始化和运行差分的脚本文件
%进化优化器。
%********************************************************************
clc
清晰;
全部关闭;
%参数设置:第一行是上网电价,第二行是最小发电量,第三行是最大发电量。
si . gp=[415 418 420 422 430 428;
30 30 100 100 250 300;
350 400 600 650 800 1000];
%网损系数(Bij是电厂I和电厂J之间的网损系数)
si . LC=[0.002022-0.000286-0.000534-0.000565-0.000454 0.000103;
-0.000286 0.003243 0.000016 -0.000307 -0.000422 -0.000147;
-0.000534 0.000016 0.001085 0.000831 0.000023 -0.000270;
-0.000565 -0.000307 0.000831 0.001129 0.000113 -0.000295;
-0.000454 -0.000422 0.000023 0.000113 0.000460 -0.000153;
0.000103 -0.000147 -0.000270 -0.000295 -0.000153 0.000898;
];
是的。TG=2400电力需求百分比(兆瓦时)
对于i=1:I_itermax
%粒子群优化算法
w=ws-(ws-we)*(i/i_itermax)^2;
对于j=1:I_NP
V(j,=w*V(j,)c1*rand*(Gbest_pop (j,)- pop(j,))c2*rand*(Zbest_pop - pop(j,);
对于k=1:I_D % -通过反弹的边界约束-
if (V(j,k) Vmax(k))
V(j,k)=Vmax(k);
目标
if (V(j,k) Vmin(k))
V(j,k)=Vmin(k);
目标
目标
pop(j,=pop(j,)V(j,);
% -选择允许哪些载体进入新群体-
对于k=1:I_D % -通过反弹的边界约束-
if (pop(j,k) FVr_maxbound(k))
pop(j,k)=FVr _ max bound(k)rand *(Zbest _ pop(k)-FVr _ max bound(k));
目标
if (pop(j,k) FVr_minbound(k))
pop(j,k)=FVr _ min bound(k)rand *(Zbest _ pop(k)-FVr _ min bound(k));
目标
目标
% pop(j,(pop(j,)SI.gp(2,))=SI.gp(2,(pop(j,)SI.gp(2,));
% pop(j,(pop(j,)SI.gp(3,))=SI.gp(2,(pop(j,)SI.gp(3,));
染色体(j,)=objfun(pop(j,),SI);
if(染色体(j,I_D M) Gbest(j))
GB est(j)=染色体(j,I _ D M);
Gbest_pop(j,)=染色体(j,1:I _ D);
目标
if(染色体(j,I_D M) Zbest)
Zbest=染色体(j,I _ D M);
Zbest _ pop=染色体(j,1:I _ D);
目标
目标
Zbest it(I 1)=Zbest;
Zbestit_pop(i 1,)=Zbest _ pop
If ~mod(i,I _ refresh)% If I的余数除以S_struct。I_refresh为0,输出I。
fprintf(%d\n ,I);
目标
目标
总有机碳
p _ Sum=0;p _ loss=0;
p _ Sum=Sum(z best _ pop);
p _ loss=z best _ pop * si . LC * z best _ pop ;
Disp([最优解——输出:,num2str(Zbest_pop),成本:,num 2 str(Zbest)]);
Disp([输出总和(MW):,num2str (p _ sum),网络损耗(MW):,num2str (p _ loss)])
我猜的
标题(“最佳成本”);
plot(zbest it);
xlim([0 I _ ITER max]);
网格打开;
拖延
运算结果最优解:3354输出:350;成本:38860 . 48868686861
总输出(MW): 3038.1023,网损(MW): 638.1023
4参考文献[1]程。基于改进粒子群算法的微电网能量优化调度研究与实现[D].中南大学,2014。
博主:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等领域的Matlab仿真。相关的matlab代码问题可以私信交流。有些理论引用自网络文献。如有侵权,联系博主删除。
原创作品来自matlab研究助手,
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。