标题:使用yalmip工具箱求解半定规划问题时显示凸检测失败
只看楼主
叁生石0212
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2013-9-12
 问题点数:0 回复次数:1 
使用yalmip工具箱求解半定规划问题时显示凸检测失败
程序代码如下:
%%定义变量
r=sdpvar(1,1);
t=sdpvar(1,1);
x=sdpvar(6,1);
Q=sdpvar(6,6);
q=sdpvar(6,1);
eit=sdpvar(1,1);
y=sdpvar(1,1);
w=sdpvar(6,1);
sigma0=[0.5 0.6 0.7 0.8 0.9 1;0.6 0.5 0.6 0.7 0.8 0.9;0.7 0.6 0.5 0.6 0.7 0.8;
       0.8 0.7 0.6 0.5 0.6 0.7;0.9 0.8 0.7 0.6 0.5 0.6;1 0.9 0.8 0.7 0.6 0.5];
mju0=[2.8;3;3.2;4;5;5.5];
a=[0 0 0 0 0 0]';
b=[2 1.75 1 3.25 3 3]';
c=[0.00375 0.0175 0.0625 0.00834 0.025 0.025]';
p=[1 1 1 1 1 1]';
%%约束条件
F=[Q>=0];
F=F+[trace((2.3.*sigma0+mju0*mju0')*Q)+mju0'*q+0.2^0.5.*norm(sqrtm(sigma0)*(q+2.*Q*mju0))];
F=F+[[Q q/2+x/2;q'/2+x'/2 r-eit]>=0];
F=F+[eit>=p'*a+b'*x+p'*x+y];
F=F+[y>=w'*w];
F=F+[w>=sqrt(c).*x];
F=F+[w<=sqrt(c).*x];
F=F+[p'*x<=150];
F=F+[[50 20 15 10 10 12]'<=x];
F=F+[x<=[200 80 50 35 30 40]'];
%%目标函数
f=r+t;
%%调用解算器
solvesdp(F,f)

运行后显示为:
ans =
    solvertime: 0
       problem: 14
          info: 'Convexity check failed (, exact model not available.)'
    yalmiptime: 0.0460

如果在上述程序下加double(f),显示为:
ans =
   NaN
 
搜索更多相关主题的帖子: 工具箱 检测 
2013-09-12 20:38
深蓝浅的蓝
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2017-7-28
得分:0 
请问解决了吗,我也是这个问题
2017-07-28 10:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-420500-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.177085 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved