application of column generation and branch and price for operating room planning chengbin chu chair...
TRANSCRIPT
![Page 1: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/1.jpg)
Application of Column Generation and Branch and Price for Operating
Room Planning
Chengbin CHU
Chair Professor of Supply Chain Management
CentraleSupélec
![Page 2: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/2.jpg)
Set partitioning problems
We will consider a special family of combinatorial optimization problems: set partitioning problems
A set of activities to be partitioned between a given set of resources .
The processing of a subset of activities by a resource leads to a cost .
If the cost is sequence-dependent, for any subset of activities and any resource , there is an effective method to find an optimal sequence.
As a consequence, we are only interested in the assignment of activities to resources in the master problem.
![Page 3: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/3.jpg)
Examples of applications
Application Resources Activities
Crew
schedulingCrews flights
VRPVehicles,
driverstrips
PM Scheduling machines jobs
Healthcare time slots surgical cases
Bin packing bins items
![Page 4: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/4.jpg)
Notation
The activities are of types (e.g. types of parts to be produced).
The number of activities of type to be processed is , .
The set of activities can be expressed by an -entry vector where is the th entry.
Any subset can also be expressed as an -entry vector where the th entry represents the number of activities of type included in the subset.
![Page 5: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/5.jpg)
Similarly, the resources available are of types.
The set of resources is composed of resources of type , .
A set of resources can be expressed by an -entry vector where is the th entry.
A resource can be expressed as an -entry vector where exactly one appropriate entry is 1 and the remaining entries are 0.
![Page 6: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/6.jpg)
A pattern consists of a single resource and a subset of activities.
It is defined by an -entry vector and an -entry vector .
It is possible that , which means that no activity is performed by the resource
: cost of this pattern.
![Page 7: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/7.jpg)
: number of all possible patterns indexed from 1 to .
The th pattern is defined by an -vector and an ‑vector .
A complete solution is then defined by
where () represents the number of occurrences of pattern .
![Page 8: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/8.jpg)
Mathematical model
The problem at hand can be modeled as
subject to
![Page 9: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/9.jpg)
Characteristics
The number of decision variables, equal to the number of possible patterns, is very large:– It exponentially increases with the size of the
problem
There are few constraints
Column generation approach fits with such problems: The number of basic variables in the simplex method is equal to the number of constraints.
![Page 10: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/10.jpg)
Branch and price
This problem can be solved by branch and price
This is a variant of the branch and bound approach
The lower bounds are computed using column generation method to solve the linear relaxation of the problem (by replacing the integer decision variables with real ones); i.e., replacing the integrality constraint with
In general, is a very large number.
It is unnecessary and costly to generate all patterns in advance.
Instead, they are generated only when they must enter the basis.
![Page 11: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/11.jpg)
Review of simplex method
Consider the problem
Minimize
subject to and .
For a basis , the problem can be rewritten as
which is equivalent to
![Page 12: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/12.jpg)
If the current basis is not optimal, at least one entry of is strictly negative. One of the columns corresponding to such entries must become basic.
The entry of this vector corresponding to a nonbasic column in is
, called reduced cost of column , where is the cost of column .
The reduced cost of any column to become basic must be strictly negative; i.e.,
Note. is the vector of dual variables corresponding to the current basis.
![Page 13: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/13.jpg)
Application of CG to the SPP
Let and be the vectors of dual variables of the current basis.
We must find a column to become basic such that the reduced cost . This is done by solving an auxiliary problem.
In the master problem, and are known for basic columns, we compute , and .
![Page 14: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/14.jpg)
In the auxiliary problem, and are known, we must compute the column to become basic.
The process is repeated until the optimality condition is satisfied (the reduced cost is nonnegative). The advantage of using column generation is the tightness of the lower bound.
![Page 15: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/15.jpg)
Process of CG
![Page 16: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/16.jpg)
A set of surgical cases (numbered from 1 to ) to be programed (if possible) during the given time horizon (typically, a week)
Ressources: time slots, surgeons, nurses, recovery beds, …
Each surgical case should be performed– When?
– In which operating room?
– By whom?
![Page 17: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/17.jpg)
OR1 OR2 OR3 OR1 OR2 OR38:00-9:009:00-10:0010:00-11:0010:00-11:0011:00-12:0012:00-13:0013:00-14:0014:00-15:0015:00-16:0016:00-17:0017:00-18:0018:00-19:0019:00-20:0020:00-21:00
Monday Tuesday
![Page 18: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/18.jpg)
Two strategies
Block scheduling: time slots are pre-assigned to surgeons, the remaining problem is to schedule the surgical cases he has to perform
Open scheduling: any time-slot can be used by any surgeons
From planning point of view, the problem is the same for both strategies.
![Page 19: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/19.jpg)
Operating room scheduling
number of surgical cases waiting to be operated;
estimated operating time of surgical case ;
number of time slots in the planning horizon;
operating cost of time slot ;
normal opening duration of time slot ;
maximal overtime of time slot ;
unit undertime cost of time slot ;
unit overtime cost of time slot ;
boolean indicating the compatibility between surgical case and time slot (deadline of the surgical case, special equipment required, …).
![Page 20: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/20.jpg)
Notes
There is a dummy time slot with unlimited capacity and with no cost.
All the surgical cases with a deadline beyond the planning horizon are compatible with this dummy time slot;
All the surgical cases which are not actually planned in the planning horizon are considered to be put into this dummy time slot.
![Page 21: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/21.jpg)
Our problem consists of partitioning the set of surgical cases (activities) among the time slots (resources) such that every surgical case is performed before or at its deadline.
The column is defined by and :
has entries: each entry is a binary number indicating whether the corresponding surgical case is included in the column.
has entries with exactly one nonzero entry. This entry must be 1 indicating that the corresponding time slot is used.
![Page 22: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/22.jpg)
Example of a column
Time slot 2
is used to perform
surgical cases 1, 3, 6 and 7.[10100110010
]
![Page 23: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/23.jpg)
Master problem
subject to
where is the th entry of , is the th entry of .
![Page 24: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/24.jpg)
Auxiliary problem
Knowing and , look for vectors and such that
where
provided that
with
representing the overtime of the time slot .
![Page 25: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/25.jpg)
Solving the auxiliary problem
When the only for which is known, the auxiliary problem
becomes which consists of finding a vector such that
![Page 26: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/26.jpg)
Instead, we solve the following problem
subject to
This problem can be decomposed into two subproblems, according that
or .
![Page 27: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/27.jpg)
First subproblem
subject to
![Page 28: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/28.jpg)
Second subproblem
subject to
![Page 29: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/29.jpg)
Both subproblems can be transformed into knapsack problems.
volume of item value of item (first subproblem)
(second subproblem)
: maximal total value of the selected items (surgical cases) among such that the total volume (processing time) is exactly in the first subproblem.
: maximal total value of the selected items (surgical cases) among such that the total volume (processing time) is exactly in the second subproblem.
![Page 30: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/30.jpg)
The minimal reduced cost for problem is given
by
The knapsack problem can also be solved by heuristic methods, for instance, best value/volume ratio policy, provided that the reduced cost is strictly negative.
![Page 31: Application of Column Generation and Branch and Price for Operating Room Planning Chengbin CHU Chair Professor of Supply Chain Management CentraleSupélec](https://reader030.vdocuments.us/reader030/viewer/2022032806/56649f065503460f94c1b36a/html5/thumbnails/31.jpg)
Interests of column generation approach
The bound generated by column generation is often very tight, few branchings are needed to find an optimal solution of the unrelaxed problem
Limits and conditions
Time-consuming
Existence of efficient methods to solve the auxiliary problem
Limits on branching strategy: After the branching, the problem must still have the same structure