Root LP problem is unbounded.

5 次查看(过去 30 天)
p = optimproblem;
x = optimvar('x', 2,'Type','integer','LowerBound',0,'UpperBound',Inf);
p.ObjectiveSense = 'maximize';
p.Objective = 10*x(1) + 20*x(2);
cons1 = 6*x(1) + 8*x(2) >= 48;
cons2 = x(1) + 3*x(2) >=12;
p.Constraints.cons1 = cons1;
p.Constraints.cons2 = cons2;
sol = solve(p);
sol.x
Output ----
Solving problem using intlinprog.
Root LP problem is unbounded.
Intlinprog stopped because the root LP problem is unbounded.
ans =
[]

采纳的回答

Torsten
Torsten 2022-3-1
Yes, I can see it with my naked eye that you can make the objective function as big as you like.
Take x(1) = 1e100, x(2) = 1e100, then x is feasible and the objective gives 30*1e100.

更多回答(1 个)

Janardhan Rao Moparthi
Since you do not specify the boundaries for the variable x(1) and x(2), it is giving error. instead try
  1. if the variables are not binary
lb = zeros(2,1);
ub = [inf;inf];
2.If the variables are binary
lb = zeros(2,1);
ub = [1;1];

类别

Help CenterFile Exchange 中查找有关 Linear Least Squares 的更多信息

产品


版本

R2021b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by