C Ci (P) : Ex - No: Date: Economic Dispatch Problem Aim
C Ci (P) : Ex - No: Date: Economic Dispatch Problem Aim
No: Date:
Aim:
To determine the optimum scheduling of generation without losses by wirting coding in matlab.
Theory:
Economic dispatch is one in which the generated real power is to meet the load demand with
minimum fuel start up cost.
Note that any transmission losses are neglected and any operating limits are not explicitly stated
when formulating this problem.
Algorithm:
1. Read the input like number of generating units, fuel cost coefficient, loss coefficients, demand
and power generation limits for each units.
2. Assume initial starting value of lagrange multiplier lamda.
3. Choose of with or without loss method of solving.
4. Calculate the error (demand + loss- generation ).If the error is less than the tolerance value print
the result. Otherwise iterate the same steps by incrementing or decrementing the value of lamda.
5. Solve for Pgi(i=1,2,3……………N),
6. If ∑Pgi<Pd, increment lamda, else if ∑Pgi>Pd, decrement lamda.
7. Increase lamda, |Pgi-Pd|<0 or decrease lamda if |Pgi-Pd|>0 and repeat step 3.
8. If the computed Pgi satisfy the operating limits then the optimum solution is obtained, otherwise
goto next step.
9. If Pgi violates the operating limits, then fix the generation at respective limit.
10. Redistribute the remaining sytem load, Pd.
11. Compute new values of lamda and Pd, Compute remaining generations.
12. Check whether the optimality condition is satisfied. If the condition is satisfied then stop.
Otherwise go to step 9.
Problem data:
Consider three generating units in a system whose input – output characteristics is given by the following
Units A B C
1 561 7.92 1.562× 10- 3
2 310 7.85 1.94× 10- 3
3 78 7.97 4.82× 10- 3
The minimum and
maximum limits of the generating units are 150 MW & 600 MW, 100 MW &400 MW, 50 MW & 200
MW respectively. The fuel cost of all units is 1 Rs/MBtu. The generating units contribute to satisfy a load
demand of 850 MW.
Model calculation:
F(P) = H(P) × 1
F(P) = H(P)
dF 1
=7.92+0.003124 P 1 = λ
dP 1
dF 2
=7.85+0.00388 P 2 = λ
dP 2
dF 3
=7.97+ 0.00 964 P 3 = λ
dP 3
P1+P2+P3 = PD
P1+P2+P3 = 850
Iteration 1:
7.92+0.003124 P 1 = λ
7.92+0.003124 P 1 = 8
Program:
clear all;
clc;
disp '====== ====== =================';
clear all;
clc;
n=input('Enter the number of generating units');
for i=1:n
disp('Enter the value for unit');
disp(i);
a(i)=input('Enter the coefficient of Pg^2');
b(i)=input('Enter the coefficient of Pg');
pmin(i)=input('Enter the Pmin value');
pmax(i)=input('Enter the Pmax value');
end
pd=input('Enter the demand value');
lam=input('Enter the starting value of lambda');
q=input('Enter 1 for ED Problem without power loss and 2 for ED Problem with
power loss');
delp = -1;
iteration=0;
if q==1
disp 'Lambda Method (without power loss)';
while delp~=0
pp=0;
x=0;
for i=1:n
p(i)=(lam-b(i))/(2*a(i));
if(p(i)<pmin(i))
p(i)=pmin(i);
end
if(p(i)>pmax(i))
p(i)=pmax(i);
else
p(i)=p(i);
end
pp=p(i)+pp;
x = x + (1/(2*(a(i))));
end
delp=pd-pp;
dellam=delp/(x);
lam=lam+dellam;
iteration=iteration+1;
if iteration==1000
break;
end
disp 'Iteration:';
disp(iteration);
disp 'Power of the units:';
disp(p);
disp 'Lambda:';
disp(lam);
disp '--------------------------------------------------------';
end
else
disp 'Lambda Method (with power loss)';
Input:
Enter 1 for ED Problem without power loss and 2 for ED Problem with power loss1
for i=1:n
for j=1:n
disp('Enter the B matrix');
B(i,j)=input('Enter the value');
end
end
while delp~=0
pp=0;
ploss=0;
x=0;
for i=1:n
p(i)=(lam-b(i))/(2*(a(i)+(lam*B(i,i))));
if(p(i)<pmin)
p(i)=pmin(i);
end
if(p(i)>pmax)
p(i)=pmax(i);
else
p(i)=p(i);
end
pp=p(i)+pp;
x = x + (a(i)+B(i,i)*b(i))/(2*(a(i)+lam*B(i,i))^2);
end
q=(p*B*transpose(p));
ploss=ploss+q;
delp=pd+ploss-pp;
dellam=delp/(x);
lam=lam+dellam;
iteration=iteration+1;
if iteration==1000
break;
end
disp 'Iteration:';
disp(iteration);
disp 'Power of the units:';
disp(p);
disp 'Lambda:';
disp(lam);
disp '--------------------------------------------------------';
end
end
Output:
Iteration: 1
Lambda: 8.8070
Iteration: 2
Lambda: 9.1483
Iteration: 3
Lambda: 9.1483
Iteration: 4
Lambda: 9.1483
Iteration: 5
P1= 393.1698 MW
P2= 334.6038 MW
P3= 122.2264 MW
Result:
Thus the program for ECONOMIC DISPATCH PROBLEM has been developed and executed
using Matlab.