Hands-on Tutorial on Optimization F. Eberle, R. Hoeksma, and N. Megow September 23, 2019 Introduction
Welcome CSLog : Combinatorial Optimization, Discrete Algorithms and Logistics Franziska Eberle Dr. Ruben Hoeksma Prof. Nicole Megow
Your background? ◮ Math, CS, others?
Your background? ◮ Math, CS, others? ◮ Bachelor, master, working?
Your background? ◮ Math, CS, others? ◮ Bachelor, master, working? ◮ Do you know what an (integer) linear program is?
Your background? ◮ Math, CS, others? ◮ Bachelor, master, working? ◮ Do you know what an (integer) linear program is? ◮ Have you modeled/solved (I)LPs?
Organization Tutorial week ◮ Mon-Fri 9:00-17:00 ◮ Wednesday special: guest tutorial FICO XPRESS ◮ Each day: theory and practice
Organization Tutorial week ◮ Mon-Fri 9:00-17:00 ◮ Wednesday special: guest tutorial FICO XPRESS ◮ Each day: theory and practice Interactive!!!
Organization Tutorial week ◮ Mon-Fri 9:00-17:00 ◮ Wednesday special: guest tutorial FICO XPRESS ◮ Each day: theory and practice Interactive!!! Practical assignment ◮ Homework in groups (modeling, problem solving, report) ◮ Details on Friday ◮ Duration approx. 2 weeks ◮ Report and short code presentation
Some examples of discrete optimization problems (precise definition later)
Example 1: Port logistics ◮ How to stack containers? (weight, order of arrival/removal) ◮ How to schedule crane operations and truck/train un/loading? ◮ Typical goals: minimize total time or maximize throughput
Example 2: Production planning ◮ Temporal planning of steel flow ◮ Constraints: timing, resource capacity ◮ Min number strand interruptions
Example 3: Timetabling ◮ How to find a (periodic) timetable for tram, bus, trains? ◮ Collision-free routing respecting many timing constraints ◮ Minimize waiting time (for passenger and/or vehicles) or number of required trains/vehicles
Example 4: Location planning ◮ Selecting the placement of facilities such as factories, warehouses, ATMs, supermarkets, cell phone towers, etc. ◮ Guarantee coverage or other service quality ◮ Minimize total weighted distances from suppliers to customers ◮ Minimize total cost (opening facility plus service cost)
Example 5: Network design and routing ◮ Add resources such as links, routers and switches into the network ◮ Establish connectivity or find paths/tours ◮ Reliability: robust against edge failure ◮ Minimize total cost of a tour or for creating a network
Content and goals Recognize problems Modeling Classical discrete or linear optimization problems Solve problems Some theory background geometry of LPs, du- ality theory, solution methods: branch & bound, cutting planes, column generation
Mathematical Optimization Optimization problem Given a set X of feasible solutions and an objective function f : X → R , find a solution x ∗ ∈ X with maximal (min.) objective function value, i.e. for all x ∈ X holds: f ( x ∗ ) ≥ f ( x ) ( f ( x ∗ ) ≤ f ( x )).
Mathematical Optimization Optimization problem Given a set X of feasible solutions and an objective function f : X → R , find a solution x ∗ ∈ X with maximal (min.) objective function value, i.e. for all x ∈ X holds: f ( x ∗ ) ≥ f ( x ) ( f ( x ∗ ) ≤ f ( x )). In short: max f ( x ) s . t . x ∈ X
Mathematical Optimization Optimization problem Given a set X of feasible solutions and an objective function f : X → R , find a solution x ∗ ∈ X with maximal (min.) objective function value, i.e. for all x ∈ X holds: f ( x ∗ ) ≥ f ( x ) ( f ( x ∗ ) ≤ f ( x )). In short: max f ( x ) Or simply: max { f ( x ) | x ∈ X } s . t . x ∈ X
Mathematical Optimization Optimization problem Given a set X of feasible solutions and an objective function f : X → R , find a solution x ∗ ∈ X with maximal (min.) objective function value, i.e. for all x ∈ X holds: f ( x ∗ ) ≥ f ( x ) ( f ( x ∗ ) ≤ f ( x )). In short: max f ( x ) Or simply: max { f ( x ) | x ∈ X } s . t . x ∈ X ◮ x ∗ is called optimal solution
Mathematical Optimization Optimization problem Given a set X of feasible solutions and an objective function f : X → R , find a solution x ∗ ∈ X with maximal (min.) objective function value, i.e. for all x ∈ X holds: f ( x ∗ ) ≥ f ( x ) ( f ( x ∗ ) ≤ f ( x )). In short: max f ( x ) Or simply: max { f ( x ) | x ∈ X } s . t . x ∈ X ◮ x ∗ is called optimal solution Too general to say anything meaningful!
Linear Optimization ◮ Objective function is a linear function f ( x ) = x 1 − 3 x 2 + 2 x 3 where x 1 , x 2 , x 3 are variables f ( x ) = 2 x 1 + a and a , b are parameters b x 2
Linear Optimization ◮ Objective function is a linear function f ( x ) = x 1 − 3 x 2 + 2 x 3 where x 1 , x 2 , x 3 are variables f ( x ) = 2 x 1 + a and a , b are parameters b x 2 ◮ X is described by finitely many linear inequalities (constraints) x 1 − 3 x 2 ≤ 3 ax 1 + 5 x 2 ≤ 12
Linear Optimization ◮ Objective function is a linear function f ( x ) = x 1 − 3 x 2 + 2 x 3 where x 1 , x 2 , x 3 are variables f ( x ) = 2 x 1 + a and a , b are parameters b x 2 ◮ X is described by finitely many linear inequalities (constraints) x 1 − 3 x 2 ≤ 3 ax 1 + 5 x 2 ≤ 12 ◮ Sometimes x ∈ Z required (integer linear program, ILP)
Linear Optimization ◮ Objective function is a linear function f ( x ) = x 1 − 3 x 2 + 2 x 3 where x 1 , x 2 , x 3 are variables f ( x ) = 2 x 1 + a and a , b are parameters b x 2 ◮ X is described by finitely many linear inequalities (constraints) x 1 − 3 x 2 ≤ 3 ax 1 + 5 x 2 ≤ 12 ◮ Sometimes x ∈ Z required (integer linear program, ILP) Now: small teaser example – detailed modeling intro follows.
Example: Pizza and Lasagne Ingredients: Pizza Lasagne available Tomatoes 2 3 18 Cheese 4 3 24
Example: Pizza and Lasagne Ingredients: Pizza Lasagne available Tomatoes 2 3 18 Cheese 4 3 24 Profit: Pizza 8 � , Lasagne 7 �
Example: Pizza and Lasagne Ingredients: Pizza Lasagne available Tomatoes 2 3 18 Cheese 4 3 24 Profit: Pizza 8 � , Lasagne 7 � Task: Determine optimal producible number of pizza and lasagne to maximize total profit.
Example: Pizza and Lasagne Ingredients: Pizza Lasagne available Tomatoes 2 3 18 Cheese 4 3 24 Profit: Pizza 8 � , Lasagne 7 � Task: Determine optimal producible number of pizza and lasagne to maximize total profit. → Modeling and graphical solution at the board
Example: Pizza and Lasagne LP Model x = number of produced pizzas y = number of produced lasagne max 8 x 1 + 7 x 2 (profit) s . t . 2 x 1 + 3 x 2 ≤ 18 (tomato) 4 x 1 + 3 x 2 ≤ 24 (cheese) x 1 , x 2 ≥ 0 Graphical representation and solution
Recommend
More recommend