function result=fitness(x)
P_MT_sum=0;
P_FC_sum=0;
P_BA_sum=0;
P_BA_sum_delt=0;
P_pv_sum=88120.92;
P_wind_sum=843750;
for i=1:48
if i<25
P_MT_sum=P_MT_sum+x(i);
elseif i>24&&i<49
P_FC_sum=P_FC_sum+x(i);
else
P_BA_sum=P_BA_sum+abs(x(i));
end
end
for i=49:72
P_BA_sum_delt=P_BA_sum_delt+x(i);
end
C_MT=2.05/9.77*P_MT_sum/0.29;%MT燃料成本
C_FC=2.05/10.78*P_FC_sum/0.65;%FC燃料成本
C_MT_fk=P_MT_sum*(0.6188*0.001*1.633975+184.0829*0.001*0.008169875+0.1702*0.001*0.130718+0.000928*0.001*0.8169875);%MT污染气体罚款
C_FC_fk=P_MT_sum*(0.023*0.001*1.633975+635.04*0.001*0.008169875+0.0544*0.001*0.130718);%FC污染气体罚款
C_OM=0.7569*P_MT_sum+0.5123*P_FC_sum+0.4216*P_BA_sum;%运行维护成本
P_load=[52*10^3 50*10^3 50*10^3 51*10^3 56*10^3 63*10^3 70*10^3 75*10^3 76*10^3 80*10^3 78*10^3 74*10^3 72*10^3 72*10^3 76*10^3 80*10^3 85*10^3 88*10^3 90*10^3 87*10^3 78*10^3 71*10^3 65*10^3 56*10^3];
P_pv=[0 0 0 0 0 0 1894.294 4753.303 7946.203 11402.47 12161.43 12339.62 12086.51 11085.63 7908.115 4680.52 1862.834 0 0 0 0 0 0 0];
P_wind=[27500 7500 3750 0 0 0 6250 2500 0 52500 56250 56250 75000 77500 80000 70000 61250 68750 45000 35000 23750 27500 51250 16250];
P_load_sum=0;
for i=1:24
P_load_sum=P_load_sum+P_load(i);
end
for i=1:72
if i<25
if x(i)<6*10^3
delt(i)=1000*(x(i)-6*10^3)^2;
elseif x(i)>100*10^3
delt(i)=1000*(x(i)-100*10^3)^2;
else
delt(i)=0;
end
elseif i>24&&i<49
if x(i)<2*10^3
delt(i)=2000*(x(i)-2*10^3)^2;
elseif x(i)>20*10^3
delt(i)=2000*(x(i)-20*10^3)^2;
else
delt(i)=0;
end
else
if x(i)<(-20)*10^3
delt(i)=1000*(x(i)-(-20)*10^3)^2;
elseif x(i)>20*10^3
delt(i)=1000*(x(i)-20*10^3)^2;
else
delt(i)=0;
end
end
end
delt_sum=0;
deltp_sum=0;
%发电功率上下限约束
for i=1:72
delt_sum=delt_sum+delt(i);
end
%发电功率上下限约束
%电功率平衡约束处理
for i=1:24
deltp(i)=1000*(P_pv(i)+P_wind(i)+x(i)+x(i+24)+x(i+48)-P_load(i))^2;
deltp_sum=deltp_sum+deltp(i);
end
%电功率平衡约束处理
result=C_MT+C_FC+C_MT_fk+C_FC_fk+C_OM+delt_sum+deltp_sum+1000*(P_BA_sum_delt)^2;
%result1=C_MT+C_FC+C_MT_fk+C_FC_fk+C_OM;
%result1=x(1);
%P_pv(1)+P_wind(1)+x(1);%+x(1+24)+x(1+48)-P_load(1);
评论0