?? nlp.m
字號:
function result=nlp(SwarmX)
[SwarmSize, SwarmDim] = size(SwarmX);
result=zeros(SwarmSize,1);
x1=SwarmX(:,1);
x2=SwarmX(:,2);
x3=SwarmX(:,3);
x4=SwarmX(:,4);
x5=SwarmX(:,5);
u=100000;
%e=1e-6;
fx=5.3578547*(x3.^2)+0.8356891*(x1.*x5)+37.293239*x1-40792.141;
%hx=0;
gx=zeros(SwarmSize,16);
gx(:,1)=-(85.334407+0.0056858*(x2.*x5)+0.00026*(x1.*x4)-0.0022053*(x3.*x5)-0);
gx(:,2)= 85.334407+0.0056858*(x2.*x5)+0.00026*(x1.*x4)-0.0022053*(x3.*x5)-92;
gx(:,3)=-(80.51249+0.0071317*(x2.*x5)+0.0029955*(x1.*x2)+0.0021813*(x3.^2)-90);
gx(:,4)= 80.51249+0.0071317*(x2.*x5)+0.0029955*(x1.*x2)+0.0021813*(x3.^2)-110;
gx(:,5)=-(9.30096+0.0047026*(x3.*x5)+0.0012547*(x1.*x3)+0.0019085*(x3.*x4)-20);
gx(:,6)= 9.30096+0.0047026*(x3.*x5)+0.0012547*(x1.*x3)+0.0019085*(x3.*x4)-25;
gx(:,7) =-(x1-78) ;
gx(:,8) = (x1-102);
gx(:,9) =-(x2-33) ;
gx(:,10)= (x2-45) ;
gx(:,11)=-(x3-27) ;
gx(:,12)= (x3-45) ;
gx(:,13)=-(x4-27) ;
gx(:,14)= (x4-45) ;
gx(:,15)=-(x5-27) ;
gx(:,16)= (x5-45) ;
gx(gx<=0)=0;
gx_sum=sum(gx'.^2)';
result=fx+gx_sum*u;
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -