Can I get the code for Economic Load Dispatch using Gradient Descent (matlab)?

3 次查看(过去 30 天)
I'm not getting how to proceed after this!!
clc
a=[500;400;200];
b=[5.31;5.5;5.8];
g=[0.004;0.005;0.009];
lambda=input('enter vvalue of lambda');
iter=0;
Pd=800;
n=length(a);
delP=5;tcost=0;
tolerance=0.0001;
while abs(delP)>tolerance
iter=iter+1;
x=0;
for i=1:n
p(i)=(lambda-b(i))/(2*g(i));
x=x+(1/(2*g(i)));
cost=(a(i)+(b(i)*p(i))+(g(i)*p(i)*p(i)));
  11 个评论
mahesh kumar
mahesh kumar 2020-6-27
编辑:mahesh kumar 2020-6-27
try this::
B = [.00003 0 0;0 .00009 0 ; 0 0 .00012]; dB=diag(B); load=850;
x=max(b); dP=1;i=0;
z=randperm(10000,length(b))'; P=load*z/sum(z);
while abs(dP)>0.000001
i=i+1; disp(i);
dP=load+P'*B*P-sum(P); % loss=P'*B*P;
x=x+dP*2/(sum(1./a));
P=(x-b-2*(B*P-dB.*P))./(2*a+2*x*dB);
% plot(x,P,'x'); hold on; pause(1);
% C=c+b.*P+a.*P.*P;
% plot(x,sum(C)/100,'o');
end
Suzzane M
Suzzane M 2020-6-28
Yes, it solves my problem. Thankyou so much for the help. Was badly stuck in for days. Fianlly got some clarity. Thankyou again

请先登录,再进行评论。

回答(1 个)

mahesh kumar
mahesh kumar 2020-6-29
编辑:mahesh kumar 2020-6-29

类别

Help CenterFile Exchange 中查找有关 Solver Outputs and Iterative Display 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by