Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial...

20
Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa Dipartimento di Matematica, Universit` a di Padova De Giovanni, Di Summa MeMoCO 1 / 11

Transcript of Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial...

Page 1: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Methods and Models for Combinatorial OptimizationIntroduction

Luigi De Giovanni, Marco Di Summa

Dipartimento di Matematica, Universita di Padova

De Giovanni, Di Summa MeMoCO 1 / 11

Page 2: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Contacts

Luigi De Giovanni

Dipartimento di Matematicaoffice 427

tel. 049 827 1349

[email protected]

office hours: Thursday, h 10:30 - 12:30(please, book via email)

Marco Di Summa

Dipartimento di Matematicaoffice 422

tel. 049 827 1348

[email protected]

Course webpage

http://www.math.unipd.it/∼luigi/courses/metmodoc.html

De Giovanni, Di Summa MeMoCO 2 / 11

Page 3: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Course goals

Introduction to advanced modelling and solution techniques forcombinatorial optimization problems in decision supporting.

The course aims at providing mathematical and algorithmic tools tosolve optimization problems of practical interest, also with the use ofthe most popular software packages or libraries.

De Giovanni, Di Summa MeMoCO 3 / 11

Page 4: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Combinatorial optimization problem: example 1

10 x display

18 x logic 12 x Tx

21 x

10 x led

9 x

Objective

Decision:How many A, B?

Model A

Model B

De Giovanni, Di Summa MeMoCO 4 / 11

Page 5: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

The space of feasible combinations

”Easy” to find a feasible solution

”Easy” to find the optimal solution if all the feasible combinationscan be explored

but, what if the number of product models and/or resources is large?

How to manage the combinatorial explosionof the size of the solution space?

Quantum computing? Still “not operational...”

Now and in the next future: MeMoC(O)

De Giovanni, Di Summa MeMoCO 5 / 11

Page 6: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

The space of feasible combinations

”Easy” to find a feasible solution

”Easy” to find the optimal solution if all the feasible combinationscan be explored

but, what if the number of product models and/or resources is large?

How to manage the combinatorial explosionof the size of the solution space?

Quantum computing? Still “not operational...”

Now and in the next future: MeMoC(O)

De Giovanni, Di Summa MeMoCO 5 / 11

Page 7: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

The space of feasible combinations

”Easy” to find a feasible solution

”Easy” to find the optimal solution if all the feasible combinationscan be explored

but, what if the number of product models and/or resources is large?

How to manage the combinatorial explosionof the size of the solution space?

Quantum computing? Still “not operational...”

Now and in the next future: MeMoC(O)

De Giovanni, Di Summa MeMoCO 5 / 11

Page 8: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Combinatorial optimization problems: example 2

A farmer owns 12 hectares of land where he can grow potatoes ortomatoes. Beyond the land, the available resources are: 70 kg of tomatoseeds, 18 tons of potato tubers, 160 tons of fertilizer. The farmer knowsthat all his production can be sold with a net gain of 3000 Euros perhectare of tomatoes and 5000 Euros per hectare of potatoes. Each hectareof tomatoes needs 7 kg seeds and 10 tons fertilizer. Each hectare ofpotatoes needs 3 tons tubers and 20 tons fertilizer. How does the farmerdivide his land in order to gain as much as possible from the availableresources?

De Giovanni, Di Summa MeMoCO 6 / 11

Page 9: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: formulation

Declare “what” is the solution, instead of stating “how” it is found

What should we decide? Decision variablesxT ≥ 0, xP ≥ 0

What should be optimized? Objective as a function of the decisionvariables

max 3000 xT + 5000 xP

What are the characteristics of the feasible combinations of values forthe decisions variables? Constraints as mathematical relationsamong decision variables

xT + xP ≤ 12 (land)7 xT ≤ 70 (tomato seeds)

3 xP ≤ 18 (potato tubers)10 xT + 20 xP ≤ 160 (fertilizer)

De Giovanni, Di Summa MeMoCO 7 / 11

Page 10: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: formulation

Declare “what” is the solution, instead of stating “how” it is found

What should we decide? Decision variablesxT ≥ 0, xP ≥ 0

What should be optimized? Objective as a function of the decisionvariables

max 3000 xT + 5000 xP

What are the characteristics of the feasible combinations of values forthe decisions variables? Constraints as mathematical relationsamong decision variables

xT + xP ≤ 12 (land)7 xT ≤ 70 (tomato seeds)

3 xP ≤ 18 (potato tubers)10 xT + 20 xP ≤ 160 (fertilizer)

De Giovanni, Di Summa MeMoCO 7 / 11

Page 11: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: formulation

Declare “what” is the solution, instead of stating “how” it is found

What should we decide? Decision variablesxT ≥ 0, xP ≥ 0

What should be optimized? Objective as a function of the decisionvariables

max 3000 xT + 5000 xP

What are the characteristics of the feasible combinations of values forthe decisions variables? Constraints as mathematical relationsamong decision variables

xT + xP ≤ 12 (land)7 xT ≤ 70 (tomato seeds)

3 xP ≤ 18 (potato tubers)10 xT + 20 xP ≤ 160 (fertilizer)

De Giovanni, Di Summa MeMoCO 7 / 11

Page 12: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: formulation

Declare “what” is the solution, instead of stating “how” it is found

What should we decide? Decision variablesxT ≥ 0, xP ≥ 0

What should be optimized? Objective as a function of the decisionvariables

max 3000 xT + 5000 xP

What are the characteristics of the feasible combinations of values forthe decisions variables? Constraints as mathematical relationsamong decision variables

xT + xP ≤ 12 (land)7 xT ≤ 70 (tomato seeds)

3 xP ≤ 18 (potato tubers)10 xT + 20 xP ≤ 160 (fertilizer)

De Giovanni, Di Summa MeMoCO 7 / 11

Page 13: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: solution!

De Giovanni, Di Summa MeMoCO 8 / 11

Page 14: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: solution!

Gradient of the objective function

7 xL = 70

3000 xL + 5000 xP = K

K = 27000

K = 34500

K = 44000

De Giovanni, Di Summa MeMoCO 8 / 11

Page 15: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Using a mathematical model: solution!

Gradient of the objective function

7 xL = 70

3000 xL + 5000 xP = K

K = 27000

K = 34500

K = 44000

Linear relations: Linear Programming (LP) models

De Giovanni, Di Summa MeMoCO 8 / 11

Page 16: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

From decision problem to solution:the Operations Research approach

Real decision problem

Solutions of thereal problem

Model

Solutions of the model

Formulation

Deduction

Interpretation

Interpretation

Formulation: models (mathematical, graph, simulation, gametheory), solution representation ...

Deduction: quantitative methods, efficient algorithms

De Giovanni, Di Summa MeMoCO 9 / 11

Page 17: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

MeMoCO: Preliminary Programme

Review, advanced topics and application of LP and DualityI LP models, simplex method, basic notions of duality theory- Column generation technique for large size linear programming models- Applications: production planning optimization, network flows

Advanced methods for Mixed Integer Linear Programming (MILP)- Alternative formulations, Branch & Bound, Branch & Cut- Applications: TSP, Facility Location, Set Covering etc.

Meta-heuristics for Combinatorial Optimization- Neighbourhood search and variants- Genetic Algorithms

Network Optimization- Modelling optimization problems on graphs

Labs- On-line optimization servers (e.g., NEOS)- Optimization software and Algebraic modelling languages (e.g. AMPL,IBM-OPL)

- Optimization libraries (e.g. IBM Cplex, Coin-OR, Scip)

De Giovanni, Di Summa MeMoCO 10 / 11

Page 18: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Practical info

Schedule:I Thursday, Friday 8:30 - 10:30I room 1BC50 or LabTA (always check!)

Textbooks and course materialI Lecture notes provided by the teacher + articles from scientific journals

(available before the class: read them!)I Optimization software packages available on line and in labsI http://www.math.unipd.it/∼luigi/courses/metmodoc/metmodoc.html

Examination methodsI Two lab exercises: implementation of 1) a MILP model and 2) a

metaheuristic, to be delivered some days before the oral examination.Mandatory [1-10 /30, minimum 5]

I Oral examination on course contents.Mandatory [1-20 /30, minimum 10].

I Short project. Discretionary [+2 to +6 /30] (e.g., after the oral toimprove the score if necessary)

De Giovanni, Di Summa MeMoCO 11 / 11

Page 19: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Practical info

Schedule:I Thursday, Friday 8:30 - 10:30I room 1BC50 or LabTA (always check!)

Textbooks and course materialI Lecture notes provided by the teacher + articles from scientific journals

(available before the class: read them!)I Optimization software packages available on line and in labsI http://www.math.unipd.it/∼luigi/courses/metmodoc/metmodoc.html

Examination methodsI Two lab exercises: implementation of 1) a MILP model and 2) a

metaheuristic, to be delivered some days before the oral examination.Mandatory [1-10 /30, minimum 5]

I Oral examination on course contents.Mandatory [1-20 /30, minimum 10].

I Short project. Discretionary [+2 to +6 /30] (e.g., after the oral toimprove the score if necessary)

De Giovanni, Di Summa MeMoCO 11 / 11

Page 20: Methods and Models for Combinatorial Optimization · Methods and Models for Combinatorial Optimization Introduction Luigi De Giovanni, Marco Di Summa ... combinatorial optimization

Practical info

Schedule:I Thursday, Friday 8:30 - 10:30I room 1BC50 or LabTA (always check!)

Textbooks and course materialI Lecture notes provided by the teacher + articles from scientific journals

(available before the class: read them!)I Optimization software packages available on line and in labsI http://www.math.unipd.it/∼luigi/courses/metmodoc/metmodoc.html

Examination methodsI Two lab exercises: implementation of 1) a MILP model and 2) a

metaheuristic, to be delivered some days before the oral examination.Mandatory [1-10 /30, minimum 5]

I Oral examination on course contents.Mandatory [1-20 /30, minimum 10].

I Short project. Discretionary [+2 to +6 /30] (e.g., after the oral toimprove the score if necessary)

De Giovanni, Di Summa MeMoCO 11 / 11