如何在主程序中使用嵌套函数作为优化主程序的遗传算法的约束?

时间:2013-03-18 14:54:55

标签: matlab genetic-algorithm

我有一个名为loadflow的主程序,它使用嵌套函数计算数量a,b,c and d。我必须使用matlab中的简单GA来最小化loadflow。如何将计算a,b,c and d作为约束的嵌套函数传递给GA?

    function [ main ] = cost( DGvect )
     %load variables like cap_factor,puload1 etc here
      DGmat=reshape(10000*DGvect,6,[]);
      CDG=sum((100*500*[1 2 3 7 9 10])*DGmat);
      ODG=sum(87600*[4.5 4 5 5 1 0.5]*(DGmat.*repmat([.35 .55 .35 .4 .2 .25]',1,32)));
      [Vbus,Il,Ploss]=loadflow((1.04^10)*puload1,cap_factor(2,:),DGmat);
      CPE=CPV*abs(real(Il(1,1)))*8760*10.4e3;
      CEL=Ploss*(10.4e3)*CPV*8760;
      main=CDG+ODG+CPE+CEL;
    end

有一个带有输入参数(Vbus,Il,Ploss)的函数,它返回RIv,RIloss,RIflow和RIscc。我需要对候选DGvect的RI为< 1(约束)是有效的解决方案。

0 个答案:

没有答案