📄 testfunction11.m
字号:
% Returning
%=====================================================
f(jj,1) = IAE ;
end % end of MIMO PI Tuning
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
elseif funnum == 44 % Azermotor
f = 40 + x(:,1).^2 + x(:,2).^2 + x(:,3).^2 + x(:,4).^2 - 10*( cos(2*pi*x(:,1)) + cos(2*pi*x(:,2)) + cos(2*pi*x(:,3)) + cos(2*pi*x(:,4)) );
elseif funnum == 43 %New AzerMotor
%% %%%%%%%%%%%%%%%%%%%%%%%%% NEW AZERMOTOR %%%%%%%%%%%%%%%%%%%%%%%%%
close all
L1 = 6; W1 = 14; % Raxtkan
L2 = 24; W2 = 5; % Saxte Kabin
L3 = 24; W3 = 5; % Saxte Shasi
L4 = 15; W4 = 7; % Rober Assemble
L5 = 10; W5 = 3; % WC
L6 = 5 ; W6 = 3; % Health Care
L7 = 10; W7 = 40; %Main Office
L8 = 24; W8 = 25; % Assemble Line
L9 = 5; W9 = 18; % Check Room
L10 = 24; W10 = 8; % Cabine Painting
L11 = 4; W11 = 4; % Tools Room
L12 = 4; W12 = 3; % Batri
L = 50; W = 50;% Main Factory
x = [3 43 18 47.5 18 42.5 42.5 46.5 45 41.5 37.5 41.5 45 20 20 20.5 2.5 9 20 4 18 36 8 38.5];
% x = [x;x;x];
% 1 2 3 4 5 6 7
for indexx = 1:size(x,1)
indexx =1
x1 = x(indexx,1);
y1 = x(indexx,2);
x2 = x(indexx,3);
y2 = x(indexx,4);
x3 = x(indexx,5);
y3 = x(indexx,6);
x4 = x(indexx,7);
y4 = x(indexx,8);
x5 = x(indexx,9);
y5 = x(indexx,10);
x6 = x(indexx,11);
y6 = x(indexx,12);
x7 = x(indexx,13);
y7 = x(indexx,14);
x8 = x(indexx,15);
y8 = x(indexx,16);
x9 = x(indexx,17);
y9 = x(indexx,18);
x10 = x(indexx,19);
y10 = x(indexx,20);
x11 = x(indexx,21);
y11 = x(indexx,22);
x12 = x(indexx,23);
y12 = x(indexx,24);
M1X = [x1-L1/2 x1+L1/2 x1+L1/2 x1-L1/2 x1-L1/2]; M1Y = [y1-W1/2 y1-W1/2 y1+W1/2 y1+W1/2 y1-W1/2];
M2X = [x2-L2/2 x2+L2/2 x2+L2/2 x2-L2/2 x2-L2/2]; M2Y = [y2-W2/2 y2-W2/2 y2+W2/2 y2+W2/2 y2-W2/2];
M3X = [x3-L3/2 x3+L3/2 x3+L3/2 x3-L3/2 x3-L3/2]; M3Y = [y3-W3/2 y3-W3/2 y3+W3/2 y3+W3/2 y3-W3/2];
M4X = [x4-L4/2 x4+L4/2 x4+L4/2 x4-L4/2 x4-L4/2]; M4Y = [y4-W4/2 y4-W4/2 y4+W4/2 y4+W4/2 y4-W4/2];
M5X = [x5-L5/2 x5+L5/2 x5+L5/2 x5-L5/2 x5-L5/2]; M5Y = [y5-W5/2 y5-W5/2 y5+W5/2 y5+W5/2 y5-W5/2];
M6X = [x6-L6/2 x6+L6/2 x6+L6/2 x6-L6/2 x6-L6/2]; M6Y = [y6-W6/2 y6-W6/2 y6+W6/2 y6+W6/2 y6-W6/2];
M7X = [x7-L7/2 x7+L7/2 x7+L7/2 x7-L7/2 x7-L7/2]; M7Y = [y7-W7/2 y7-W7/2 y7+W7/2 y7+W7/2 y7-W7/2];
M8X = [x8-L8/2 x8+L8/2 x8+L8/2 x8-L8/2 x8-L8/2]; M8Y = [y8-W8/2 y8-W8/2 y8+W8/2 y8+W8/2 y8-W8/2];
M9X = [x9-L9/2 x9+L9/2 x9+L9/2 x9-L9/2 x9-L9/2]; M9Y = [y9-W9/2 y9-W9/2 y9+W9/2 y9+W9/2 y9-W9/2];
M10X = [x10-L10/2 x10+L10/2 x10+L10/2 x10-L10/2 x10-L10/2]; M10Y = [y10-W10/2 y10-W10/2 y10+W10/2 y10+W10/2 y10-W10/2];
M11X = [x11-L11/2 x11+L11/2 x11+L11/2 x11-L11/2 x11-L11/2]; M11Y = [y11-W11/2 y11-W11/2 y11+W11/2 y11+W11/2 y11-W11/2];
M12X = [x12-L12/2 x12+L12/2 x12+L12/2 x12-L12/2 x12-L12/2]; M12Y = [y12-W12/2 y12-W12/2 y12+W12/2 y12+W12/2 y12-W12/2];
MX = {M1X M2X M3X M4X M5X M6X M7X M8X M9X M10X M11X M12X}
MY = {M1Y M2Y M3Y M4Y M5Y M6Y M7Y M8Y M9Y M10Y M11Y M12Y}
ColorM = [ [1 0 0]; [0 1 0]; [0 0 1]; [.5 .5 1]; [.5 1 .5]; [1 .5 .5]; [.5 .5 .5]; [.25 .25 1]; [.5 .25 1]; [.2 .2 .2]; [.8 .2 .2]; [.2 .8 .2] ]
figure(2)
for i = 1:12
plot(MX{i}, MY{i}, 'MarkerfaceColor', ColorM(i,:))
hold on
text( x((2*i-1)) ,x((2*i)) , num2str(i));
end
axis([0 L 0 W])
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%% Defining Inputs and Output %%%%%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%============================== Raxtkan 1
I1_1x = x1; I1_1y = y1; O1_1x = x1; O1_1y = y1;
%============================== Saxte Kabin 2
I2_1x = x2 - L2/2 + 2; I2_1y = y2 + W2/2; O2_1x = x2 + L2/2; O2_1y = y2;
%============================== Saxte Shasi 3
I3_1x = x3 - L3/2 + 2; I3_1y = y3 + W3/2; O3_1x = x3 + L3/2; O3_1y = y3;
%============================== Rober Assemble 4
I4_1x = x4 - L4/2; I4_1y = y4; O4_1x = x4 - L4/2; O4_1y = y4;
%============================== WC 5
I5_1x = x5; I5_1y = y5; O5_1x = x5; O5_1y = y5;
%============================== Health Care 6
I6_1x = x6; I6_1y = y6; O6_1x = x6; O6_1y = y6;
%============================== Main Office 7
I7_1x = x7; I7_1y = y7; O7_1x = x7; O7_1y = y7;
%============================== Assemble Line 8
I8_1x = x8 - L8/2; I8_1y = y8 - W8/2; I8_2x = x8 - L8/2; I8_2y = y8 - W8/2 + 3.5;
I8_3x = x8 - L8/2; I8_3y = y8 - W8/2 + 7; I8_4x = x8 - L8/2; I8_4y = y8 + 1.5;
I8_5x = x8 - L8/2; I8_5y = y8 + 3.5; I8_6x = x8 - L8/2; I8_6y = y8 + 6.5;
I8_7x = x8 - L8/2; I8_7y = y8 + W8/2 - 2;
O8_1x = x8 + L8/2; O8_1y = y8 - W8/2; O8_2x = x8 + L8/2; O8_2y = y8 - W8/2 + 3.5;
O8_3x = x8 + L8/2; O8_3y = y8 - W8/2 + 7; O8_4x = x8 + L8/2; O8_4y = y8 + 1.5;
O8_5x = x8 + L8/2; O8_5y = y8 + 3.5; O8_6x = x8 + L8/2; O8_6y = y8 + 6.5;
O8_7x = x8 + L8/2; O8_7y = y8 + W8/2 - 2; O8_8x = x8 - L8/2; O8_8y = y8 - 2;
C8x = x8; C8y = y8;
%============================== Check Room 9
I9_1x = x9 + L9/2; I9_1y = y9 + W9/2; O9_1x = x9; O9_1y = y9 - W9/2;
%============================== Cabine Painting 10
I10_1x = x10 + L10/2; I10_1y = y10; O10_1x = x10 - L10/2; O10_1y = y10;
%============================== Tools Room 11
I11_1x = x11; I11_1y = y11; O11_1x = x11; O11_1y = y11;
%============================== Batri 12
I12_1x = x12; I12_1y = y12; O12_1x = x12; O12_1y = y12;
%============================== 1inci Gapi
IO1x = 32.5; IO1y = 50;
%============================== 2inci Gapi
IO2x = 8; IO2y = 50;
%============================== 3inci Gapi
IO3x = 2.5; IO3y = 0;
% =================================================================
InpuTT_X = {I1_1x I2_1x I3_1x I4_1x I5_1x I6_1x I7_1x ...
I8_1x I8_2x I8_3x I8_4x I8_5x I8_6x I8_7x I9_1x I10_1x I11_1x I12_1x};
InpuTT_Y = {I1_1y I2_1y I3_1y I4_1y I5_1y I6_1y I7_1y ...
I8_1y I8_2y I8_3y I8_4y I8_5y I8_6y I8_7y I9_1y I10_1y I11_1y I12_1y};
OutpuTT_X = {O1_1x O2_1x O3_1x O4_1x O5_1x O6_1x O7_1x ...
O8_1x O8_2x O8_3x O8_4x O8_5x O8_6x O8_7x O8_8x O9_1x O10_1x O11_1x O12_1x};
OutpuTT_Y = {O1_1y O2_1y O3_1y O4_1y O5_1y O6_1y O7_1y ...
O8_1y O8_2y O8_3y O8_4y O8_5y O8_6y O8_7y O8_8y O9_1y O10_1y O11_1y O12_1y};
Variables_Matrix = [ I1_1x I2_1x I3_1x I4_1x I5_1x I6_1x I7_1x I8_1x I8_2x I8_3x I8_4x I8_5x I8_6x I8_7x I9_1x I10_1x I11_1x I12_1x O1_1x O2_1x O3_1x O4_1x O5_1x O6_1x O7_1x O8_1x O8_2x O8_3x O8_4x O8_5x O8_6x O8_7x O8_8x O9_1x O10_1x O11_1x O12_1x IO1x IO2x IO3x C8x ...
;I1_1y I2_1y I3_1y I4_1y I5_1y I6_1y I7_1y I8_1y I8_2y I8_3y I8_4y I8_5y I8_6y I8_7y I9_1y I10_1y I11_1y I12_1y O1_1y O2_1y O3_1y O4_1y O5_1y O6_1y O7_1y O8_1y O8_2y O8_3y O8_4y O8_5y O8_6y O8_7y O8_8y O9_1y O10_1y O11_1y O12_1y IO1y IO2y IO3y C8y]';
%VariablesMatrix = [ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41];
for i=1:size(Variables_Matrix,1)
i
hold on
plot(Variables_Matrix(i,1),Variables_Matrix(i,2),'rs')
end
hold off
Relation_Matrix = zeros(41);
% Relation_Matrix = [0 0 0 0 0 0 ... 0 0 0 0 0 0 ;...
% 0 0 0 0 0 0 ... 0 0 0 0 0 0 ;...
% . . . . . . ... . . . . . .
% . . . . . . ... . . . . . .
% . . . . . . ... . . . . . .
% 0 0 0 0 0 0 ... 0 0 0 0 0 0 ;...
% 0 0 0 0 0 0 ... 0 0 0 0 0 0 ;...
% 0 0 0 0 0 0 ... 0 0 0 0 0 0 ;...
%%% ================== O1
Relation_Matrix(2,19) = 50; Relation_Matrix(3,19) = 50; Relation_Matrix(4,19) = 20; Relation_Matrix(5,19) = 0;
Relation_Matrix(6,19) = 4; Relation_Matrix(42,19) = 180; Relation_Matrix(15,19) = 12;
Relation_Matrix(16,19) = 40; Relation_Matrix(17,19) = 2; Relation_Matrix(18,19) = 4;
%%% ================== O2
Relation_Matrix(16,20) = 140; Relation_Matrix(5,20) = 100; Relation_Matrix(17,20) = 30;
%%% ================== O3
Relation_Matrix(8,21) = 140; Relation_Matrix(5,21) = 100; Relation_Matrix(17,21) = 30;
%%% ================== O4
Relation_Matrix(32,22) = 60; Relation_Matrix(5,22) = 40; Relation_Matrix(17,22) = 10;
%%% ================== O8
Relation_Matrix(26,38) = 60;
Relation_Matrix(27,38) = 32;
Relation_Matrix(28,38) = 32;
Relation_Matrix(29,38) = 32;
Relation_Matrix(30,38) = 32;
Relation_Matrix(31,38) = 32;
Relation_Matrix(32,38) = 70;
Relation_Matrix(33,15) = 100;
%%% ================== O9
Relation_Matrix(34,41) = 160;
%%% ================== 10
Relation_Matrix(35,9) =160
%%% ================== 11
Relation_Matrix(36,2) =30
Relation_Matrix(36,3) =30
Relation_Matrix(36,4) =20
Relation_Matrix(36,40) =200
Relation_Matrix(36,15) =20
Relation_Matrix(36,16) =20
Relation_Matrix(36,18) =5
%%% ================== 12
Relation_Matrix(37,14) =30
%%% ================== 1inci gapi
Relation_Matrix(38,1) =40
Relation_Matrix(38,2) =60
Relation_Matrix(38,3) =60
Relation_Matrix(38,4) =50
Relation_Matrix(38,40) =200
Relation_Matrix(38,18) =20
%%% ================== 6
Relation_Matrix(6,2) =3
Relation_Matrix(6,3) =3
Relation_Matrix(6,4) =2
Relation_Matrix(6,40) =10
Relation_Matrix(6,15) =1
Relation_Matrix(6,16) =2
Relation_Matrix(6,17) =.5
Relation_Matrix(6,18) =1
Relation_Matrix(6,38) =3
%%% ================== 7
Relation_Matrix(7,2) =30
Relation_Matrix(7,3) =30
Relation_Matrix(7,4) =20
Relation_Matrix(7,40) =150
Relation_Matrix(7,15) =20
Relation_Matrix(7,16) =30
Relation_Matrix(7,17) =4
Relation_Matrix(7,18) =8
Relation_Matrix
SUM = 0;
for ii = 1:size(Relation_Matrix,1)
for jj = 1:size(Relation_Matrix,1)
SUM = SUM + Relation_Matrix(ii,jj) * sum( (Variables_Matrix(:,ii)-Variables_Matrix(:,jj)).^2 );
end
f(index,1) = SUM;
end
end
end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -