<<

BranchandPrice

Column Generation

for

y

Solving Huge Integer Programs

Cynthia Barnhart

Ellis L Johnson

George L Nemhauser

Martin WPSavelsb ergh

Pamela H Vance

School of Industrial and Systems Engineering

Georgia Institute of Technology

Atlanta GA

Abstract

We discuss formulations of integer programs with a huge number of variables

and their solution by metho ds ie implicit pricing of nonbasic

variables to generate new columns or to prove LP optimality at a no de of the branch

andb ound We present classes of mo dels for whichthisapproach decomp oses

the problem provides tighter LP relaxations and eliminates symmetryWethen

discuss computational issues and implementation of column generation branchand

b ound including sp ecial branching rules and ecientways to solvethe

LP relaxation

February

Revised May

Revised January

Intro duction

The successful solution of largescale mixed MIP problems re

quires formulations whose LP relaxations give a go o d approxima



Currently at MIT



Currently at Auburn University



This research has b een supp orted by the following grants and contracts NSF SES NSF

and AFORS DDM NSF DDM NSF DMI and IBM MHV

 y

An abbreviated and unrefereed version of this pap er app eared in Barnhart et al

tion to the convex hull of feasible solutions In the last decade a great deal of attention

has b een given to the branchandcut approach to solving MIPs Homan and Padb erg

and Nemhauser and Wolsey give general exp ositions of this metho dology

The basic idea of branchandcut is simple Classes of valid inequalities preferably

facets of the convex hull of feasible solutions are left out of the LP relaxation b ecause

there are to o many constraints to handle eciently and most of them will not b e binding

in an optimal solution anyway Then if an optimal solution to an LP relaxation is infea

sible a subproblem called the separation problem is solved to try to identify violated

inequalities in a class If one or more violated inequalities are found some are added to

the LP to cut o the infeasible solution Then the LP is reoptimized Branching o ccurs

when no violated inequalities are found to cut o an infeasible solution Branchandcut

which is a generalization of branchandb ound with LP relaxations allows separation

and cutting to b e applied throughout the branchandb ound tree

The philosophy of branchandprice is similar to that of branchandcut except that

the pro cedure fo cuses on column generation rather than row generation In fact pricing

and cutting are complementary pro cedures for tightening an LP relaxation We will

describ e algorithms that include b oth but we emphasize column generation

In branchandprice columns are left out of the LP relaxation b ecause there are to o

many columns to handle eciently and most of them will have their asso ciated variable

equal to zero in an optimal solution anywayThentocheck the optimality ofanLP

solution a subproblem called the pricing problem which is a separation problem for

the dual LPissolved to try to identify columns to enter the basis If such columns are

found the LP is reoptimized Branching o ccurs when no columns price out to enter the

basis and the LP solution do es not satisfy the integrality conditions Branchandprice

which also is a generalization of branchandb ound with LP relaxations allows column

generation to b e applied throughout the branchandb ound tree

Wehaveseveral reasons for considering formulations with a huge number of variables

A compact formulation of a MIP mayhaveaweak LP relaxation Frequently the

relaxation can b e tightened by a reformulation that involves a huge number of

variables

A compact formulation of a MIP mayhave a symmetric structure that causes

branchandb ound to p erform p o orly b ecause the problem barely changes after

branching A reformulation with a huge number of variables can eliminate this

symmetry

Column generation provides a decomp osition of the problem into master and sub

problems This decomp osition mayhave a natural interpretation in the contextual

setting allowing for the incorp oration of additional imp ortant constraints

A formulation with a huge number of variables may b e the only choice

At rst glance it may seem that branchandprice involves nothing more than combin

ing wellknown ideas for solving linear programs by column generation with branchand

b ound However as App elgren observed years ago it is not that straightfor

ward There are fundamental diculties in applying column generation techniques for

linear programming in integer programming solution metho ds Johnson These

include

Conventional integer programming branching on variables may not b e eective

b ecause xing variables can destroy the structure of the pricing problem

Solving these LPs and the subproblems to optimalitymay not b e ecient in which

case dierent rules will apply for managing the branchandprice tree

Recently several sp ecialized branchandprice algorithms have app eared in the liter

ature Our pap er attempts to unify this literature by presenting a general metho dology

for branchandprice It is by no means an inclusive survey but do es develop some gen

eral ideas that have only app eared in very sp ecial contexts Routing and scheduling has

b een a particularly fruitful application area of branchandprice see Desrosiers et al

for a survey of these results

Section presents two examples that illustrate the general concepts of a branch

andprice and at the same time p oint out some of the diculties that may

b e encountered when applying it Section discusses the typ es of MIPs for which

branchandprice can b e advantageous Section analyzes the similarities and dierences

between branchandprice and Lagrangian duality Section presents the sp ecial typ es of

branching that are required for branchandprice to b e eective Section considers the

computational issues involved in the implementation of a branchandprice algorithm

Two Illustrative Examples

Tomotivate the general ideas of branchandprice we presenttwo imp ortant practical

examples generalized assignment and crew scheduling b efore presenting the general

formulations and metho dology

Generalized Assignment

In the generalized assignment problem GAP the ob jective is to nd a maximum prot

assignmentofm tasks to n machines suchthateach task is assigned to precisely one

machine sub ject to capacity restrictions on the machines For reasons that will b ecome

apparentlaterwe will consider separately the two cases of unrelated machines and

identical machines

Unrelated Machines

The standard integer programming formulation of GAP is

X X

max p z

ij ij

im j n

X

z i m

ij

j n

X

w z d j n

ij ij j

im

z f g i m j n

ij

where p is the prot asso ciated with assigning task i to machine j w is the amount

ij ij

of the capacityofmachine j used bytaski d is the capacityofmachine j and z is a

j ij

variable indicating whether task i is assigned to machine j

Applying DantzigWolfe decomp osition to GAP with the assignment constraints

dening the master problem and the machine capacity constraints dening the sub

problems yields the master problem

X X X

j j

max p y

ij

ik k

j n im

k K

j

X X

j j

i m y

k ik

j n

k K

j

X

j

j n

k

k K

j

j

f g j n k K

j

k

j j j j

where the rst m entries of a column given by y y y y satisfy the

k k k mk

knapsack constraint

X

w x d

ij i j

im

x f g i m

i

and where K denotes the numb er of feasible solutions to the ab ove knapsack constraint

j

In other words a column represents a feasible assignment of tasks to a machine

The reason for reformulating the GAP by applying DantzigWolfe decomp osition

is that the linear programming relaxation of the master problem is tighter than the

linear programming relaxation of the standard formulation since fractional solutions that

are not convex combinations of solutions to the knapsack constraints are not feasible

to Note that our motivation for applying decomp osition is not to sp eed up the

solution of the LP relaxation in fact the LP relaxation of the master may b e harder

to solve than that of rather it is to improve the LP b ound

Tosolve the LP relaxation of pricing or column generation is done by solving

n knapsack problems Several computational or implementation issues arise in solving

these LPs includin g whether the knapsacks should b e solved exactly or approximately

whether nonbasic columns should b e kept or regenerated whether the master LP should

b e solved to optimality etc These issues will b e addressed in more detail in Section

The LP relaxation of the master problem solved by column generation maynothave

an integral optimal solution and applying a standard branchandb ound pro cedure to

the master problem over the existing columns is unlikely to nd an optimal or even

good or even feasible solution to the original problem Therefore it may b e necessary

to generate additional columns in order to solve the linear programming relaxations of

the master problem at nonro ot no des of the searchtree

Standard branching on the variables creates a problem along a branch where a

j

variable has b een set to zero Recall that y represents a particular solution to the j th

k

j

means that this solution is excluded However it is Thus

k

p ossible and quite likely that the next time the j th knapsack problem is solved the

j

optimal knapsack solution is precisely the one represented by y In that case it would

k

b e necessary to nd the second b est solution to the knapsack problem Atdepth l in the

th

branchandb ound tree wemay need to nd the l b est solution Fortunately there is

a simple remedy to this diculty Instead of branching on the s in the master prob

lem we use a branching rule that corresp onds to branching on the original variables z

ij

When z all existing columns in the master that dont assign task i to machine j

ij

are deleted and task i is p ermanently assigned to machine j ievariable x is xed to

i

inthej th knapsack When z all existing columns in the master that assign job

ij

i to machine j are deleted and task i cannot b e assigned to machine j ie variable x

i

is removed from the j th knapsack Note that each of the knapsack problems contains

one fewer variable after the branching has b een done Observe that since weknowhow

to x a single original variable z to we can also use branching rules based on xing

ij

sets of original variables to

Identical Machines

This is a sp ecial case of the problem with unrelated machines and therefore the metho d

ology describ ed ab ove applies However we need only one subproblem since all of

j

the machines are identical which implies that the can b e aggregated by dening

k

P

j

and that the convexity constraints can b e combined into a single constraint

k

j

k

P

n where is restricted to b e integer In some cases the aggregated con

k k

k K

straint will b ecome redundant and can b e deleted altogether An example of this is when

P

the ob jective is to minimize ie the number of machines needed to pro cess all the

k

tasks Note that this sp ecial case of GAP is equivalent to a cutting sto ck problem

Amuch more imp ortant issue here concerns symmetry which causes branching on

the original variables to p erform very p o orly With identical machines there are an

exp onential numb er of solutions that dier only by the names of the machines ie by

swapping the assignments of machines we get solutions that are the same but have

dierentvalues for the variables This statement is true for fractional as wellas

solutions The implication is that when a fractional solution is excluded at some no de

of the tree it p ops up again with dierentvariable values somewhere else in the tree

In addition the large numb er of alternate optima disp ersed throughout the tree renders

pruning by b ounds nearly useless

The remedy here is a dierent branching scheme prop osed byRyan and Foster

for crew scheduling that works directly on the master problem but fo cuses on pairs of

tasks In particular we consider rows of the master with resp ect to tasks r and s

Branching is done by dividing the solution space into one set in which r and s app ear

together in which case they can b e combined into one task when solving the knapsack

and into another set in whichtheymust app ear separately in which case a constraint

x x is added to the knapsack Note that the structure of the subproblems is no

r s

longer the same on the dierentbranches

Crew Scheduling

In a crew scheduling or pairing problem sequences of ights called pairings are as

signed to crews so that each ight segment for a sp ecic eet of airplanes is assigned to

exactly one crew The rst segment in a pairing must depart from the crews base each

subsequent segment departs from the station where the previous one arrived and the

last segmentmust return to the base A sequence can representseveral days of ying

typically days for a domestic problem of a ma jor US carrier

Pairings are sub ject to a numb er of constraints resulting from safety regulations and

contract terms These constraints dictate restrictions such as the maximum number of

hours a pilot can y in a day the maximum number of days b efore returning to the base

and minimum overnight rest times In addition the cost of a pairing is a messy function

of several attributes of the pairing

For these reasons it is not desirable to formulate a crew scheduling problem with

variables z where z if crew i is assigned to segment j since the constraints on

ij ij

z and the cost are highly nonlinear and dicult to express The alternative approach

ij

is to enumerate implicitly or explicitly feasible pairings and then to formulate a set

partitioning problem in which each column or variable corresp onds to a pairing and the

ob jective is to partition all of the segments into a set of minimum cost pairings

Although enumerating feasible pairings is complex b ecause of all of the rules that

must b e observed it can b e accomplished by rst enumerating all feasible p ossibilities for

one day of ying and then combining the onedayschedules to form pairings The ma jor

drawback is the total numb er of pairings whichgrows exp onentially with the number of

ights For example Vance found more than million pairings in a daily problem

with ights Problems with ights are likely to have billions of pairings

The last generations metho dology for a ight problem which is the typical

size for a US domestic carrier would haveenumerated in advance ab out low

cost pairings a very small fraction of the total Then with this xed set of columns

attempted to solve or get a go o d feasible solution to the set partitioning problem

integer program dened by these pairings which itself is a very dicult task

Anbil et al Since only a tiny fraction of all of the pairings are available to

the integer program or its linear programming relaxation this metho dology maynot

pro duce a solution that is close to b eing optimal to the problem in which all the pairings

are considered There is considerable empirical evidence to supp ort this fact see Marsten

and Krishna et al

Branchandprice can implicitly consider all of the pairings It is p ossible to rep

resent pairings as suitably constrained paths in a network and then to evaluate their

costs ie price out nonbasic columns using a multilab el shortest path or multistate dy

namic programming algorithm see Desro chers and Soumis Barnhart et al

and Vance However in practice the memory requirements of the full multil

ab el shortest path and multistate algorithms are prohibitive and

scaleddown versions have to b e used It is essential to generate columns during the solu

tion of LPs throughout the tree For example Krishna et al in a small ight

crew pairing instance pairings were generated to solve the initial LP relaxation

The LP b ound was The only IP solution that we could nd using this small set

of candidate pairings had cost We quit after days of CPU time using OSL on

an RS mo del By generating columns in the tree we got an IP solution with

cost This cost is less than the cost of the LP relaxation at the ro ot no de b ecause

of approximations in the pricing algorithm that prevented fully optimizing the LP re

laxation Another example of the imp ortance of generating columns after the initial LP

has b een solved can b e found in the work of Marsten who sets a target value for

the IP and generates additional columns whenever the LP b ound at a no de exceeds that

target value

It is very imp ortant to understand that it is not necessary to solveanLPtooptimality

when pro cessing a no de The primary reason for solving the LP to optimalityisthe

p ossibility of pruning the no de by b ounds By not solving the LP to optimality this

option may b e precluded and pruning eliminated However pruning may still b e p ossible

without solving the LP to optimalityifwe can compute a suitable b ound on the value

of the LP See Section for further discussion of this idea

Suitable Mo dels for Column Generation

General Mo dels

The general problem P we consider is of the form

max cx

Ax b

x S

x integer

The function cx is not required to b e linear although for computational reasons we

need that the relaxed problem with Ax b omitted b e relatively easy to solve

The fundamental idea of column generation is that the set



S fx S x integerg



is represented by a nite set of vectors Sp ecicallyifS is b ounded then S is just a

 

nite set of p oints say S fy y g Moreover if x is binary then S coincides with

p



the extreme p oints of its convex hull denoted by conv S Since representing a b ounded

p olyhedron by its extreme p oints is the basic construct of DantzigWolfe decomp osition

and generalized linear programming Dantzig and Wolfe our column generation

approachtointeger programming is closely related to DantzigWolfe decomp osition and

the earlier work on path ows in networks of Ford and Fulkerson

When S is unb ounded classical results of Minkowski and Weyl see Nemhauser and



Wolsey state that conv S is a p olyhedron and is represented byaconvex com

bination of a nite set of p oints and a linear combination of a nite set of rays Thus

column generation for integer programming is still p ossible when S is unb ounded How

ever primarily for simplicity of exp osition we will assume throughout this pap er that S

is b ounded Vanderb eck gives more details on the unb ounded case

 

Given S fy y gany p oint y S can b e represented as

p

X

y y

k k

k p

sub ject to the convexity constraint

X

k

k p

f g k p

k

Let c cy and let a Ay We obtain the column generation form of P given by

k k k k

X

max c

k k

k p

X

a b

k k

k p

X

k

k p

f g k p

k

Note that the column generation form of P which is called master problem MP

is an integer linear programming problem whereas the initial formulation can havea

nonlinear ob jective function Linearization in this manner is p ossible b ecause in the

equation

X

y y

k k

k p

P

we obtain y y for some k since and f g This cannot b e

k k k

k p

done when S is unb ounded so that in that case the initial formulation must have a linear

ob jective function or other devices must b e used to achieve linearityseeVanderb eck and

Wolsey

If S can b e decomp osed ie S S we can representeachset

j n j



S fx S x integer g

j j j

j

as

j

 j

S fy y g

j p

j

j j j j

c and Ay a This yields a column generation form of P with Nowlet cy

k k k k

separate convexity constraints for each S given by

j

X X

j j

max c

k k

j n

k p

j

X X

j j

b a

k k

j n

k p

j

X

j

j n

k

k p

j

j

f g j n k p

j

k

S fy y g for If the subsets in the decomp osition are identical ie S

p j

P

j

j n then they can b e represented by one subset S with and the

k

j

k

convexity constraints replaced by an aggregated convexity constraint

X

n

k

k p

where and integer This results in the column generation form

k

X

max c

k k

k p

X

a b

k k

k p

X

n

k

k p

and integer k p

k

In the formulations and the convexity constraints are written as equali

ties However in some formulations the convexity constraints are written as inequalities



Frequently this is the case when y S and c so y is just left out of the

formulation In the case of identical subsets the aggregated convexity constraintmay

b e omitted altogether when n is not xed as part of the input



The essential dierence b etween P and its column generation form is that S is

represented by a nite set of p oints We see that any fractional solution to the linear

programming relaxation of P is a feasible solution to the linear programming relaxation

of its column generation form if and only if it can b e represented by a convex combina



tion of extreme p oints of conv S In particular Georion has shown that if the

p olyhedron conv S do es not haveallintegral extreme p oints then the linear program

ming relaxation of the column generation form of P will b e tighter than that of P for

some ob jective functions

Partitioning mo dels

Manycombinatorial optimization problems can b e formulated as set partitioning prob

lems see Balas and Padb erg Since most of the branchandprice algorithms we

are aware of have b een develop ed for set partitioning based formulations they will b e

emphasized In the general set partitioning problem wehave a ground set of elements

and rules for generating feasible subsets and their prots and we wish to nd the max

imum prot partitioning of the ground set into feasible subsets Let z if element

ij

i is in subset j and otherwise and let z denote the characteristic vector of subset j

j

ie a vector with entries z for each element i The general partitioning problem is of

ij

the form

X

max cz

j

j n

X

z i m

ij

j n

z S

j

z binary

where m is the numb er of elements in the ground set n is the numb er of subsets and S

is the set of feasible subsets and cz is the prot of subset j

j

Dierent restrictions on subsets

First we assume that the feasible subsets have dierent requirements given by

S fz D z d j n z binary g

j j j j j j

Then problem P is

X

max c z

j j

j n

X

z i m

ij

j n

D z d j n

j j j

z binary

and its column generation form is

X X

j j

max c

k k

j n

k p

j

X X

j j

y i m

ik k

j n

k p

j

X

j

j n

k

k p

j

j

f g j n k p

j

k

j j j j



for g k p are the p oints of S with elements y and the fy c y where c

j j

j

ik k k k

i mWehavechosen to write the convexity constraints as inequalities since in

many of these applications wemay not assign any elements to a given subset This

structure o ccurs for example in the generalized assignment problem with unrelated

machines

Identical restrictions on subsets

Nowwe assume that the feasible subsets have identical requirements Then is replaced

by the single set of inequalities

S fz Dz d j n z binaryg

j j j

Problem P is

X

max cz

j

j n

X

z i m

ij

j n

Dz d j n

j

z binary

and its column generation form is

X

max c

k k

k p

X

y i m

ik k

k p

f g k p

k

where c cy Here wehavechosen to omit the aggregated convexity constraint

k k

b ecause it is common in these applications for n not to b e xed This structure o ccurs

for example in the generalized assignment problem with identical machines and the

cutting sto ck problem

A ma jor advantage of the column generation form for these problems with identical

subset rules is that it eliminates some of the inherent symmetry of P that causes branch

andb ound to p erform very p o orly By this we mean that any solution to P or its LP

relaxation has an exp onential numb er of representations as a function of the number

of subsets Therefore branching on a variable z to remove a fractional solution will

ij

likely pro duce the same fractional solution with z equal to the old value of z and

ik ij

viceversa unless z is fractional for all j Formulation MP eliminates this symmetry

ij

by representing each feasible subset only once and is therefore much more amenable to

branching rules in which meaningful progress in improving the LP b ound can b e made

as we go deep er in the tree

Covering mo dels

Although the discussion ab ove has fo cused on set partitioning typ e master problems in

many applications the problem structure allows the master problem to b e formulated

either as a set partitioning problem or as a set covering problem Consider for example

vehicle routing and scheduling problems where several vehicles are lo cated at one or

more dep ots and must serve geographically disp ersed customers Eachvehicle has a given

capacity and is available in a sp ecied time interval Each customer has a given demand

and must b e served within a sp ecied time window The ob jective is to minimize the

total cost of travel A solution to a vehicle routing and scheduling problem partitions

the set of customers into a set of routes for vehicles This naturally leads to a set

partitioning formulation in which the columns corresp ond to feasible routes and the rows

corresp ond to the requirementthateach customer is visited precisely once Alternatively

the problem can b e formulated as a set covering problem in which the columns corresp ond

to feasible routes and the rows corresp ond to the requirement that each customer is

visited at least once Since deleting a customer from a route ie not visiting that

customer results in another shorter less costly feasible route an optimal set covering

solution will b e an optimal set partitioning

In general if any sub column of a feasible column denes another feasible column

with lower cost an optimal solution to the set covering problem will b e an optimal set

partitioning and wecanwork with either one of the formulations When there is a choice

the set covering formulation is preferred since

Its linear programming relaxation is numerically far more stable and thus easier to

solve

It is trivial to construct a feasible integer solution from a solution to the linear

programming relaxation

Nondecomp osable mo dels

Column generation is also used for very large nondecomp osable mo dels Here it may

b e the only practical approach If a mo del contains so manyvariables that the storage

requirements are enormous then it is usually imp ossible to solve the LP relaxation

directly and a column generation approachmay b e the only alternative

This approach has b een used to solve large instances of the traveling salesman prob

lem for example see Junger Reinelt and Rinaldi To handle the enormous num

ber of variables for a thousand city instance there are a million variables only variables

asso ciated with a small subset of the edges the k shortest edges asso ciated with each

vertex are maintained When the LP is solved for this reduced edge set it is necessary

to price out all the edges not in this set to verify that the true optimum has b een found

If edges with favorable reduced costs are identied they are added to the reduced edge

set and the pro cess is rep eated

A related approach called SPRINT has proven very successful for huge set parti

tioning problems The SPRINT approachsolves subproblems consisting of a subset of

the columns eg out of million A new subproblem is formed by retaining the

columns in the optimal basis of the old subproblem and collecting a set of go o d columns

based on the reduced costs This is rep eated until all columns have b een considered and

then nally and only once the full problem is optimized Using the SPRINT approach

a linear programming relaxation of a set partitioning problem with nearly million vari

ables was solved in less than an hour on an IBM E vector facility see Anbil Tanga

and Johnson and even more quickly using a combined interior p ointsimplex

sprint approachby Bixby et al

Note that in b oth cases standard simplex pricing is used to price out the variables

that are initially left out of the formulation This can b e done b ecause the total number

of variables do es not grow exp onentially with the size of the input

Duality and Pricing

Since the column generation form frequently contains a huge numb er of columns it is

often necessary to work with restricted versions that contain only a subset of its columns

and to generate additional columns only as they are needed The restricted version of

the column generation form is called restricted master problem RMP

Let b e an optimal dual solution to an RMPwhere is the dual variable

asso ciated with the convexity constraintand is the dual vector asso ciated with the

other constraints The pricing problem

maxcx Ax

xS

identies a column with maximum reduced cost If the maximum reduced cost is greater

than wehave identied a column to enter the basis if the maximum reduced cost is

less than or equal to wehaveproven that the current solution to RMP is also optimal

for MP

Column generation is closely related to Lagrangean relaxation The pricing problem

can equivalently b e stated as

g max cx b Ax

xS

b ecause wehave only subtracted a constant and added a constant b Note that g

is the Lagrangian relaxation of and minimizing g over yields the Lagrangean dual

g minfg g

Bro oks and Georion observed the connection b etween linear programming

decomp osition and Lagrangian duality and Georion proved that the maximum

value of the linear programming relaxation of equals g

Subgradient optimization is the traditional approach for solving the piecewise lin

ear lagrangian dual see Held et al The subgradient algorithm is simple and

easy to co de for sp ecial purp ose applications However it can b e slow and have trouble

with convergence for large problems Other recently develop ed metho ds for nondieren

tiable optimization such as bundle metho ds see Lemarechal app ear to b e very

promising but have not b een widely tested on integer and combinatorial optimization

problems

Only extensive empirical tests may settle the issue of whether to use linear program

ming as in the column generation approach or a nonlinear metho d eg subgradient

optimization or a bundle metho d Over the past years subgradient optimization has

b een used extensivelyWe b elieve the reasons were the absence of ecient simplex co des

with column generation capabilities and the lack of sucient computer memoryHow

ever the situation has changed dramatically with the mo dern simplex co des With these

capabilities in LPbased branchandb ound co des it is now feasible to takeadvantage

of the global information used by the simplex co des to sp eed up the convergence One

can see this in comparing the results of Savelsb ergh and Guignard and Rosen

wein on the generalized assignment problem where a linear programming metho d

clearly outp erforms a nonlinear metho d This is in contrast with the results obtained by

Held and Karp on the traveling salesman problem more than twentyyears

ago where the limitations of LP solving with column generation led to the conclusion

that the subgradient algorithm was preferred Nevertheless it still remains to b e seen

whether the more advanced nonlinear metho ds mayprovide an even b etter alternative

Branching

An LP relaxation solved by column generation is not necessarily integral and applying a

standard branchandb ound pro cedure to the restricted master problem with its existing

columns will not guarantee an optimal or feasible solution After branching it maybe

the case that there exists a column that would price out favorably but is not presentin

the master problem Therefore to nd an optimal solution wemust generate columns

after branching

Set partitioning master problems

Ryan and Foster suggested a branching strategy for set partitioning problems

based on the following prop osition Although they were not considering column genera

tion it turns out that their branching rule is very useful in this context

Prop osition If Y is a matrix and a basic solution to Y is fractional ie

at least one of the components of is fractional then there exist two rows r and s of the

master problem such that

X

k

k y y

rk sk

Since Let row r be anyrow with y Pro of Consider fractional variable

rk k

P



is fractional there must exist some other basic column k y and

rk k

k

k p

as illustrated by the submatrix in Figure Since there and y with

rk k

k k

r

s

Figure Submatrix Present in Candidate Branching Pairs

are no duplicate columns in the basis there must exist a row s such that either y

sk

or y but not b oth This leads to the following sequence of relations

sk

X

y

rk k

k p

X

k

k y

rk

X

k

k y y

rk sk

where the inequality follows from the fact that the last summation includes either or

k

but not b oth 

k

The pair rs gives the pair of branching constraints

X X

and

k k

k y y k y y

rk sk rk sk

ie the rows r and s havetobecovered by the same column on the rst left branch

and by dierent columns on the second right branch

Prop osition implies that if no branching pair can b e identied then the solution

to the master problem must b e integer The branch and b ound algorithm must termi

nate after a nite numb er of branches since there are only a nite numb er of pairs of

rows Note that eachbranching decision eliminates a large number of variables from

consideration

A theoretical justication for this branching rule is that the submatrix shown in

Figure is precisely the excluded submatrix in the characterization of totally balanced

matrices see Homan Kolen and Sakarovitch Total balanceness of the co ecient

matrix is a sucient condition for the LP relaxation of a set partitioning problem to have

only integral extreme p oints and the branching rule eventually gives totally balanced

matrices

Identical restrictions on subsets

The branching scheme suggested byRyan and Foster requires that elements r and s

b elong to the same subset on the left branch and to dierent subsets on the right branch

Thus on the left branch all feasible columns must have y y or y y

rk sk rk sk

while on the right branch all feasible columns must have y y ory

rk sk rk

y ory y Rather than adding the branching constraints to the master

sk rk sk

problem explicitly the infeasible columns in the master problem can b e eliminated On

the left branch this is identical to combining rows r and s in the master problem giving

a smaller set partitioning problem On the right branch rows r and s are restricted to b e

disjoint whichmay yield an easier master problem since set partitioning problems with

disjointrows sets are more likely to b e integral Not adding the branching constraints

explicitly has the advantage of not intro ducing new dual variables that have to b e dealt

with in the pricing problem

Usually enforcing the branching constraints in the pricing problem ie forcing two

elements to b e in the same subset on one branch and forcing two elements to b e in

dierent subsets on the other branch is fairly easy to accomplish However the pricing

problem on one branchmay b e more complicated than on the other branch

Applications of this branching rule can b e found for urban transit crew scheduling in

Desro chers and Soumis for airline crew scheduling in Anbil Tanga and Johnson

and Vance for vehicle routing in Dumas Desrosiers and Soumis for

in Mehrotra and Trick and for the binary cutting sto ck problem

in Vance et al

Dierent restrictions on subsets

Now consider the situation where dierent subsets mayhave dierent requirements ie

the formulation for P has the blo ck diagonal structure given by and the asso ciated

explicit column generation form with separate convexity constraints for each subset is

given by

In this situation if we apply the branching scheme suggested byRyan and Foster but

always select one partitioning row sayrow s and one convexityrow say r we obtain

a sp ecial branching scheme that has a natural interpretation in the original formulation

and some nice computational prop erties Similar to Prop osition we can show that

P

there always exist such a selection with The pair of branching

k

k y y

rk sk

constraints that results is given by

X X

s s

and

k k

s s

k p y k p y

s s

rk rk

This branching rule corresp onds to requiring element r to b e in subset s on the left branch

and requiring element r to b e in any subset but s on the rightbranch This branch

ing strategy has a very natural interpretation It corresp onds precisely to p erforming

standard branching in since

X X

s s s

y z

rs

k rk k

s

k p y k p

s s

rk

and

X X

s s s

y z

rs

k rk k

s

k p y k p

s s

rk

Wehave already shown how to apply this branching rule in the generalized assignment

problem by adjusting the knapsack pricing problems Sol and Savelsb ergh show

how to apply this branching rule in more general settings without increasing the diculty

of the pricing problem To b e more precise they show that if this branching rule is

applied any algorithm for the pricing problem used in the ro ot no de can also b e used in

subsequentnodes

Applications of this branching strategy are presented for generalized assignmentin

Savelsb ergh for multicommo dityow in Barnhart Hane and Vance and

Parker and Ryan for vehicle routing in Desrosiers Soumis and Desro chers

and Desro chers Desrosiers and Solomon and for pickup and delivery problems in

Sol and Savelsb ergh

General mixed integer master problems

So far wehave discussed branching strategies for set partitioning master problems In

this section we discuss branching strategies for general mixed integer master problems

Dierent restrictions on subsets

A branching strategy for general mixed integer master problems with dierent restrictions

on subsets can b e derived directly from the integrality requirements on the original

variables see Johnson The optimal solution to the linear programming relaxation

is infeasible if and only if

X

j j

x y

j

k k

k p

j

has a fractional comp onent r for some j saywithvalue This suggests the following

branching rule on one branchwe require

X

j j

y bc

rk k

k p

j

and on the other branchwe require

X

j j

y de

rk k

k p

j

This branching rule amounts to branching on the original variable x

j

Identical restrictions on subsets

Developing a branching strategy for general mixed integer master problems with identical

restrictions on subsets is more complex b ecause we do not wanttobranch on original

variables for reasons of symmetry If the solution to is fractional wemay b e able to

identify a single row r and an integer such that

r

X

k r

k a 

r r

k

and is fractional We can then branch on the constraints

r

X X

b c and d e

k r k r

k a  k a 

r r r r

k k

These constraints place upp er and lower b ounds on the numb er of columns with a

k r

that can b e present in the solution In general these constraints cannot b e used to

r

eliminate variables and have to b e added to the formulation explicitlyEach branching

constraint will contribute an additional dual variable to the reduced cost of any new

column with a This may complicate the pricing problem

k r r

It is easy to see that a single rowmay not b e sucient to dene a branching rule

Consider a set partitioning master problem that has a fractional solution The only

P

p ossible value for is However forevery row Thus wemayhave

r k

k y 

kr

to branchonmultiple rows

Assume that

X

k r

k a 

r r

k

and is integer for every row r and integer Pick an arbitrary row say r and search

r r

for a row s and integer such that

s

X

k s

k a  a 

r r s s

k k

and is fractional If sucharow exists webranch on the constraints

s

X X

b c and d e

k s k s

k a  a  k a  a 

r r s s r r s s

k k k k

Otherwise we seek a third row We note that if the solution is fractional it is always

p ossible to nd a set of rows to branchon This branching rule was develop ed by

Vanderb eck and Wolsey see also Vanderb eck A slightly dierentversion

of this branching rule was develop ed indep endently by Barnhart et al

The branching scheme just presented applied to set partitioning master problems

gives precisely the branching scheme of Ryan and Foster discussed in Section

To see this note that by Prop osition we can always branchontworows say r and s

and that the twobranches are dened by

X X

b c and d e

k s k s

k y y  k y y 

rk sk rk sk

Computational issues

In the previous sections wehave discussed the foundations of branchandprice algo

rithms In this section we discuss some imp ortant computational issues that need to b e

considered when implementing a branchandprice algorithm

Initial solution

To start the column generation scheme an initial restricted master problem has to b e

provided This initial restricted master problem must have a feasible LP relaxation

to ensure that prop er dual information is passed to the pricing problem Dep ending

on the application it is not always obvious how to construct such an initial restricted

master However if it exists such an initial restricted master can always b e found using

atwophase metho d similar in spirit to the twophase metho d incorp orated in simplex

algorithms to nd an initial basic feasible solution add a set of articial variables with

large negative costs and asso ciated columns that form an identity matrix The articial

variables ensure that a feasible solution to the LP relaxation exists In case of a set

partitioning master problem a single articial variable with a large negative cost and

an asso ciated column consisting of all ones suces Observe that an initial restricted

master problem with a feasible LP relaxation has to b e provided at eachnodeinthe

branchandb ound tree Therefore the articial variables are usually kept at all no des

of the branchandb ound tree

The primary goal in dening an initial restricted master problem is to ensure the

existence of a feasible LP relaxation However since the initial restricted master de

termines the initial dual variables that will b e passed to the pricing problem a go o d

initial restricted master problem can b e imp ortant

Column management

In a maximization linear program any column with p ositive reduced cost is a candidate

to enter the basis The pricing problem is to nd a column with highest reduced cost

Therefore if a column with p ositive reduced cost exists the pricing problem will always

identify it This guarantees that the optimal solution to the linear program will b e found

However it is not necessary to select the column with the highest reduced cost any

column with a p ositive reduced cost will do Using this observation can improve the

overall eciency when the pricing problem is computationally intensive

Various column generation schemes can b e develop ed based on using approximation

algorithms to solve the pricing problem To guarantee optimalityatwophase approach

is applied As long as an for the pricing problem pro duces a

column with p ositive reduced cost that column will b e added to the restricted master

If the approximation algorithm fails to pro duce a column with p ositive reduced cost an

optimization algorithm for the pricing problem is invoked to prove optimality or pro duce

a column with p ositive reduced cost Suchascheme reduces the computation time p er

iteration However the numb er of iterations may increase and it is not certain that the

overall eect is p ositive

Dep ending on the pricing problem it mayeven b e p ossible to generate more than one

column with p ositive reduced cost p er iteration without a large increase in computation

time Suchascheme increases the time p er iteration since a larger restricted master has

to b e solved but it may decrease the numb er of iterations

During the column generation pro cess the restricted master problem keeps growing

It maybeadvantageous to delete nonbasic columns with very negative reduced cost from

the restricted master problem in order to reduce the time p er iteration

These ideas can b e combined into the following general column generation scheme

Determine an initial feasible restricted master problem

Initialize the column p o ol to b e empty

Solve the current restricted master problem

Delete nonbasic columns with high negative reduced costs from the restricted mas

ter problem

If the column p o ol still contains columns with p ositive reduced costs select a subset

of them add them to the restricted master and go to

Empty the column p o ol

Invoke an approximation algorithm for the pricing problem to generate one or

more columns with p ositive reduced cost If columns are generated add them to

the column p o ol and go to

Invoke an optimization algorithm for the pricing problem to prove optimalityor

generate one or more columns with p ositive reduced costs If columns are gener

ated add them to the column p o ol and go to

Stop

Vanderb eck discusses many issues related to the selection of a subset of go o d

columns On the one hand we are trying to pro duce an integer solution to the master

problem on the other hand wearetryingtosolve the linear relaxation of the restricted

master problem

Sol and Savelsb ergh describ e a fast approach for generating columns

with p ositive reduced costs which turns out to b e very eective for their application

They take existing columns with reduced cost equal to zero at least all basic columns

satisfy this requirement and employ fast lo cal improvement algorithms to construct

columns with a p ositive reduced cost

Notice the similaritybetween the column management functions p erformed in branch

andprice algorithms and the row management functions p erformed in branchandcut

algorithms

LP termination

The branchandb ound framework has some inherent exibility that can b e exploited in

branchandprice algorithms Observe that branchandb ound is essentially an enumer

ation scheme that is enhanced by fathoming based on b ound comparisons To control

the size of the branchandb ound tree it is b est to work with strong b ounds however

the metho d will work with any b ound Clearly there is a tradeo b etween the compu

tational eorts asso ciated with computing strong b ounds and evaluating small trees and

computing weaker b ounds and evaluating bigger trees In the case of linear programming

based branchandb ound algorithms in which the linear programs are solved by column

generation there is a very natural way to explore this tradeo esp ecially when the pric

ing problem is hard to solve Instead of solving the linear program to optimality ie

generating columns as long as protable columns exist we can cho ose to prematurely

end the column generation pro cess and work with b ounds on the nal LP value Lasdon

Farley and Wolsey and Vanderb eck describ e simple and relatively

easy to compute b ounds on the nal LP value based on the LP value of the current

restricted master problem and the current reduced costs This is esp ecially imp ortantin

view of the tailingo eect that many column generation schemes exhibit ie requiring

a large numb er of iterations to prove LP optimality

Dual solutions

Recall that the ob jective function of the pricing problem dep ends on the dual variables

of the solution to the linear relaxation of the restricted master problem Consequently

if there are alternative dual optimal solutions wemay pickanypoint on the face dened

by these solutions Simplex algorithms will givea vertex of this face whereas interior

point algorithms giveapoint in the center of this face Acentral p oint app ears to

have the advantage of giving a b etter representation of the face Although no extensive

computational tests have b een done to investigate the dierences it seems that using

interior p oint metho ds works somewhat b etter Marsten

LP solution

The computationally most intensive comp onent of a branchandprice algorithm is the

solution of the linear programs which includes the solution of many pricing problems

Therefore wehavetosolve these linear programs eciently to obtain ecient branch

andprice algorithms We consider two alternatives to accomplish this

Employ sp ecialized simplex pro cedures that exploit the problem structure

Alter the master problem formulation to reduce the numb er of columns

Again consider the master problem given by but with equalityconvexity con

straints

X X

j j

max c

k k

j n

k p

j

X X

j j

i m y

k ik

j n

k p

j

X

j

j n

k

k p

j

j

f g j n k p

j

k

Since the column generation form of P has the DantzigWolfe master program struc

ture it can b e solved using sp ecialized solution pro cedures such as the generalized upp er

b ounding pro cedure of Dantzig and Van Slyke or the partitioning pro cedure of

Rosen Both of these pro cedures exploit the blo ckdiagonal convexity constraint

structure of and p erform all steps of the simplex metho d on a reduced working

basis of dimension m Both metho ds transform the MP problem formulation byse

j

j n and substituting lecting key extreme p oint solutions dened by

k

j

P

j j

for each subproblem j With this substitution the key for

k p k k

k k

j

j

j

mulation of b ecomes

X X X

j j j

c max c

k k k

j

j n j n

k p k k

j

j

X X X

j j j j

y y y i m

ik ik k ik

j j

j n j n

k p k k

j

j

X

j

j n

k

k p k k

j

j

j

f g j n k p

j

k

j j j j

c c is the cost of the key column and c where c

k k k k

j j

j



now indicates whether the key extreme p oint k of subproblem j The variable

j

k

j j

should b e transformed into extreme p oint k of subproblem j or not

k k

P

j j

the key nonnegativity constraints To enforce nonnegativityof

k p k k

k k

j

j

j

are required They can b e added explicitly but in b oth the DantzigVan Slyke and Rosen

pro cedures the key nonnegativity constraints are handled implicitly bychanging the key

extreme p oint when they are violated or ab out to b e violated

To illustrate consider the multicommo dity network ow problem In a column

generation formulation of the multicommo dityow problem the variables represent

origindestination ows of commo dities In the asso ciated key formulation a sp ecic



is selected for each commo dity j to serveasakey pathAny origindestination path p

j

other origindestination path p for commo dity j will b e represented by a column with

j



for each arc in p and not in p

j

j



for eacharcin p and not in p

j

j



and for each arc in b oth or neither of p and p

j

j

for the key path nonnegativity constraint for j

The variables of the key formulation represent the symmetric dierence b etween the

key path for a commo dity and some other origindestination path for that commo dity

Since the symmetric dierence of two paths that share a common origin and destination

is a set of cycles we can think of these variables as representing ow shifts around these

cycles ie ow is removed from the key path and placed on an alternative path

Although the DantzigVan Slyke and Rosen pro cedures may improve LP solution

times b ecause of the smaller working basis they do not prevent tailingo ie slow

convergence to LP optimality which is a ma jor eciency issue for column generation

pro cedures To reduce the tailingo eect an alternate key formulation having far fewer

columns may b e used The idea b ehind the alternate key formulation is to allow columns

to b e represented as a combination of simpler columns

Consider the multicommo dityow problem again In the key formulation for the

multicommo dityow problem each column corresp onds to sets of disjoint cycles Refer

to a column containing a single cycle as a simple cycle and to one containing multiple

cycles as a comp ound cycle Since every comp ound cycle can b e represented as the sum

of simple cycles every p ossible multicommo dityow solution can b e represented with

just simple cycles In the column generation framework each column generated by the

pricing problem has to b e decomp osed into simple cycles and only these simple cycles are

added to the restricted simple cycle master problem A detailed description is provided

in Barnhart et al

Since several simple cycles can b e chosen the key path nonnegativity constraints



can b e replaced have to b e mo died The nonnegativity constraintforeachkey path p

j

by a set of constraints one for eachkey path arc ensuring that the owonthearcis

nonnegative As ab ove these constraints can b e handled implicitly

The idea presented ab oveforthemulticommo dityow problem generalizes to any

problem with the master program structure of As b efore the key formulation is



obtained by selecting a key column k for subproblem j and substituting it out ie

j

replacing all other columns k of subproblem j by a column with



for each elementink and not in k

j



for each elementink and not in k

j



for each element in b oth or neither of k and k and

j

for the key column nonnegativity constraintfor j

These columns are referred to as exchanges since one or more elements in the key col



umn k may b e removed from the solution and replaced by new elements in column k

j

Similar to the concept of simple cycles in the multicommo dityowcontext a column

in the key formulation that cannot b e represented as the sum of other columns is called

an elementary exchange In solving the LP relaxation of it suces to work with

elementary exchange columns which substantially reduces the numb er of columns See

Vance for further details

Primal

A branchandprice algorithm can b e easily turned into an eective approximation algo

rithm when nding a go o d feasible IP solution is the ma jor concern and proving opti

mality is of lesser or no imp ortance This is accomplished by branching and searching

the tree in a greedy fashion For example in set partitioning problems where branching

is p erformed on a pair of rows there are generally many pairs that can b e chosen to

eliminate the current fractional solution If the goal is to prove optimality it usually

makes sense to cho ose a branching decision that divides the solution space evenly ie

it is equally likely to nd a go o d solution at either of the two no des created If the goal

is to nd a go o d feasible solution it makes sense to cho ose a branching decision that

divides the solution space in suchawaythatwe are more likely to nd a go o d solution

in one of the two no des created and then cho ose this no de for evaluation rst For set

partitioning problems this would corresp ond to cho osing a pair of rows r and s such

that

X

k

k y y

rk sk

has a value close to one When this is the case we are more likely to quickly nd a go o d

integer solution on the

X

k

k y y

rk sk

branch than on the

X

k

k y y

rk sk

branch We then greedily search the tree always following the branch that is more likely to

yield a go o d feasible solution This approach has b een applied to crew pairing problems

with go o d results see for instance Krishna et al In their implementation the

LP relaxation was not completely reoptimized at each no de of the branchandb ound

tree instead a maximum numb er of column generation iterations p er no de was set and

columns were generated only when the LP b ound increased signicantly ab ove the value

of the ro ot LP

A somewhat similar greedy search strategy for nding go o d feasible solutions has

b een develop ed based on the standard branching rule The approach is eective when

maintaining the abilitytobacktrack in the tree search is not imp ortant Each time

avariable with a high fractional value is chosen and its value is p ermanently xed

to one In Marsten this strategy was successfully applied to the crew pairing

problem Pairings with high fractional value were xed into the solution sequentially

Whenever the value of the LP relaxation increased ab ove a preset target new pairings

were generated The pairing generation subproblem remains tractable since each xed

variable simply eliminates the ights it covers from the pairing generation subproblem

Combining column generation and row generation

Combining column and row generation can yield very strong LP relaxations However

synthesizing the two generation pro cesses can b e nontrivial The principle diculty

is that the pricing problem can b ecome much harder after additional rows are added

b ecause the new rows can destroy the structure of the pricing problem

Our rst example of the successful combination of column generation and rowgen

eration is the work byClarke and Gong They study a pathbased formulation

for a capacitated network design problem The formulation has twotyp es of variables

integer variables representing the numb er of facilities of a given typ e to place on a link

and binary variables representing the decision to use a given path for a certain com

mo dity or not The path variables are generated onthey using column generation

To strengthen the LP relaxation they generate cuts involving only the integer top ology

variables Since these cuts do not involveanypathvariables the pricing problem is not

aected

For the remainder of this section it is b enecial to distinguish two cases

Generating cuts from the original formulation in terms of x variables

Generating cuts from the column generation form in terms of variables

First consider the case where a cut dx d is derived from the original formulation

In the column generation form this constraintisgiven by

X

dy d

k k

k p

The asso ciated pricing problem is given by

maxc A dx

xS

where is the optimal dual solution to the LP relaxation of the extended RMP

Observe that the new pricing problem diers from the original pricing problem only

in the ob jective function co ecients Hence if we can solve the pricing problem for

arbitrary ob jective co ecients then the addition of cuts do es not complicate the pricing

problem

This observation is presented and applied byVan den Akker Hurkens and Savels

b ergh in their study of timeindexed formulations for single machine scheduling

problems Although timeindexed formulations provide strong b ounds their size b e

comes prohibitive for instances with medium to large job pro cessing times To handle

large instances DantzigWolfe decomp osition techniques are applied to solve the LP re

laxations Van den Akker Hurkens and Savelsb ergh demonstrate that several classes of

cuts for the original formulation can still b e used eectively due to the ab ove observation

P

Secondly consider the case where a cut g g is derived from the column

k k

k p

generation form The pricing problem nowbecomes

c Ax gx max

xS

P



where the function g xforx S gives the co ecient in the cut g g

k k

k p

This means that the addition of the cut leads to an extra term gx in the cost of



each feasible solution x S As there may not exist an obvious way to transform the

term gxinto costs on the variables x the additional constraint can complicate the

i

structure of the pricing problem signicantly

To illustrate consider the generalized assignment problem The column generation

form is a set partitioning problem and a wellknown class of valid inequalities for the set

partitioning problem are clique inequalities Padb erg which simply say in linear

programming terms that the sum of the variables in the clique cannot exceed one Now

consider the pricing problem after the addition of a clique inequality to the column

generation form The reduced cost of a new column dep ends on whether it has a or

in the row asso ciated with the clique inequality Therefore two cases for these columns

k

need to b e considered and after k cliques have b een added cases are required

Despite these diculties there have b een some successful applications of combined

row and column generation when the cuts are derived from the column generation form

For example when the ob jective is to partition the ground set into a minimum number of

feasible subsets such as minimizing the number of vehicles required to satisfy customer

demands in routing and scheduling problems an LP solution with fractional ob jective

function value v can b e cut o by adding a constraint that b ounds the LP solution from

b elowby dv e Because every column has a co ecient in this additional constraint the

constraint do es not complicate the pricing problem and can easily b e handled

Nemhauser and Park combine column and row generation in an LP based algo

rithm for the problem The edge coloring problem requires a partitioning

of the edges of a graph into a minimum cardinality set of matchings Therefore it can

naturally b e formulated as a set partitioning problem in which the columns corresp ond

to matchings of the graph Consequently the pricing problem is a weighted matching

problem However to strengthen the linear programming relaxation they add o dd

circuit constraints to the restricted master which destroys the pure matching structure

of the pricing problem The pricing problem nowbecomesamatching problem with

an additional variable for each o dd circuit constraint and an additional constraint for

each o dd circuit variable to relate the o dd circuit variable to the edge variables in the

circuit This problem is solved by branchandcut The approachpoints out the need for

recursive calling of integer programming systems for the solution of complex problems

Implementation

Although implementing branchandprice algorithms or branchandcut algorithms is

still a nontrivial activity the availability of exible linear and integer programming

systems has made it a less formidable task than it would have b een veyears ago

Mo dern simplex co des such as CPLEX CPLEX Optimization and OSL IBM

Corp oration not only p ermit column generation while solving an LP but also

allowtheemb edding of column generation LP solving into a general branchandb ound

structure for solving MIPs

The use of MINTO Nemhauser Savelsb ergh and Sigismondi Savelsb ergh and

Nemhauser may reduce the implementation eorts even further MINTO Mixed

INTeger Optimizer is an eective general purp ose mixed integer optimizer that can b e

customized through the incorp oration of application functions Its strength is that it

allows users to concentrate on problem sp ecic asp ects rather than data structures and

implementation details such as linear programming and branchandb ound

Acknowledgment

Wewould like to thank two anonymous referees for helpful suggestions related to the

organization and clarity of the pap er

References

R Anbil E Gelman B Patty and R Tanga Recentadvances in crew

pairing optimization at American Airlines Interfaces

R Anbil R Tanga and EL Johnson A global approach to crewpairing

optimization IBM Systems Journal

LH Appelgren A column generation algorithm for a ship scheduling problem

Transportation Science

C Barnhart CA Hane and P Vance Integer Multicommodity Flow

Problems in preparation

C Barnhart EL Johnson GL Nemhauser MWP Savelsbergh and P

Vance BranchandPrice Column Generation for Solving Huge Integer Pro

grams abbreviated version JR Birge and KG Murty eds Mathematical

Programming State of the Art BraunBrumeld

E Balas and M Padberg Set Partitioning A Survey SIAM Review

RE Bixby JW Gregory IJ Lustig RE Marsten and DF Shanno

Very largescale linear programming a case study in combining interior p oint

and simplex metho ds Operations Research

R Brooks and A Geoffrion Finding Everetts Lagrange multipliers by

linear programming Operations Research

LW Clarke and P Gong Capacitated Network Design with Column Gen

eration in preparation

TM

CPLEX Optimization Inc Using the CPLEX Linear Optimizer

GB Dantzig and RM Van Slyke Generalized Upp er Bounding Tech

niques Journal Computer System Science

GB Dantzig and P Wolfe Decomp osition principle for linear programs

Operations Research

M Desrochers J Desrosiers and M Solomon A new optimization al

gorithm for the with time windows Operations Research

M Desrochers and F Soumis A column generation approach to the urban

transit crew scheduling problem Transportation Science

J Desrosiers Y Dumas MM Solomon and F Soumis Time con

strained routing and scheduling ME Ball TL Magnanti C Monma and GL

Nemhauser eds Handbooks in Operations Research and Management Science Vol

ume Network Routing Elsevier Amsterdam

J Desrosiers F Soumis and M Desrochers Routing with time windows

by column generation Networks

Y Dumas J Desrosiers and F Soumis The pickup and delivery problem

with time windows European Journal of Operations Research

AA Farley A note on b ounding a class of linear programming problems

including cutting sto ck problems Operations Research

LR Ford and DR Fulkerson A suggested computation for maximal multi

commo dity network ows Managament Science

AM Geoffrion Lagrangean relaxation for integer programming Mathemat

ical Programming Studies

M Guignard and M Rosenwein An improved dualbased algorithm for the

generalized assignment problem Operations Research

M Held and RM Karp The travelingsalesman problem and minimum span

ning trees Operations Research

M Held and RM Karp The travelingsalesman problem and minimum span

ning trees Part I I Mathematical Programming

M Held P Wolfe and HP Crowder Validation of subgradient opti

mization Mathematical Programming

AJ Hoffman A Kolen and M Sakarovitch Totally balanced and

greedy matrices SIAM Journal on Algebraic and Discrete Methods

K Hoffman and M Padberg LPbased combinatorial problem solving An

nals of Operations Research

IBM Corporation Optimization Subroutine Library Guide and Reference

EL Johnson Mo deling and strong linear programs for mixed integer pro

gramming SW Wallace ed Algorithms and Model Formulations in Mathematical

ProgrammingNATO ASI Series

M Junger G Reinelt and G Rinaldi The traveling salesman problem

ME Ball TL Magnanti C Monma and GL Nemhauser eds Handbooks

in Operations Research and Management Science Volume Network Models Elsevier

Amsterdam

A Krishna C Barnhart EL Johnson D Mahidara GL Nemhauser R

Rebello A Singh and PH Vance AdvancedTechniques in Crew Schedul

ing presentation at INFORMS Los Angeles CA

LS Lasdon Optimization Theory for Large Systems MacMillan New York

C Lemarechal Nondierential Optimization GL Nemhauser AHL

Rinnooy Kan MJ Todd eds Handbooks in Operations Research and Manage

ment Science Volume Optimization Elsevier Amsterdam

R Marsten Crew Planning at Delta Airlinespresentation at Mathematical

Programming Symp osium XV Ann Arb or MI

A Mehrotra and MA Trick A Column Generation ApproachtoGraph

Coloring Graduate Scho ol of Industrial Administration Carnegie Mellon University

Pittsburgh PA

GL Nemhauser and S Park A p olyhedral approach to edge coloring Op

erations Research Letters

GL Nemhauser MWP Savelsbergh and GC Sigismondi MINTO a

Mixed INTeger Optimizer Operations Research Letters

GL Nemhauser and LA Wolsey Integer and Combinatorial Optimization

WileyNewYork NY

MW Padberg On the Facial Structure of Set Packing Polyhedra Mathemat

ical Programming

M Parker and J Ryan A column generation algorithm for bandwidth pack

ing Telecommunications Systems to app ear

JB Rosen Primal Partition Programming for Blo ck Diagonal Matrices Nu

merische Mathematik

DM Ryan and BAFoster An integer programming approachtoscheduling

A Wren ed Computer Scheduling of Public Transport Urban Passenger Vehicle and

Crew Scheduling NorthHolland Amsterdam

MWP Savelsbergh A BranchandPrice Algorithm for the Generalized As

signment Problem Operations Research to app ear

M Sol and MWP Savelsbergh ABranchandPriceAlgorithm for the

Pickup and Delivery Problem with Time Windows Rep ort COC Georgia Insti

tute of TechnologyAtlanta Georgia

JM Van den Akker CAJ Hurkens and MWP Savelsbergh A

TimeIndexedFormulation for SingleMachine Scheduling Problems Column Genera

tion in preparation

PH Vance Crew Scheduling Cutting Stock and Column Generation Solv

ing Huge Integer Programs PhD Thesis Scho ol of Industrial and Systems Engineering

Georgia Institute of TechnologyAtlanta Georgia

PH Vance C Barnhart EL Johnson and GL Nemhauser Solving

Binary Cutting Sto ck Problems by Column Generation and BranchandBound Com

putational Optimization and Applications

PH Vance C Barnhart EL Johnson and GL Nemhauser Airline

Crew Scheduling A New Formulation and Decomp osition Algorithm Operations Re

search to app ear

F Vanderbeck Decomposition and Column Generation for Integer Programs

PhD Thesis Universite Catholique de Louvain Belgium

F Vanderbeck On Integer Programming Decomposition and Ways to Enforce

Integrality in the Master Rep ort UniversityofCambridge England

F Vanderbeck and LA Wolsey An exact algorithm for IP column gener

ation CORE discussion pap er Universite Catholique de Louvain Belgium