walkhf 2019-05-30 08:55 采纳率: 0%
浏览 1676

matlab中使用yalmip计算规划问题,结果为NAN,附代码,麻烦大神看看指点一下

Cstart=[5000 1600 2400 1200]'; Len=[6 3 3 2 4 4 2]';
Cmin=[2250 1800 3750 4800]';
Cadd=[2.7 2.2 1.8 3.8]';
Dem=[12000 32000 25000 36000 25000 30000 18000]';
Pmax=[1750 1500 2000 3500]';
Pmin=[750 1000 1200 1800]';
Avail=[10 4 8 3]';
start=intvar(4,7);
work=intvar(4,7);
padd=intvar(4,7);
f=sum(Cstart'*start)+Len'*(Cmin'*work+Cadd'*padd)';

F=[];
F=[F start>=0 padd>=0];
for i=1:4
F=[F 0<=work(i,:)<=Avail(i)];
end
for i=1:4
for j=1:7
F=[F padd(i,j)<=(Pmax(i)-Pmin(i))*work(i,j)];
end
end
for j=1:7
F=[F Pmin'*work(:,j)+sum(padd(:,j))>=Dem(j)];
end
for j=1:7
F=[F Pmax'*work(:,j)>=1.20*Dem(j)];
end
for i=1:4
for j=1:7
if j==1
F=[F start(i,1)>=work(i,1)-work(i,7)];
else
F=[F start(i,j)>=work(i,j)-work(i,j-1)];
end
end
end
ops = sdpsettings('solver','cplex');
output=solvesdp(F,f,ops);
z=double(f)

z =

NaN

start=double(start)

start =

NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN

work=double(work)

work =

NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN

padd=double(padd)

padd =

NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN
NaN NaN NaN NaN NaN NaN NaN

  • 写回答

1条回答 默认 最新

  • 菜鸟_liang 2021-09-18 16:53
    关注

    解决了嘛?

    评论

报告相同问题?

悬赏问题

  • ¥15 rs485的上拉下拉,不会对a-b<-200mv有影响吗,就是接受时,对判断逻辑0有影响吗
  • ¥15 使用phpstudy在云服务器上搭建个人网站
  • ¥15 应该如何判断含间隙的曲柄摇杆机构,轴与轴承是否发生了碰撞?
  • ¥15 vue3+express部署到nginx
  • ¥20 搭建pt1000三线制高精度测温电路
  • ¥15 使用Jdk8自带的算法,和Jdk11自带的加密结果会一样吗,不一样的话有什么解决方案,Jdk不能升级的情况
  • ¥15 画两个图 python或R
  • ¥15 在线请求openmv与pixhawk 实现实时目标跟踪的具体通讯方法
  • ¥15 八路抢答器设计出现故障
  • ¥15 opencv 无法读取视频