CPS Brief introduction to linear and mixed integer programming

Slides:



Advertisements
Similar presentations
Mixed integer linear programming
Advertisements

Branch-and-Bound Technique for Solving Integer Programs
Solving IPs – Cutting Plane Algorithm General Idea: Begin by solving the LP relaxation of the IP problem. If the LP relaxation results in an integer solution,
Linear programming: lp_solve, max flow, dual CSC 282 Fall 2013.
Branch-and-Bound In this handout,  Summary of branch-and-bound for integer programs Updating the lower and upper bounds for OPT(IP) Summary of fathoming.
© Imperial College London Eplex: Harnessing Mathematical Programming Solvers for Constraint Logic Programming Kish Shen and Joachim Schimpf IC-Parc.
Lecture 10: Integer Programming & Branch-and-Bound
Progress in Linear Programming Based Branch-and-Bound Algorithms
Introduction to Linear and Integer Programming
 Topic: Fundamental concepts and algorithmic methods for solving linear and integer linear programs:  Simplex method  LP duality  Ellipsoid method.
Computational problems, algorithms, runtime, hardness
Instructor Neelima Gupta Table of Contents Lp –rounding Dual Fitting LP-Duality.
Solving Integer Programs. Natural solution ideas that don’t work well Solution idea #1: Explicit enumeration: Try all possible solutions and pick the.
Linear Programming and Approximation
1 Introduction to Linear and Integer Programming Lecture 9: Feb 14.
INFM 718A / LBSC 705 Information For Decision Making Lecture 4.
Computational Methods for Management and Economics Carla Gomes
EMGT 501 HW # (b) (c) 6.1-4, Due Day: Sep. 21.
Optimization for Network Planning Includes slide materials developed by Wayne D. Grover, John Doucette, Dave Morley © Wayne D. Grover 2002, 2003 E E 681.
Integer Programming Difference from linear programming –Variables x i must take on integral values, not real values Lots of interesting problems can be.
Branch and Bound Algorithm for Solving Integer Linear Programming
AMPL Presentation 1 By Raymond Kleinberg Outline AMPL - Ugh! - What is it good for? Basics Starting a Problem Running the Problem Example.
1 Contents college 3 en 4 Book: Appendix A.1, A.3, A.4, §3.4, §3.5, §4.1, §4.2, §4.4, §4.6 (not: §3.6 - §3.8, §4.2 - §4.3) Extra literature on resource.
Optimization of Linear Problems: Linear Programming (LP) © 2011 Daniel Kirschen and University of Washington 1.
LP formulation of Economic Dispatch
1 Lecture 4 Maximal Flow Problems Set Covering Problems.
Linear Programming David Kauchak cs161 Summer 2009.
Operations Research Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester ITGD4207 University of Palestine.
Types of IP Models All-integer linear programs Mixed integer linear programs (MILP) Binary integer linear programs, mixed or all integer: some or all of.
Integer Programming Key characteristic of an Integer Program (IP) or Mixed Integer Linear Program (MILP): One or more of the decision variable must be.
CPS 270: Artificial Intelligence More search: When the path to the solution doesn’t matter Instructor: Vincent.
MILP algorithms: branch-and-bound and branch-and-cut
WOOD 492 MODELLING FOR DECISION SUPPORT
1 Max 8X 1 + 5X 2 (Weekly profit) subject to 2X 1 + 1X 2  1000 (Plastic) 3X 1 + 4X 2  2400 (Production Time) X 1 + X 2  700 (Total production) X 1.
1 Lagrangean Relaxation --- Bounding through penalty adjustment.
OR Chapter 1. Introduction  Ex : Diet Problem Daily requirements : energy(2000kcal), protein(55g), calcium(800mg) Food Serving size Energy (kcal)
1.224J Recitation #2 Integer Programs. Topics Questions & office hrs Sensitivity analysis review Importance of linear IP formulation –Branch and bound.
15.053Tuesday, April 9 Branch and Bound Handouts: Lecture Notes.
CPS Brief introduction to linear and mixed integer programming
Integer LP In-class Prob
CPS 173 Linear programming, integer linear programming, mixed integer linear programming
Lagrangean Relaxation
Lecture.6. Table of Contents Lp –rounding Dual Fitting LP-Duality.
CPS Computational problems, algorithms, runtime, hardness (a ridiculously brief introduction to theoretical computer science) Vincent Conitzer.
IE 312 Review 1. The Process 2 Problem Model Conclusions Problem Formulation Analysis.
A Two-Phase Linear programming Approach for Redundancy Problems by Yi-Chih HSIEH Department of Industrial Management National Huwei Institute of Technology.
Chapter 6 Optimization Models with Integer Variables.
1 Geometrical solution of Linear Programming Model.
Discrete Optimization MA2827 Fondements de l’optimisation discrète Material from P. Van Hentenryck’s course.
0 Integer Programming Introduction to Integer Programming (IP) Difficulties of LP relaxation IP Formulations Branch and Bound Algorithms Reference: Chapter.
Computational problems, algorithms, runtime, hardness
ADVANCED COMPUTATIONAL MODELS AND ALGORITHMS
integer linear programming, mixed integer linear programming
Lecture 11: Tree Search © J. Christopher Beck 2008.
The CPLEX Library: Mixed Integer Programming
Instructor: Vincent Conitzer
Chapter 6. Large Scale Optimization
MIP Tools Branch and Cut with Callbacks Lazy Constraint Callback
Instructors: Fei Fang (This Lecture) and Dave Touretzky
Linear Programming and Approximation
Linear Programming Duality, Reductions, and Bipartite Matching
integer linear programming, mixed integer linear programming
Brief introduction to linear and mixed integer programming
CPS 173 Computational problems, algorithms, runtime, hardness
Algorithm Design Methods
We have the following incomplete B&B tree:
Solution methods for NP-hard Discrete Optimization Problems
Branch-and-Bound Algorithm for Integer Program
Integer Programming (IP)
Discrete Optimization
Presentation transcript:

CPS 590.4 Brief introduction to linear and mixed integer programming Vincent Conitzer conitzer@cs.duke.edu

Linear programs: example We make reproductions of two paintings maximize 3x + 2y subject to 4x + 2y ≤ 16 x + 2y ≤ 8 x + y ≤ 5 x ≥ 0 y ≥ 0 Painting 1 sells for $30, painting 2 sells for $20 Painting 1 requires 4 units of blue, 1 green, 1 red Painting 2 requires 2 blue, 2 green, 1 red We have 16 units blue, 8 green, 5 red

Solving the linear program graphically maximize 3x + 2y subject to 4x + 2y ≤ 16 x + 2y ≤ 8 x + y ≤ 5 x ≥ 0 y ≥ 0 8 6 4 optimal solution: x=3, y=2 2 2 4 6 8

Optimal solution: x = 2.5, y = 2.5 Modified LP maximize 3x + 2y subject to 4x + 2y ≤ 15 x + 2y ≤ 8 x + y ≤ 5 x ≥ 0 y ≥ 0 Optimal solution: x = 2.5, y = 2.5 Solution value = 7.5 + 5 = 12.5 Half paintings?

Integer (linear) program maximize 3x + 2y subject to 4x + 2y ≤ 15 x + 2y ≤ 8 x + y ≤ 5 x ≥ 0, integer y ≥ 0, integer 8 optimal IP solution: x=2, y=3 (objective 12) 6 optimal LP solution: x=2.5, y=2.5 (objective 12.5) 4 2 4 6 8 2

Mixed integer (linear) program maximize 3x + 2y subject to 4x + 2y ≤ 15 x + 2y ≤ 8 x + y ≤ 5 x ≥ 0 y ≥ 0, integer 8 optimal IP solution: x=2, y=3 (objective 12) 6 optimal LP solution: x=2.5, y=2.5 (objective 12.5) 4 optimal MIP solution: x=2.75, y=2 (objective 12.25) 2 4 6 8 2

Solving linear/integer programs Linear programs can be solved efficiently Simplex, ellipsoid, interior point methods… (Mixed) integer programs are NP-hard to solve Quite easy to model many standard NP-complete problems as integer programs (try it!) Search type algorithms such as branch and bound Standard packages for solving these GNU Linear Programming Kit, CPLEX, … LP relaxation of (M)IP: remove integrality constraints Gives upper bound on MIP (~admissible heuristic)

Exercise in modeling: knapsack-type problem We arrive in a room full of precious objects Can carry only 30kg out of the room Can carry only 20 liters out of the room Want to maximize our total value Unit of object A: 16kg, 3 liters, sells for $11 There are 3 units available Unit of object B: 4kg, 4 liters, sells for $4 There are 4 units available Unit of object C: 6kg, 3 liters, sells for $9 Only 1 unit available What should we take?

Exercise in modeling: cell phones (set cover) We want to have a working phone in every continent (besides Antarctica) … but we want to have as few phones as possible Phone A works in NA, SA, Af Phone B works in E, Af, As Phone C works in NA, Au, E Phone D works in SA, As, E Phone E works in Af, As, Au Phone F works in NA, E

Exercise in modeling: hot-dog stands We have two hot-dog stands to be placed in somewhere along the beach We know where the people that like hot dogs are, how far they are willing to walk Where do we put our stands to maximize #hot dogs sold? (price is fixed) location: 1 #customers: 2 willing to walk: 4 location: 4 #customers: 1 willing to walk: 2 location: 7 #customers: 3 willing to walk: 3 location: 9 #customers: 4 willing to walk: 3 location: 15 #customers: 3 willing to walk: 2