필터 지우기
필터 지우기

big M constraints bringing an infeasinle solution

조회 수: 6 (최근 30일)
Paramvir Singh
Paramvir Singh 2018년 5월 5일
댓글: Nicola Blasuttigh 2021년 1월 17일
Here Tins is a decision variable of size=(24,1) in my optimization problem. The value of Tins(min_des) =20 while value of Tins(max_des) = 23.
I have tried using the following constraints for the above equation in MILP problem.
(Tmin - Tins) - M1*(1-BCac) <= 0 where M1 is an upper bound on (Tmin - Tins)
(Tins - Tmax) - M2*BCac <= 0 where M2 is an upper bound on (Tins - Tmax)
But if its supposed that Tins=27
then my first constraint gets satisfied with both BCac=1 and BCac=0
although the second constraint is satisfied at BCac=1 only, which is correct.
But due to the first constraint, my program is getting an infeasible solution.
Any help would be deeply appreciated.
  댓글 수: 5
Paramvir Singh
Paramvir Singh 2018년 5월 6일
Sorry, the code is running in my software. But the result is no feasible solution. Here, check it out in the pic below:
Mary Fenelon
Mary Fenelon 2018년 5월 9일
Paramvir is using the new syntax for specifying solve options introduced in 18a.
Paramvir, here a couple of suggestions to diagnose the infeasibility:
  • Write a text version of the problem with writeproblem and make sure your constraints are as you expect
  • Often, it's one group of constraints that lead to infeasibility. Try to identify that group by commenting out groups of constraints.

댓글을 달려면 로그인하십시오.

채택된 답변

Paramvir Singh
Paramvir Singh 2018년 5월 10일
Thanks a lot Mam, I too figured it out that solve options is introduced recently in the 2018a version of Matlab. I was giving out of bounds initial value to the Tins variable. Moreover, one of the big M constraint in my main program was given a wrong form. Also there were two equality constraints of Tins variable(both containing its formula for cooling and heating version), I edited that formula and now my program is giving satisfactory results.
Thanks a lot to Matt J for helping me out.

추가 답변 (0개)

Community Treasure Hunt

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

Start Hunting!

Translated by