💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥
🎉作者研究:🏅🏅🏅本科计算机专业,研究生电气学硕主要研究方向是电力系统和智能算法、机器学习和深度学习。目前熟悉python网页爬虫、机器学习、群智能算法、深度学习的相关内容。希望将计算机和电网有效结合!⭐️⭐️⭐️
🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者,博主专门做了一个专栏目录,整个专栏只放了一篇文章,足见我对其重视程度:博主专栏目录​。做到极度细致,方便大家进行学习!亲民!!!还有我开了一个专栏给女朋友的,很浪漫的喔,代码学累的时候去瞧一瞧,看一看:女朋友的浪漫邂逅​。有问题可以私密博主,博主看到会在第一时间回复。 📝目前更新:🌟🌟🌟电力系统相关知识,期刊论文,算法,机器学习和人工智能学习。🚀支持:🎁🎁🎁如果觉得博主的文章还不错或者您用得到的话,可以关注一下博主,如果三连收藏支持就更好啦!这就是给予我最大的支持!

                          

                                    🎉🎉欢迎您的到来🎉🎉

                     ⛅⛅⛅ 📃个人主页:电力系统科研室🌈🌈🌈

                    📚📚📚📋专栏目录:电力系统与算法之美👨‍💻👨‍💻👨‍💻


                            

电力系统经济调度(Matlab完整代码实现)_matlab

👨‍🎓博主课外兴趣:中西方哲学,送予读者:

👨‍💻做科研,涉及到一个深在的思想系统,需要科研者逻辑缜密,踏实认真,但是不能只是努力,很多时候借力比努力更重要,然后还要有仰望星空的创新点和启发点。当哲学课上老师问你什么是科学,什么是电的时候,不要觉得这些问题搞笑,哲学就是追究终极问题,寻找那些不言自明只有小孩子会问的但是你却回答不出来的问题。在我这个专栏记录我有空时的一些哲学思考和科研笔记:科研和哲思。建议读者按目录次序逐一浏览,免得骤然跌入幽暗的迷宫找不到来时的路,它不足为你揭示全部问题的答案,但若能让人胸中升起一朵朵疑云,也未尝不会酿成晚霞斑斓的别一番景致,万一它居然给你带来了一场精神世界的苦雨,那就借机洗刷一下原来存放在那儿的“真理”上的尘埃吧。

     或许,雨过云收,神驰的天地更清朗.......🔎🔎🔎

📋📋📋本文目录如下:⛳️⛳️⛳️

目录

1 目标函数

2 约束条件 

3 Matlab完整代码 

4 结果


1 目标函数

电力系统经济调度(Matlab完整代码实现)_matlab_02

2 约束条件 

电力系统经济调度(Matlab完整代码实现)_迭代_03

电力系统经济调度(Matlab完整代码实现)_机器学习_04

 3 Matlab完整代码 

clc
clear all
close all
%% Pmax Pmin a b c
data=[85 10 200 7.0 0.008;
80 10 180 6.3 0.009;
70 10 140 6.8 0.007];

%% 网损系数
B=[0.0218 0.0093 0.0028;
0.0093 0.0228 0.0017;
0.0028 0.0017 0.0179];
B0=[0.0003 0.0031 0.0015];
B = B/100;
B00 = 0.00030523*100;

%% 机组成本系数
a=data(:,3);
b=data(:,4);
c=data(:,5);
Pmin=data(:,2);
Pmax=data(:,1);
lambda=input('输入λ的假定值 : \n');
p=zeros(3,1);
loss=0;
demand=input('输入负荷需求量 : \n');
dp=1;
iter=0;
fprintf('Itr lambda P1 P2 P3 T_Cost\n')

%% 基于增量成本的发电量
y = B;
for i=1:3
y(i,i) = y(i,i)+(c(i)/lambda);
end
I = ones(3,1);
x = 0.5*(I-B0'-(b./lambda));
p = y\x;
P= zeros(3,1);
while abs(dp)>.0001
loss = 0;
iter=iter+1;
j = 1;
while j~=3
P(1)=(lambda*(1-B0(1))-b(1)-2*lambda*(B(1,2)*p(2)+B(1,3)*p(3)))/(2*(c(1)+lambda*B(1,1)));
P(2)=(lambda*(1-B0(2))-b(2)-2*lambda*(B(2,3)*p(3)+B(2,1)*p(1)))/(2*(c(2)+lambda*B(2,2)));
P(3)=(lambda*(1-B0(3))-b(3)-2*lambda*(B(3,1)*p(1)+B(3,2)*p(2)))/(2*(c(3)+lambda*B(3,3)));
for i=1:3
if(P(i)<Pmin(i))
P(i) = Pmin(i);
end
if(P(i)>Pmax(i))
P(i) = Pmax(i);
end
end
dp1=P(1)-p(1);
dp2=P(2)-p(2);
dp3=P(3)-p(3);
p(3)=P(3);
p(1)=P(1);
p(2)=P(2);
if(abs(dp1)<0.001&&abs(dp2)<0.001&&abs(dp3)<0.001)
j=3;
end
end
s = 0;
q = 0;
for i=1:3
for j=1:3
s=s+B(i,j)*p(i)*p(j);
end
q=q+B0(i)*p(i);
end
loss=s+q+B00;
dp=demand+loss-sum(p);
s=0;
k=0;
for i=1:3
for j=1:3
if(i~=j)
s = s+B(i,j)*p(j);
end
end
end
for i=1:3
k=k+(c(i)*(1-B0(i))+B(i,i)*b(i)-2*c(i)*s)/(2*(c(i)+lambda*B(i,i))^2);
end
dl=dp/k;
lambda=lambda+dl;
F1 = 0.008*p(1)^2+7.0*p(1)+200;
F2 = 0.009*p(2)^2+6.3*p(2)+180;
F3 = 0.007*p(3)^2+6.8*p(3)+140;
T_Cost(iter)=F1+F2+F3;
fprintf('%d\t %f\t %f\t %f\t %f\t %f\t\n',iter,lambda,P(1),P(2),P(3),T_Cost(iter))
end
disp('经济调度的 P1、P2 和 P3 的值为 ');
disp(p);
disp('迭代次数')
disp(iter);
disp('增量成本(λ)的最终值为 ');
disp(lambda);
disp('总损耗')
disp(loss)
disp('发电成本')
fprintf('%f\n',T_Cost(iter))
x = 0:iter-1;
plot(x,T_Cost)
xlabel('迭代次数');
ylabel('总燃料成本');
grid on

4 结果

电力系统经济调度(Matlab完整代码实现)_大数据_05

 

电力系统经济调度(Matlab完整代码实现)_迭代_06