coin-or / MibS

A solver for mixed integer bilevel programs
Eclipse Public License 1.0
50 stars 20 forks source link

Issue with solving interdiction model #70

Closed barguel closed 5 years ago

barguel commented 5 years ago

I get the error below when trying to solve my interdiction model. Since my model does not have a binary for each follower variable (all continuous), I am not labeling it as an interdiction model as described here: http://coral.ise.lehigh.edu/wp-content/uploads/2016/02/MibS_inputFile.pdf.

The leader's objective is -y while the follower's objective (to be minimized) is y where y is a continuous follower variable. All follower variables are continuous, but only some have associated leader binary variables. The leader has all binary variables, a knapsack constraint, and additional constraints only involving leader binary variables.

Since y is continuous and appears in the leader's objective, can this problem be solved through MibS?

image

SaTahernejad commented 5 years ago

Could you please also send the mps and auxiliary files?

MibS can solve the instances with mixed integer upper- and lower-level variables. The only limit is that all upper-level variables participate in the lower-level problem should be integer. As you described your instance, MibS should be able to solve it.

barguel commented 5 years ago

I am attaching them here. In order to attach them, I had to change their extensions to .txt Hopefully you can change them back to .aux and .mps with no issues.

mps_interdiction_aux.txt mps_interdiction_mps.txt

barguel commented 5 years ago

As a result of the answer to issue 69, I have slightly modified mps_interdiction_aux.txt

In addition, I have installed MibS on OSX and get different behavior than I get in WLS on Windows. The string "All linking variables should be discrete" gets printed over and over in what looks like an infinite loop. I am wondering if MibS thinks that the lower level variable which serves as the objective value for both the upper and lower levels is a linking variable.

Attached is my modified aux file. mps_interdiction_aux.txt

barguel commented 5 years ago

Okay, I believe my issue is that the follower problem has equality constraints. It looks like MibS is not currently developed to solve bilevel models with equality constraints according to the error message I get. Is this true for equality constraints in both the leader and follower problems?

SaTahernejad commented 5 years ago

Yes, MibS cannot currently handle equality constraints in both the leader and follower problems.