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

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
    关注

    解决了嘛?

    评论

报告相同问题?

悬赏问题

  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条