|
已经编出来一个基于WLS的程序,想再做个WLAV的。利用yalmip想求解线性规划问题出来老是0解。是我对公式理解有问题还是编程上出了问题呢,求解代码如下:
n=2*nbus-1;%参与迭代的状态量数
m=length(type);%量测量数目
%定义变量
xu=sdpvar(n,1);
xv=sdpvar(n,1);
u=sdpvar(m,1);
v=sdpvar(m,1);
I=eye(m);
M=[H -H I -I];
b=r;
y=[xu;xv;u;v];
c=zeros(2*n+2*m,1);c(2*n+1:2*n+m)=zdata(:,6);c(2*n+m+1:end)=zdata(:,6);
%定义目标函数objection
obj=c'*y;
%定义约束constraints
constr=M*y==b;
%设置优化参数
ops=sdpsettings('solver','cplex');
%求解
optimize(constr,obj,ops);
y_opt=value(y);
xa=y_opt(1:n);
xb=y_opt(n+1:2*n);
dE=xa-xb;
|
|