我编写了以下matlab代码来优化以下LP
max b'x
s.t A'x <= 0;
x <= d;
也是
d = {1,2..m}
和A在代码中定义。我收到了错误:
Maximum number of iterations exceeded; increase options.MaxIter.
谷歌搜索时,有人说错误发生并不是很好。问题必须重新制定。不知道如何重新制定它。
解决方案非常简单,因为A&gt; 0,b> 0和d> 0因此x = 0
m = 10;
d = [1:1:m];
for j = 1:m,
for i = 1:m,
A(i,j) = 1/(i+j-1);
end
end
for i = 1:m,
b(i)=0;
end
for i = 1:m
lb(i) = -inf;
end
b;
lb = lb';
f = A*d';
[x,fval,exitflag,output] = linprog(-f,A,b,[],[],lb,d); %minimzation problem. Hence -f, A = A'
答案 0 :(得分:0)
我使用了optimist =(&#39; MaxIter&#39;,10000)。要停止该错误消息。