📄 funcobject.m
字号:
function eval=funcObject(ColumnVector)
global true;
% size(ColumnVector)
% function eval=aaaaaPSOfuntionobjectIntrisic(X2)
% global iii;
x1=ColumnVector(1);
x2=ColumnVector(2);
x3=ColumnVector(3);
x4=ColumnVector(4);
x5=5;
% x5=ColumnVector(5);
% % global x3
% % global x4
% % global x5
% % x4=160;
% % x5=100;
% precision=1e-35;
% global Fsequence ;
% global E;
% global M;
% global s;
% global nf;
% %global alpha1; global alpha2 ;global g; global M33; global M22 ; global M11;global ET;global SizeofFsequence
% alpha1=zeros(nf,1);
% alpha2=zeros(nf,1);
% g=zeros(nf,1);
% M11=zeros(2,2,nf);
% M22=zeros(2,2,nf);
% M33=zeros(2,2,nf);
% E=zeros(3,3,nf);
% ET=zeros(3,3,nf);
% M=zeros(3,3,nf);
% KT=zeros(3,3,nf);
% FsequenceCurrent=zeros(3,3,nf); FsequenceCurrent=Fsequence(:,:,1:nf);
% ECurrent=zeros(3,3,nf); ECurrent=E(:,:,1:nf);
% KCurrent=zeros(3,3); KCurrent(1,1)=x1; KCurrent(2,2)=x2;KCurrent(1,2)=x3;KCurrent(1,3)=x4;KCurrent(2,3)=x5; KCurrent(3,3)=1;
% for i=1:s:nf
% KT=KCurrent';
% KTF=KT*FsequenceCurrent(:,:,i);
% ECurrent(:,:,i)=KTF*KCurrent;%%%%%%%%%%%% 后面有用到
% ET(:,:,i)=ECurrent(:,:,i)';
% M(:,:,i)=ET(:,:,i)*ECurrent(:,:,i);
% M11(:,:,i)=M(2:3,2:3,i);
% M22(1,1,i)=M(1,1,i);M22(1,2,i)=M(1,3,i);M22(2,1,i)=M(3,1,i);M22(2,2,i)=M(3,3,i);
% M33(:,:,i)=M(1:2,1:2,i);
% alpha1(i)=det(M11(:,:,i))+det(M22(:,:,i))+det(M33(:,:,i));
% alpha2(i)=trace(M(:,:,i));
% sq=sqrt(alpha1(i));
% fz=alpha2(i)-2*sq;
% fm=alpha2(i)+2*sq+precision;
% aa=fz/fm;
% % g(i)=aa.^2;
% g(i)=aa;
% end
% E2=E;
% su=sum(g);
% % su=sum(g);
% eval=100*su/nf; %%%% 要求的是该函数的极小值
% eval=(x1-4.9999).^2+(x2-2.9999).^2+(x3-9).^2+(x4-9).^2+(x5-.9).^2;
eval=(x1-true(1)).^2+(x2-true(2)).^2+(x3-true(3)).^2+(x4-true(4)).^2+(x5-5).^2;
% eval=1/(eval+precision); %%%% GA要求的是该函数的极大值
% eval=1/(eval+precision); %%%% GA要求的是该函数的极大值
% E
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -