clear;
b=xlsread('D:\桌面文件\小论文相关\连续一天\1001.xlsx');
n=size(b,1); %取文件行数
G=[40.174 -40.174 0 0;-40.174 52.314 -12.14 0;0 -12.14 19.24 -7.1;0 0 -7.1 7.1];
B=[-143.035 143.04 0 0;143.04 -186.368 43.351 0;0 43.351 -97.35 54.042;0 0 54.042 -54.016];
for i=1:1:1
P1=-b(i,43)*0.01;
P2=-b(i,39)*0.01;
P3=(-b(i,9)-b(i,11)-b(i,13)-b(i,27)-b(i,36))*0.01;
Ur1=b(i,45)/230;
Ur2=b(i,41)/230;
Ur3=b(i,2)/230;
U4=b(i,49);
xita4=0;
%U1=q(4)
%U2=q(5)
%U3=q(6)
%xita1=q(7)
%xita2=q(8)
%xita3=q(9)
% P1=1.193; P2=1.1615; P3=2.5657;U4=0.9742;
% Ur1=0.99;Ur2=0.9848;Ur3=0.9804; %目标值
%定义变量
q=sdpvar(9,1);
%目标函数
h=[0.025 0.04 0.008733];
z=abs(h(1)*q(1))+abs(h(2)*q(2))+abs(h(3)*q(3));
%+abs(q(4)-Ur1)+abs(q(5)-Ur2)+abs(q(6)-Ur3);
%添加约束
Constraints=[];
Constraints=[Constraints,P1==q(4)*(q(4)*(G(1,1)*cos(q(7)-q(7))+B(1,1)*sin(q(7)-q(7)))+q(5)*(G(1,2)*cos(q(7)-q(8))+B(1,2)*sin(q(7)-q(8)))+q(6)*(G(1,3)*cos(q(7)-q(9))+B(1,3)*sin(q(7)-q(9)))+U4*(G(1,4)*cos(q(7)-xita4)+B(1,4)*sin(q(7)-xita4)))];
Constraints=[Constraints,P2==q(5)*(q(4)*(G(2,1)*cos(q(8)-q(7))+B(2,1)*sin(q(8)-q(7)))+q(5)*(G(2,2)*cos(q(8)-q(8))+B(2,2)*sin(q(8)-q(8)))+q(6)*(G(2,3)*cos(q(8)-q(9))+B(2,3)*sin(q(8)-q(9)))+U4*(G(2,4)*cos(q(8)-xita4)+B(2,4)*sin(q(8)-xita4)))];
Constraints=[Constraints,P3==q(6)*(q(4)*(G(3,1)*cos(q(9)-q(7))+B(3,1)*sin(q(9)-q(7)))+q(5)*(G(3,2)*cos(q(9)-q(8))+B(3,2)*sin(q(9)-q(8)))+q(6)*(G(3,3)*cos(q(9)-q(9))+B(3,3)*sin(q(9)-q(9)))+U4*(G(3,4)*cos(q(9)-xita4)+B(3,4)*sin(q(9)-xita4)))];
Constraints=[Constraints,q(1)==q(4)*(q(4)*(G(1,1)*sin(q(7)-q(7))-B(1,1)*cos(q(7)-q(7)))+q(5)*(G(1,2)*sin(q(7)-q(8))-B(1,2)*cos(q(7)-q(8)))+q(6)*(G(1,3)*sin(q(7)-q(9))-B(1,3)*cos(q(7)-q(9)))+U4*(G(1,4)*sin(q(7)-xita4)-B(1,4)*cos(q(7)-xita4)))];
Constraints=[Constraints,q(2)==q(5)*(q(4)*(G(2,1)*sin(q(8)-q(7))-B(2,1)*cos(q(8)-q(7)))+q(5)*(G(2,2)*sin(q(8)-q(8))-B(2,2)*cos(q(8)-q(8)))+q(6)*(G(2,3)*sin(q(8)-q(9))-B(2,3)*cos(q(8)-q(9)))+U4*(G(2,4)*sin(q(8)-xita4)-B(2,4)*cos(q(8)-xita4)))];
Constraints=[Constraints,q(3)==q(6)*(q(4)*(G(3,1)*sin(q(9)-q(7))-B(3,1)*cos(q(9)-q(7)))+q(5)*(G(3,2)*sin(q(9)-q(8))-B(3,2)*cos(q(9)-q(8)))+q(6)*(G(3,3)*sin(q(9)-q(9))-B(3,3)*cos(q(9)-q(9)))+U4*(G(3,4)*sin(q(9)-xita4)-B(3,4)*cos(q(9)-xita4)))];
Constraints=[Constraints,-0.4<=q(1)<=0.4];
Constraints=[Constraints,-0.25<=q(2)<=0.25];
Constraints=[Constraints,-1.145<=q(3)<=1.145];
Constraints=[Constraints,Ur1-0.001739<q(4)<Ur1+0.001739]; %0.4kv
Constraints=[Constraints,Ur2-0.001739<q(5)<Ur2+0.001739];
Constraints=[Constraints,Ur3-0.001739<q(6)<Ur3+0.001739];
% Constraints=[Constraints,Ur1-0.002174<q(4)<Ur1+0.002174]; %0.5kv
% Constraints=[Constraints,Ur2-0.002174<q(5)<Ur2+0.002174];
% Constraints=[Constraints,Ur3-0.002174<q(6)<Ur3+0.002174];
%求解
ops = optimset('Display','off');
ops = sdpsettings('verbose',0,'solver','cplex');
reuslt =optimize(Constraints,z);
if reuslt.problem==0 % problem =0 代表求解成功
value(q)
value(z);
q(7)=0; %标识,能求解出来的
else
disp('求解出错');
end
end
出现的提示
Your initial point x0 is not between bounds lb and ub; FMINCON
shifted x0 to strictly satisfy the bounds.
First-order Norm of
Iter F-count f(x) Feasibility optimality step
0 1 0.000000e+00 2.547e+00 4.975e-03
1 2 5.443453e-01 2.584e-01 9.230e-02 5.313e-01
2 3 5.866288e-01 1.333e-04 1.018e-01 2.930e-01
3 4 6.011538e-01 1.921e-05 1.028e-01 1.043e-01
4 5 6.007363e-01 9.705e-07 1.000e-01 1.989e-02
5 6 2.115571e-01 2.523e-07 1.014e-01 2.248e-01
6 7 1.070507e-01 5.184e-08 2.804e-02 6.045e-02
7 8 1.217735e-01 3.559e-08 2.013e-02 8.724e-03
8 9 2.694381e-02 3.306e-08 5.689e-03 5.499e-02
9 10 2.897379e-02 2.409e-06 5.917e-03 3.857e-02
10 11 2.845155e-02 9.098e-08 4.002e-03 3.269e-03
11 12 9.825362e-03 3.858e-06 5.097e-03 5.347e-02
12 13 8.076387e-03 7.074e-06 4.462e-03 6.946e-02
13 14 8.416865e-03 1.002e-07 8.088e-04 9.197e-03
14 15 4.206785e-03 2.309e-06 9.070e-04 3.618e-02
15 16 4.137768e-03 6.676e-06 2.683e-04 2.594e-02
16 17 4.176322e-03 2.158e-09 1.601e-04 9.594e-04
17 18 3.348951e-03 1.121e-06 5.979e-05 1.215e-02
18 19 3.371054e-03 2.260e-08 3.217e-05 1.515e-03
19 20 3.180378e-03 2.823e-08 3.039e-05 2.267e-03
20 21 3.178815e-03 2.456e-10 1.433e-05 1.656e-04
21 22 3.178812e-03 4.041e-14 3.200e-07 2.645e-07
Local minimum found that satisfies the constraints.
Optimization completed because the objective function is non-decreasing in
feasible directions, to within the selected value of the optimality tolerance,
and constraints are satisfied to within the selected value of the constraint tolerance.
<stopping criteria details>
不知道你这个问题是否已经解决, 如果还没有解决的话: