520 likes | 674 Views
MIPing the Probabilistic Integer Programming Problem. Anureet Saxena ACO PhD Student, Tepper School of Business, Carnegie Mellon University. (Joint Work with Vineet Goyal and Miguel Lejuene). Why Probabilistic Programming?. Fixed Cost. Transportation Cost. Demand Constraints.
E N D
MIPing the Probabilistic Integer Programming Problem Anureet Saxena ACO PhD Student, Tepper School of Business, Carnegie Mellon University. (Joint Work with Vineet Goyal and Miguel Lejuene)
Why Probabilistic Programming? Fixed Cost Transportation Cost Demand Constraints Capacity Constraints Set of Customers Set of Facilities
Why Probabilistic Programming? Fixed Cost Transportation Cost Demand Constraints Capacity Constraints • Uncertain Future • Population Shift • Evolution of Market Trends • Ford opens a manufacturing unit • Google closes its R&D center Set of Customers Set of Facilities
Why Probabilistic Programming? A random 0/1 vector which incorporates the uncertain future into the optimization model
Why Probabilistic Programming? Reliability Level Probabilistic Constraint
Probabilistic MIP Model Random 0/1 Vector (Joint Distribution) Reliability Level Probabilistic Deterministic
Why Probabilistic Programming? • Facility Location • Strategic Planning • Population shift • Evolution of market trends • Demographic Changes • Contingency Service • Minimum Reliability Principle • Production Design and Manufacturing • Uncertain Demand • Lot Sizing and Inventory Problems Must Read! Strategic facility location by Owen and Daskin
A Simple Algorithm Random 0/1 Vector (Joint Distribution) Reliability Level • Enumerate all possible 0/1 realizations of . • For each 0/1 realization whose cdf is greater than or equal to p, solve the deterministic problem
Prekopa, Beraldi, Ruszczynski Approach 111 110 101 011 100 010 001 000
Prekopa, Beraldi, Ruszczynski Approach p-efficient frontier
2-Phase Algorithm Enumeration of p-efficient points Solving a Deterministic Problem for each p-efficient point
2-Phase Algorithm Enumeration of p-efficient points Independent Solving a Deterministic Problem for each p-efficient point
Beraldi & Ruszczynski Approach Explosive Growth In computation time scp41 scp42
2-Phase Algorithm Pitfall Enumeration of p-efficient points Solving a Deterministic Problem for each p-efficient point
Our Approach Integrate the 2-phases Enumeration of p-efficient points Solving a Deterministic Problem for each p-efficient point
Our Approach Integrate the 2-phases Enumeration of p-efficient points Independent Solving a Deterministic Problem for each p-efficient point
Our Model Log of cumulative probability of block t Non-Linear MIPing
Our Model Log of cumulative probability of block t
Our Model Log of cumulative probability of block t
Beraldi & Ruszczynski Approach: Comparison All instances solved in less than 1sec by CPLEX 9.0. CPLEX enumerated less than 50 nodes solving most instances at the root node scp41 scp42
Key Observations • Models any arbitrary distribution • Exponential number of constraints for each block • Linear in the input size for generic distribution • Encodes the enumeration phase as a Mixed Integer Program • Allows us to exploit state-of-art MIP solvers to perform intelligent enumeration.
Key Observations • Models any arbitrary distribution • Exponential number of constraints for each block • Linear in the input size for generic distribution • Encodes the enumeration phase as a Mixed Integer Program • Allows us to exploit state-of-art MIP solvers to perform intelligent enumeration. Research Question The model has an exponential number of constraints for each block. Is there a way to reduce the number of constraints?
Refined Formulation Add t constraints only for lattice points above the frontier Set-Covering Constraint for maximally p-inefficient points
Refined Formulation Block Size10
A Tough Instance - p31 • SSCFLP instance from the Holmberg test-bed • 30 facilities and 150 customers • Deterministic instance can be solved in 80 sec. • Probabilistic instance has 15 blocks of size 10 each • CPLEX was unable to solve the probabilistic instance within 2 hours!!
A Tough Instance - p31 Research Question Why is this instance so difficult to solve?
Answer Big-M Constraints
Polarity Cuts Facets of P can strengthen the model Big-M Constraints model P
Polarity Cuts • We know all the extreme points and extreme rays of P • Compact description of polar • Facets of P can be found by solving the linear program derived from the polar • The linear program has lot more rows than columns – dual simplex algorithm.
A Tough Instance - p31 • Tough Instance Solved • % Gap closed at Root Node 67.84% • Time Spent in Strengthening 0.83 sec • Time Spent in Solving Separation LP 0.30 sec • Time Taken by CPLEX 9.0 after Strengthening 51.65 sec • No. of Branch-and-Bound enumerated by CPLEX 9.0 2300 • Total time taken to solve the instance to optimality 53.04 sec
Computational Results • Implementation • COIN-OR Modules • CPLEX 9.0 • Selection Criterion • ORLIB & Holmberg Instances • Instances which can be solved in 1hr • Computational Power • P4 Processor • 2GB RAM • Library of Instances – PCPLIB
Test Bed • 2 Distributions – as in BR [2002] • 4 Reliability levels – 0.80, 0.85, 0.90, 0.95 • 2 Block Sizes – 5, 10 • Total Number of Instances per Deterministic Instance = 16
Value of Information Empirical Observation Probabilistic versions of simple and moderately difficult mixed integer programs can themselves be formulated as MIPs which can be solved in reasonable amount of time.
Structured Distributions Research Question Is it possible to exploit structure of distributions to design models which are polynomial in the input size?
Stationary Distributions Definition A distribution function F is said to be stationary if F(z) depends only on the number of ones in z. Principle of Indistinguishability.
Stationary Distributions 111 110 101 011 100 010 001 000
Stationary Distributions Can be converted to a MIP with linear number of additional variables and constraints!!
Stationary Distributions A model with linear number of variables and constraints!!
Stationary Distributions • 8 Block Sizes: 5, 10, 20, 50, m/4, m/3, m/2, m • 4 Threshold Probabilities: 0.80, 0.85, 0.90, 0.95 • Number of Instances per deterministic instance= 32
Stationary Distributions Research Question What is that unique property of stationary distributions which allowed us to design a linear sized model? Disjunctive Shattering Property The lattice of a stationary distribution can be partitioned into polynomial number of pieces each of which has a polynomial sized description.
Stationary Distributions 111 110 101 011 100 010 001 000
Summary Super Linear Speedup MIP Model BR Algorithm p-Inefficiency Refinement Polarity Cuts Strengthening Stationary Distributions Computational Results