40
Bilevel Integer Programming Ted Ralphs 1 Joint work with: Scott DeNegre 1 , Menal Guzelsoy 2 , Andrea Lodi 3 , Fabrizio Rossi 4 , Stefano Smriglio 4 1 COR@L Lab, Department of Industrial and Systems Engineering, Lehigh University 2 ISyE, Georgia Institute of Technology 3 DEIS, Universitá di Bologna 4 Dipartimento di Informatica, Universitá di L’Aquila Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 1 / 40

Bilevel Integer Programming - Lehigh University

  • Upload
    others

  • View
    5

  • Download
    0

Embed Size (px)

Citation preview

Bilevel Integer Programming

Ted Ralphs1

Joint work with:Scott DeNegre1, Menal Guzelsoy2,

Andrea Lodi3, Fabrizio Rossi4, Stefano Smriglio4

1COR@L Lab, Department of Industrial and Systems Engineering, Lehigh University2ISyE, Georgia Institute of Technology

3DEIS, Universitá di Bologna4Dipartimento di Informatica, Universitá di L’Aquila

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 1 / 40

Outline

1 IntroductionMotivationSetup

2 ApplicationsPracticalTheoretical

3 AlgorithmsRecourse ProblemsContinuous BLPsDiscrete BLPs

4 Implementation

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 2 / 40

Motivation

A standard mathematical program models a set of decisions tobe madesimultaneouslyby asingledecision-maker (i.e., with asingleobjective).

Many decision problems arising both in real-world applications and in the theoryof integer programming involve

multiple, independent decision-makers(DMs),multiple, possibly conflicting objectives, and/orhierarchical/multi-stage decisions.

Modeling frameworksMultiobjective Programming⇐ multiple objectives, single DMMathematical Programming with Recourse⇐ multiple stages, single DMMultilevel Programming⇐ multiple stages, multiple DMs

Multilevel programminggeneralizes standard mathematical programming bymodeling hierarchical decision problems, such as Stackelberg games.

Such models arises in aremarkably wide array of applications.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 3 / 40

Bilevel (Integer) Linear Programming

Formally, abilevel linear programis described as follows.

x ∈ X ⊆ Rn1 are theupper-level variables

y ∈ Y ⊆ Rn2 are thelower-level variables

Bilevel (Integer) Linear Program

max

c1x + d1y | x ∈ PU ∩ X, y ∈ argmind2y | y ∈ PL(x) ∩ Y

(MIBLP)

Theupper-andlower-level feasible regionsare:

PU =

x ∈ R+ | A1x ≤ b1

and

PL(x) =

y ∈ R+ | G2y ≥ b2 − A2x

.

For most of the talk, we assumeX = Zn1 andY = Zn2.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 4 / 40

Notation

Notation

ΩI = (x, y) ∈ (X × Y) | x ∈ PU, y ∈ SL(x)

Ω = (x, y) ∈ (Rn1 × Rn2) | x ∈ PU, y ∈ SL(x)

MI (x) = argmind2y | y ∈ (PL(x) ∩ Y)

F I =

(x, y) | x ∈ (PU ∩ X), y ∈ MI (x)

F =

(x, y) | x ∈ PU, y ∈ argmind2y | y ∈ SL(x)

Underlying bilevel linear program (BLP):

min(x,y)∈F

c1x + d1y

Underlying MILP:min

(x,y)∈ΩIc1x + d1y

Underlying LP:min

(x,y)∈Ωc1x + d1y

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 5 / 40

Applications

Hierarchical decision systemsGovernment agenciesLarge corporations with multiple subsidiariesMarkets with a single “market-maker.”Decision problems with recourse

Parties in direct conflictZero sum gamesInterdiction problems

Modeling “robustness”: leader represents external phenomena that cannot becontrolled.

WeatherExternal market conditions

Controlling optimized systems: follower represents a system that is optimized byits nature.

Electrical networksBiological systems

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 6 / 40

Bilevel Structure in Branch and Cut

We consider aninteger program(IP) of the form

minc⊤x | x ∈ P ∩ Zn, (1)

whereP = x ∈ Rn+ | Ax≥ b, A ∈ Qm×n, b ∈ Qm, c ∈ Qn.

A branch-and-cut algorithmto solve this problem requires the solution of twofundamental decision problems.

Definition 1 Theseparation problemfor a polyhedronQ is to determine for agivenx ∈ Rn whether or notx ∈ Q and if not, to produce an inequality(α, β) ∈ Rn+1 valid forQ and for whichα⊤x < β.

Definition 2 Thebranching problemfor a setS is to determine for a givenx ∈ Rn whetherx ∈ S and if not, to produce a disjunction

h∈Q

Ahx ≥ bh, x ∈ S (2)

that is satisfied by all points inS, but not satisfied byx.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 7 / 40

Bilevel Structure of the Separation Problem

Often, we wish to select an inequality thatmaximizes violation, i.e.,

(α, β) ∈ argmin(α,β)∈Rn+1α⊤x− β | α⊤x ≥ β ∀x ∈ Q (3)

To make the problem tractable, we may restrict ourselves to aspecifictemplateclassof valid inequalities with well-defined structure.

Given a classC, calculation of the right-hand sideβ required to ensure(α, β) is amember ofC may itself be an optimization problem.

The separation problem for the classC with respect to a givenx ∈ Rn can then inprinciple be formulated as the bilevel program:

min α⊤x− β (4)

α ∈ Cα (5)

β = minα⊤x | x ∈ F, (6)

where the setCα ⊆ Rn is the projection ofC into the space of coefficient vectorsandF is the closure over the classC.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 8 / 40

Example: Disjunctive cuts

Given a MIP in the form (1), Balas (1979) showed how to derive avalidinequality by exploiting any fixed disjunction

π⊤x ≤ π0 OR π⊤x ≥ π0 + 1 ∀x ∈ Rn, (7)

whereπ ∈ Zn andπ0 ∈ Z.

A disjunctive inequalityis one valid for the convex hull of union ofP1 andP2,obtained by imposing the two terms of the disjunction.

Conceptually, theseparation problemcan be written as the followingbilevelprogram:

min α⊤x− β (8)

α ≥ u⊤A− uoπ (9)

α ≥ v⊤A + voπ (10)

u, v, u0, v0 ≥ 0 (11)

u0 + v0 = 1 (12)

β = minα⊤x | x ∈ P1 ∪ P2 (13)

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 9 / 40

Example: Disjunctive Cuts (cont.d)

Equation (13) requiresβ to have the largest value consistent with validity.

To ensure the cut is valid, we need only ensure that

β ≤ minu⊤b− u0π0, v⊤b + v0(π0 + 1). (14)

Using the standard modeling trick, we can rewrite (14) as

β ≤ u⊤b− u0π0 (15)

β ≤ v⊤b + v0(π0 + 1). (16)

The sense of the optimization ensures that (14) holds at equality.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 10 / 40

Example: Capacity Constraints for CVRP

In the Capacitated Vehicle Routing Problem (CVRP), thecapacity constraintsare of the form

e=i,j∈Ei∈S,j 6∈S

xe ≥ 2b(S) ∀S⊂ N, |S| > 1, (17)

whereb(S) is any lower boundon the number of vehicles required to servecustomers in setS.By definingbinary variables

yi = 1 if customeri belongs toS, andze = 1 if edgee belongs toδ(S),

we obtain the following bilevel formulation for the separation problem:

min∑

e∈E

xeze − 2b(S) (18)

ze ≥ yi − yj ∀e∈ E (19)

ze ≥ yj − yi ∀e∈ E (20)

b(S) = maxS | b(S) is a valid lower bound (21)

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 11 / 40

Example: Capacity Constraints for CVRP (cont.d)

If the bin packing problem is used in the lower-level, the formulation becomes:

min∑

e∈E

xeze − 2b(S) (22)

ze ≥ yi − yj ∀e = i, j (23)

ze ≥ yj − yi ∀e = i, j (24)

b(S) = minn

ℓ=1

hℓ (25)

n∑

ℓ=1

wℓi = yi ∀i ∈ N (26)

i∈N

diwℓi ≤ Khℓ ℓ = 1, . . . , n, (27)

where we introduce the additional binary variables

wℓi = 1 if customeri is served by vehicleℓ, and

hℓ = 1 if vehicleℓ is used.Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 12 / 40

Bilevel Structure of the Branching Problem

A typical criteria for selecting a branching disjunction isto maximize the boundincrease resulting from imposing the disjunction.

The problem of selecting the disjunction whose imposition results in the largestbound improvement has a naturalbilevel structure.

The upper-level variables can be used to model thechoice of disjunction(we’ll seean example shortly).The lower-level problem models thebound computationafter the disjunction hasbeen imposed.

In strong branching, we are solving this problem essentially by enumeration.

The bilevel branching paradigm is to select the branching disjunction directly bysolving abilevel program.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 13 / 40

Example: Interdiction Branching

The following is a bilevel programming formulation for the problem of finding asmallest branching set in interdiction branching:

(BBP) max∑

c⊤xs.t.

c⊤x ≤ z

y ∈ Bn

x ∈ arg maxx c⊤xs.t.

xi + yi ≤ 1, i ∈ Na

x ∈ Fa

whereF is the feasible region of a given relaxation of the original problem used forcomputing the bound.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 14 / 40

Algorithms: Technical Assumptions

We make the following assumptions to simplify and ensure theproblem has asolution.

Assumptions

1 For every action by the leader, the follower has a rational reaction(PL(x) ∩ Y 6= ∅ for all x ∈ PU ∩ X).

2 The follower is semi-cooperative (the leader may choose amongalternative members ofMI (x)).

3 The feasible setF I is nonempty and compact.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 15 / 40

Back to the Example

Consider again the following instance of (MIBLP) from Mooreand Bard (1990).

minx∈Z

− x − 10y

subject to y ∈ argminy : 25x − 20y ≥ −30

−x − 2y ≥ −10

−2x + y ≥ −15

2x + 10y ≥ 15

y ∈ Z

8

1

2

3

4

5

1 2 3 4 5 6 7

conv(F I)

F

conv(ΩI)

x

y

F I

From the figure, we can make several observations:1 F ⊆ Ω, F I ⊆ ΩI , andΩI ∈ Ω

2 FI 6⊆ F

3 Solutions to (MIBLP) do not occur at extreme points ofconv(ΩI )

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 16 / 40

Properties of MIBLPs

In this example:

Optimizing overF yields theintegersolution(8, 1), with the upper-levelobjective value18.

Imposing integrality yields the solution(2, 2), with upper-level objective value22

From this we can make two important observations:

1 The objective value obtained by relaxing integrality is nota valid boundon the solution value of the original problem,

2 Even when solutions tomax(x,y)∈F c1x + d1y are inF I , they are notnecessarily optimal.

Thus, some familiar properties from the MILP case do not holdhere.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 17 / 40

Special Case: Recourse Problems

If d1 = −d2, we can view this as amathematical program with recourse.Two-stage stochastic programs with recourse are a special case (under mildconditions).The resulting problem can be solved as a standard mathematical program.For the case whenY = Rn, we can solve the problem by Benders Decomposition.Note that the value function of the lower-level problem is convex in theupper-level variables, so we can also reformulate as a convex programThis is a useful way of visualizing the situation.

zLP (b) + u∗(v − b)

zLP

v

b

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 18 / 40

Special Case: Continuous BLPs

In the continuous case, the lower-level problem can be replaced with itsoptimality conditions.

The optimality conditions for the lower-level optimization problem are

G2y ≥ b2 − A2x

uG2 ≤ d2

u(b2 − G2 − A2x) = 0

(d2 − uG2)y = 0

u, y ∈ R+

Note that this is a special case of a class of non-linear mathematical programsknown asmathematical programs with equilibrium constraints(MPECs).

This can be solved in a number of ways, including converting it to standardinteger program.

Note that in this case, the value function of the lower-levelproblem is piecewiselinear, but not necessarily convex.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 19 / 40

General Case: Discrete BLPs

When some/all of the variables are discrete, the situation is a bit more difficult.

Because the duals that exist for general integer programs are not tractable ingeneral, we cannot use the same approach as we did for the continuous case.

In fact, going from the continuous case to the discrete case in the bilevel settingposes significantly different challenges than for standardMILPs.

Nevertheless, we have developed abranch-and-cut algorithmthat attempts togeneralize techniques from MILP.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 20 / 40

Lower Bounds

Relaxing integrality conditionsandthe requirementy ∈ MI (x) yields the relaxation

max(x,y)∈Ω

c1x + d1y. (LR)

The resulting bound can be used in combination with a standard variablebranching scheme to yield an algorithm that solves (MIBLP).

Unfortunately, the bound is too weak to be effective on interesting problems.

As usual, we strengthen the linear relaxation by exploitingdisjunctions valid forthe bilevel feasible region.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 21 / 40

Valid Disjunctions for MIBLP

Bilevel Feasibility Conditions

1 (x, y) ∈ Ω ,2 (x, y) ∈ X × Y , and3 y ∈ MI (x).

To develop a successful branch-and-cut algorithm, we wouldlike to derivedisjunctions arising from violation of these conditions.

Violations of Conditions 1 and 2 can be dealt with as in the MILP case.

Violations of Condition 3 are both difficult to detect in general and difficult toexploit.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 22 / 40

Bilevel Feasibility Check

Let (x, y) be a solution to LR.

We fix x = x and solve the lower-level problem

miny∈P I

L(x)d2y (28)

with the fixed upper-level solutionx.

Let y∗ be the solution to (28).

(x, y∗) is bilevel feasible⇒ c1x + d1y∗ is a valid upper bound on the optimal valueof the original MIBLP

Either1 d2y = d2y∗ ⇒ (x, y) is bilevel feasible.2 d2y > d2y∗ ⇒ generate a valid inequality violated by(x, y).

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 23 / 40

Bilevel Feasibility Cut (Pure Integer Case)

Let

A :=

[

A1

A2

]

, G :=

[

0G2

]

, and b :=

[

b1

b2

]

.

A basic feasible solution(x, y) ∈ ΩI to (LR) is theuniquesolution to

a′i x + g′i y = bi, i ∈ I

whereI is the set of active constraints at(x, y).

This implies that

(x, y) ∈ ΩI |∑

i∈I

a′i x + g′i y =∑

i∈I

bi

=

(x, y)

and∑

i∈I a′i x + g′i y ≤∑

i∈I bi is valid forΩ.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 24 / 40

Bilevel Feasibility Cut (cont.)

A Valid Inequality∑

i∈I a′i x + g′i y ≤∑

i∈I bi − 1 is valid forΩI \ (x, y).

maxx

miny

y | −x + y ≤ 2,−2x− y ≤ −2, 3x− y ≤ 3, y ≤ 3, x, y ∈ Z+ .

1 2 3

2

3

1

x

y

−x + 2y ≤ 5

−x + 2y ≤ 4

This yields a finite algorithm in the pure integer case.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 25 / 40

Exploiting the Value Function

The value function of an MILP is a functionz : R → R ∪ ±∞

MILP Value Function

z(d) = minx∈S(d)

cx, (29)

where, for a given right-hand side vectord ∈ Rm,

S(d) = x ∈ Zp+ × R

n−p+ | Ax≤ d.

If we knew the value function, we could reformulate as follows:

min c1x + d1y

subject to A1x ≥ b1

A2x + G2y ≥ b2

d2y = z(b2 − A2x)

x ∈ X, y ∈ Y.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 26 / 40

Example

min 3x1 + 72x2 + 3x3 + 6x4 + 7x5 + 5x6

s.t 6x1 + 5x2 − 4x3 + 2x4 − 7x5 + x6 = b andx1, x2, x3 ∈ Z+, x4, x5, x6 ∈ R+.

(SP)

0 2 4 6 8 10 12 14 16 18 20 22 24 26 28-2-4-6-8-10-12-14-16

2

4

6

8

10

12

14

16

18

d

z

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 27 / 40

Bounding the Value Function

To generate valid disjunctions violated by solutions not satisfying Condition 3, wemust somehow bound the value function.

Upper boundscan be derived by considering the value function ofrestrictionsofthe original problem.⇒ Fix some integer variables.

Lower boundscan be derived by considering the value function ofrelaxationsofthe original problem.⇒ Relax integrality of some variables.

Lower boundscan also be obtained by considering so-calleddual functionsthatcan be constructed in a number of ways.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 28 / 40

Upper Bound (Single Constraint Case)

0d

d∗

f(d∗, ηC)

f(d∗, ζC)

For anyd ≤ d∗,

z(d) ≤ maxf (d∗, ζC), f (d∗, ηC) = f (d∗, ζC).

Similarly, for anyd ≥ d∗,

z(d) ≤ maxf (d∗, ζC), f (d∗, ηC) = f (d∗, ηC).

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 29 / 40

Bilevel Feasibility Disjunctions (Single Constraint Case)

Thus, we have the following disjunction.

Bilevel Feasibility Disjunction

b2 − A2x ≤ b2 − A2x AND d2y ≤ f (b2 − A2x, ζC)

OR

b2 − A2x ≥ b2 − A2x AND d2y ≤ f (b2 − A2x, ηC).

Such a disjunction can be used to eitherbranchor cutwhen solutions(x, y) ∈ ΩI suchthaty 6∈ MI (x) are found.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 30 / 40

Numerical Example (Disjunctive Cut)

MIBLP Example

min 8x1 + x2 + 2x3 + 3x5 + 4x6

+ y1 + 3y2 + 2y3 + 4y4 + 2y6

subject to 4x1 + 2x2 − 4x3 + 3x4 + 6x5 + x6 = 24

x1, x2, x3 ∈ Z+, x4, x5, x6 ∈ R+

y ∈ argmin 2y1 + 2y3 + 8y4 + 4y5 + 3y6 :

2x1 − x2 + 4x3 − 4x4 + 3x5 + x6

+ 4y1 − 6y2 + 6y3 + 4y4 − 4y5 +43

y6 = 16,

y1, y2, y3 ∈ Z+, y3, y5, y6 ∈ R+ ,

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 31 / 40

Numerical Example (cont.)

The initial LP lower bound is 3, with a solution of

x4 = 8, y1 = 12.

The cutting plane procedure yields the cut

34x1 + 7

24x2 + 13x4 + 9

8x5 + 524x6 −

13y1 −

16y2 −

18y3 −

112y4 −

112yg ≥ 10

3 .

This yields a new lower bound of 3.224 and a solution of

x4 = 0.8163, x5 = 3.5918, y1 = 2.1225.

The optimal value is 3.25 and an optimal solution is

x5 = 4, y1 = 1.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 32 / 40

Jeroslow Formula for General MILP

Let the setE consist of the index sets of dual feasible bases of the linearprogram

min1M

cCxC :1M

ACxC = b, x ≥ 0

whereM ∈ Z+ such that for anyE ∈ E, MA−1E aj ∈ Zm for all j ∈ I .

Theorem 1 (Jeroslow Formula) There is ag ∈ G m such that

z(d) = minE∈E

g(⌊d⌋E) + vE(d − ⌊d⌋E) ∀d ∈ Rm with S(d) 6= ∅,

where forE ∈ E, ⌊d⌋E = AE⌊A−1E d⌋ andvE is the corresponding basic feasible

solution.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 33 / 40

Generalizing

The question of how to derive practical disjunctions based on local structure inthe general case is still largely unanswered.

The Jeroslow formula (among others) tells us what the local structure looks like.

We can derive local structure from the branch-and-bound tree constructed whenwe do the bilevel feasibility check.

There is an obvious combinatorial explosion.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 34 / 40

Implementation

The Mixed Integer Bilevel Solver (MibS) implements the branch and boundframework described here using software available from theComputationalInfrastructure for Operations Research (COIN-OR) repository.

COIN-OR Components Used

TheCOIN High Performance Parallel Search(CHiPPS) framework toperform the branch and bound.

TheCOIN Branch and Cut(CBC) framework for solving the MILPs.

TheCOIN LP Solver(CLP) framework for solving the LPs arising in thebranch and cut.

TheCut Generation Library(CGL) for generating cutting planes withinCBC.

TheOpen Solver Interface(OSI) for interfacing with CBC and CLP.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 35 / 40

What Is Implemented

MibS is still in its infancy and is not fully general. Currently, we have:

Bilevel feasibility cuts(pure integer case).

Specialized methods (primarily cuts) forpure binary at the upper level.

Specialized methods forinterdiction problems.

Disjunctive cutsbased on the value function for lower-level problems with asingle constraint.

Severalprimal heuristics.

Simplepreprocessing.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 36 / 40

Preliminary Results from Knapsack Interdiction

Maximum Infeasibility Strong Branching2n Avg Nodes Avg Depth Avg CPU (s) Avg Nodes Avg Depth Avg CPU (s)20 359.30 8.65 9.32 358.30 8.65 11.0722 658.40 9.85 18.50 658.20 9.85 18.9224 1414.80 10.85 46.03 1410.80 10.75 46.4626 2725.00 12.05 97.55 2723.50 12.05 100.1728 5326.40 12.90 214.97 5328.60 12.95 220.2630 10625.00 14.05 482.70 10638.00 14.10 538.32

Interdiction problems in which the lower-level problems are binary knapsackproblems with a single constraint.

Data was taken from theMultiple Criteria Decision Makinglibrary and modifiedto suit our setting.

Results for each problem size reflect the average of 20 instances.

These instances were running using the interdiction customization.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 37 / 40

Preliminary Results from Assignment Interdiction

Instance Nodes Depth CPU (s)2AP05-1 6203 33 290.252AP05-2 3881 32 384.972AP05-3 3909 32 205.932AP05-4 2441 36 102.662AP05-5 3505 33 119.182AP05-6 2031 35 80.312AP05-7 2957 29 153.022AP05-8 3549 32 224.772AP05-9 2271 33 111.132AP05-10 3299 31 211.072AP05-11 707 33 35.132AP05-12 407 18 29.512AP05-13 391 18 23.802AP05-14 3173 28 261.082AP05-15 2509 32 127.052AP05-16 1699 29 44.612AP05-17 5417 29 201.342AP05-18 5785 32 176.672AP05-19 2259 32 79.702AP05-20 2585 31 77.352AP05-21 6039 33 161.442AP05-22 2479 29 48.062AP05-23 1519 25 49.402AP05-24 15 5 1.322AP05-25 3857 31 115.97

Here, the lower-level problems are binary assignment problems.

Data also taken fromMultiple Criteria Decision Makinglibrary.

Problems have 50 variables and 45 constraints.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 38 / 40

Conclusions and Future Work

Preliminary testing to date has revealed that these problems can be extremelydifficult to solve in practice.

What we have implemented so far has only scratched the surface.

Currently, we are focusing on special cases where we can get traction.Interdiction problemsStochastic integer programs

Much work remains to be done.

Please join us!

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 39 / 40

References I

Balas, E. 1979. Disjunctive programming.Annals of Discrete Mathematics5, 3–51.

Moore, J. and J. Bard 1990. The mixed integer linear bilevel programming problem.Operations Research38(5), 911–921.

Ralphs, et al. (COR@L Lab) BILP Aussois, January 2009 40 / 40