Modeling What is a model? What is a model? In general A - - PowerPoint PPT Presentation

modeling what is a model what is a model
SMART_READER_LITE
LIVE PREVIEW

Modeling What is a model? What is a model? In general A - - PowerPoint PPT Presentation

Hands-on Tutorial on Optimization F. Eberle, R. Hoeksma, and N. Megow September 24, 2018 Modeling What is a model? What is a model? In general A representation of a real thing. What is a model? In general A representation of a real thing.


slide-1
SLIDE 1

Hands-on Tutorial on Optimization

  • F. Eberle, R. Hoeksma, and N. Megow

September 24, 2018

Modeling

slide-2
SLIDE 2

What is a model?

slide-3
SLIDE 3

What is a model?

In general

A representation of a real thing.

slide-4
SLIDE 4

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

slide-5
SLIDE 5

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original)

slide-6
SLIDE 6

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (often larger than the original)

slide-7
SLIDE 7

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (often larger than the original) ◮ Model of a human skeleton (same size as the original)

slide-8
SLIDE 8

Example

The real thing Models

slide-9
SLIDE 9

Example

The real thing Models

slide-10
SLIDE 10

Example

The real thing Models

slide-11
SLIDE 11

Example

The real thing Models

slide-12
SLIDE 12

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation)

slide-13
SLIDE 13

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation) ◮ All information necessary for some purpose

slide-14
SLIDE 14

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation) ◮ All information necessary for some purpose

Example: Small World factory produces globes and maps

slide-15
SLIDE 15

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation) ◮ All information necessary for some purpose

Example: Small World factory produces globes and maps

◮ List of materials: wood, metal, plastics, screws, paper, and glue

slide-16
SLIDE 16

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation) ◮ All information necessary for some purpose

Example: Small World factory produces globes and maps

◮ List of materials: wood, metal, plastics, screws, paper, and glue ◮ Prices, supply, demand

slide-17
SLIDE 17

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation) ◮ All information necessary for some purpose

Example: Small World factory produces globes and maps

◮ List of materials: wood, metal, plastics, screws, paper, and glue ◮ Prices, supply, demand ◮ Print patterns

slide-18
SLIDE 18

What is a model?

In general

A representation of a real thing.

◮ Concrete models - models that you can touch

◮ Model car (smaller than the original) ◮ Model of an insect (larger than the original) ◮ Model of a human skeleton (same size as the original)

◮ Abstract models

◮ Description of a real thing (situation) ◮ All information necessary for some purpose

Example: Small World factory produces globes and maps

◮ List of materials: wood, metal, plastics, screws, paper, and glue ◮ Prices, supply, demand ◮ Print patterns ◮ Assembly procedures

slide-19
SLIDE 19

Why use models?

Gain information by:

◮ examining concrete models

slide-20
SLIDE 20

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties

slide-21
SLIDE 21

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them)

slide-22
SLIDE 22

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them) ◮ analyzing abstract/mathematical models

slide-23
SLIDE 23

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them) ◮ analyzing abstract/mathematical models

Use the gained information to:

slide-24
SLIDE 24

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them) ◮ analyzing abstract/mathematical models

Use the gained information to:

◮ Cut costs

slide-25
SLIDE 25

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them) ◮ analyzing abstract/mathematical models

Use the gained information to:

◮ Cut costs ◮ Increase productivity

slide-26
SLIDE 26

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them) ◮ analyzing abstract/mathematical models

Use the gained information to:

◮ Cut costs ◮ Increase productivity ◮ Make predictions

slide-27
SLIDE 27

Why use models?

Gain information by:

◮ examining concrete models ◮ getting an overview of important properties ◮ constructing concrete/abstract models (think about them) ◮ analyzing abstract/mathematical models

Use the gained information to:

◮ Cut costs ◮ Increase productivity ◮ Make predictions ◮ Automate decision processes

slide-28
SLIDE 28

Modeling

Real world situation

slide-29
SLIDE 29

Modeling

Real world situation Model Formulation

slide-30
SLIDE 30

Modeling

Real world situation Model Mathematical solution Formulation Analysis/solver

slide-31
SLIDE 31

Modeling

Real world situation Model Mathematical solution Real solution Formulation Analysis/solver Interpretation

slide-32
SLIDE 32

Modeling

Real world situation Model Mathematical solution Real solution Formulation Analysis/solver Interpretation Evalutation

slide-33
SLIDE 33

Mathematical models

Formulation

◮ Mathematical language ◮ Parameters: known data ◮ Variables: unknown (decisions) ◮ Operators:

◮ ×, +, − , =, =, <, ≥, and, or,

  • ,

Formulation should fit the available solution methods

◮ Mathematical theory ◮ Algorithms

slide-34
SLIDE 34

Types of mathematical models

Many types of mathematical models, e.g.:

◮ linear vs. non-linear ◮ stochastic vs. deterministic ◮ continuous vs. discrete ◮ dynamic vs. static

slide-35
SLIDE 35

Types of mathematical models

Many types of mathematical models, e.g.:

◮ linear vs. non-linear ◮ stochastic vs. deterministic ◮ continuous vs. discrete ◮ dynamic vs. static

In this course:

◮ (integer) linear programming models (ILP/LP) ◮ mathematically assisted decision making ◮ optimization according to objectives

slide-36
SLIDE 36

Linear programming

Question → (linear) objective function Data → parameters Possible decisions → variables Conditions that have to be met → (linear) constraints

slide-37
SLIDE 37

Linear programming

Question → (linear) objective function Data → parameters Possible decisions → variables Conditions that have to be met → (linear) constraints Structure of an (I)LP min / max [linear objective function] s.t. [linear constraints]

slide-38
SLIDE 38

Linear programming

Question → (linear) objective function Data → parameters Possible decisions → variables Conditions that have to be met → (linear) constraints Example min x + 2y s.t. x + 1 2y ≤ 7 x ≥ y x ≥ 0 y ≥ 0

slide-39
SLIDE 39

Which expressions work, which do not?

◮ Variables: x, y ◮ Parameters: a, b, c

Linear:

slide-40
SLIDE 40

Which expressions work, which do not?

◮ Variables: x, y ◮ Parameters: a, b, c

Linear: x + y = 9 ax − by ≤ c a b x = y (x − 1)b ≤ a(1 − y)

slide-41
SLIDE 41

Which expressions work, which do not?

◮ Variables: x, y ◮ Parameters: a, b, c

Linear: x + y = 9 ax − by ≤ c a b x = y (x − 1)b ≤ a(1 − y) Non-linear: xa + y2 ≥ 9 xy − ay ≤ c ex ≥ y

slide-42
SLIDE 42

Example - Potato chips factory

Client owns a potato chips factory

slide-43
SLIDE 43

Example - Potato chips factory

Client owns a potato chips factory Two types of chips

◮ Plain chips ◮ Mexican ribble chips

slide-44
SLIDE 44

Example - Potato chips factory

Client owns a potato chips factory Two types of chips

◮ Plain chips ◮ Mexican ribble chips

Three processes:

◮ Slicing ◮ Frying ◮ Packaging

slide-45
SLIDE 45

Example - Potato chips factory

Client owns a potato chips factory Two types of chips

◮ Plain chips ◮ Mexican ribble chips

Three processes:

◮ Slicing ◮ Frying ◮ Packaging

Processes take different amount of time for each type of chips (min/kg)

slide-46
SLIDE 46

Example - Potato chips factory

Client owns a potato chips factory Two types of chips

◮ Plain chips ◮ Mexican ribble chips

Three processes:

◮ Slicing ◮ Frying ◮ Packaging

Processes take different amount of time for each type of chips (min/kg) Processes have a limited amount of time they can be used (min/day)

slide-47
SLIDE 47

Example - Potato chips factory

Client owns a potato chips factory Two types of chips

◮ Plain chips ◮ Mexican ribble chips

Three processes:

◮ Slicing ◮ Frying ◮ Packaging

Processes take different amount of time for each type of chips (min/kg) Processes have a limited amount of time they can be used (min/day) Types of chips have a different net profit (/kg)

slide-48
SLIDE 48

Example - Potato chips factory

Client owns a potato chips factory Two types of chips

◮ Plain chips ◮ Mexican ribble chips

Three processes:

◮ Slicing ◮ Frying ◮ Packaging

Processes take different amount of time for each type of chips (min/kg) Processes have a limited amount of time they can be used (min/day) Types of chips have a different net profit (/kg) Objective: Maximize the profit per day (/day)

slide-49
SLIDE 49

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables:

slide-50
SLIDE 50

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day)

slide-51
SLIDE 51

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints:

slide-52
SLIDE 52

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints: 2Xp + 4Xm ≤ 345 (slicing constraint)

slide-53
SLIDE 53

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints: 2Xp + 4Xm ≤ 345 (slicing constraint) 4Xp + 5Xm ≤ 480 (frying constraint)

slide-54
SLIDE 54

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints: 2Xp + 4Xm ≤ 345 (slicing constraint) 4Xp + 5Xm ≤ 480 (frying constraint) 4Xp + 2Xm ≤ 330 (packaging constraint)

slide-55
SLIDE 55

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints: 2Xp + 4Xm ≤ 345 (slicing constraint) 4Xp + 5Xm ≤ 480 (frying constraint) 4Xp + 2Xm ≤ 330 (packaging constraint) Xp, Xm ≥ 0 (non-negativity constraints)

slide-56
SLIDE 56

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints: 2Xp + 4Xm ≤ 345 (slicing constraint) 4Xp + 5Xm ≤ 480 (frying constraint) 4Xp + 2Xm ≤ 330 (packaging constraint) Xp, Xm ≥ 0 (non-negativity constraints) Objective:

slide-57
SLIDE 57

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 Variables: Xp, Xm (amount of each type made per day) Constraints: 2Xp + 4Xm ≤ 345 (slicing constraint) 4Xp + 5Xm ≤ 480 (frying constraint) 4Xp + 2Xm ≤ 330 (packaging constraint) Xp, Xm ≥ 0 (non-negativity constraints) Objective: max 2Xp + 1.5Xm (maximize total profit)

slide-58
SLIDE 58

Example - Potato chips factory

Data Time required for (min/kg): Plain Mexican Time available (min/day): Slicing 2 4 345 Frying 4 5 480 Packaging 4 2 330 Net profit (/kg): 2 1.5 max 2Xp + 3 2Xm s.t. 2Xp + 4Xm ≤ 345 4Xp + 5Xm ≤ 480 4Xp + 2Xm ≤ 330 Xp, Xm ≥ 0

slide-59
SLIDE 59

Example - Potato chips factory

Sets: Parameters: Variables: Objective: Constraints:

slide-60
SLIDE 60

Example - Potato chips factory

Sets: I chips types (i) J processes (j) Parameters: Variables: Objective: Constraints:

slide-61
SLIDE 61

Example - Potato chips factory

Sets: I chips types (i) J processes (j) Parameters: aj available time for process j ∈ J (min/day) pi net profit of type i ∈ I (/kg) rij time required for process j ∈ J and type i ∈ I (min/kg) Variables: Objective: Constraints:

slide-62
SLIDE 62

Example - Potato chips factory

Sets: I chips types (i) J processes (j) Parameters: aj available time for process j ∈ J (min/day) pi net profit of type i ∈ I (/kg) rij time required for process j ∈ J and type i ∈ I (min/kg) Variables: xi amount of type i ∈ I produced per day (kg/day) Objective: Constraints:

slide-63
SLIDE 63

Example - Potato chips factory

Sets: I chips types (i) J processes (j) Parameters: aj available time for process j ∈ J (min/day) pi net profit of type i ∈ I (/kg) rij time required for process j ∈ J and type i ∈ I (min/kg) Variables: xi amount of type i ∈ I produced per day (kg/day) Objective:

  • i∈I pixi

maximize total profit Constraints:

slide-64
SLIDE 64

Example - Potato chips factory

Sets: I chips types (i) J processes (j) Parameters: aj available time for process j ∈ J (min/day) pi net profit of type i ∈ I (/kg) rij time required for process j ∈ J and type i ∈ I (min/kg) Variables: xi amount of type i ∈ I produced per day (kg/day) Objective:

  • i∈I pixi

maximize total profit Constraints:

  • i∈I rijxi ≤ aj

production process time constraints xi ≥ 0 non-negativity constraints

slide-65
SLIDE 65

Break

slide-66
SLIDE 66

Small World factory - new material design

The Small World factory produces globes and world maps. They are developing a new kind of compound material for their world maps. For this compound they use four layers of base material. One paper layer,

  • ne natural rubber layer, one water proof coating layer, and the glue

layers in between. They want the material to have certain properties, but at the same time the material cannot be too expensive.

slide-67
SLIDE 67

The desired properties of the material are as follows:

◮ The map has to be flexible, this means that the water proof

coating and the glue layers should not make up more than half of the material used.

◮ The map has to be strong, the strength of the map comes

primarily from the rubber material and secondarily from the glue

  • layers. The rubber has a strength index of 6 per mm, the glue

layers have a strength index of 2 per mm. The average strength index of the map should be at least 2 per mm.

◮ The printing process needs to be done on the paper layer, the

printer cannot handle paper that is thinner than 0.3 mm.

◮ The map has to stay together, therefore for each 1 mm of other

material there has to be at least 0.1 mm of glue

◮ The map cannot be too thin, not thinner than 1.2 mm in total. ◮ To be waterproof, the coating should be at least 0.4mm thick. ◮ The price of the layers is 4 per mm rubber, 2 per mm paper,

3 per mm coating, and 1 per mm glue.

slide-68
SLIDE 68

Integer and continuous variables

x ≥ 0 is a positive continuous variable.

slide-69
SLIDE 69

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take?

slide-70
SLIDE 70

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party?

slide-71
SLIDE 71

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party? ◮ How many students can attend this course?

slide-72
SLIDE 72

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party? ◮ How many students can attend this course? ◮ Where do we build a distribution center?

slide-73
SLIDE 73

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party? ◮ How many students can attend this course? ◮ Where do we build a distribution center? ◮ How much extra personnel do we hire?

slide-74
SLIDE 74

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party? ◮ How many students can attend this course? ◮ Where do we build a distribution center? ◮ How much extra personnel do we hire? ◮ How many bags of chips do we produce per day?

slide-75
SLIDE 75

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party? ◮ How many students can attend this course? ◮ Where do we build a distribution center? ◮ How much extra personnel do we hire? ◮ How many bags of chips do we produce per day?

slide-76
SLIDE 76

Integer and continuous variables

x ≥ 0 is a positive continuous variable. In reality many decisions concern discrete quantities or discrete choices:

◮ Which hotel/flight/train do I take? ◮ How many bottles of champagne do I buy for the party? ◮ How many students can attend this course? ◮ Where do we build a distribution center? ◮ How much extra personnel do we hire? ◮ How many bags of chips do we produce per day?

→ integer decision variables

◮ x ∈ N (integer) ◮ x ∈ {0, 1} (boolean)

slide-77
SLIDE 77

Integer programming: Assigning kittens

We have a litter of 8 kittens, each of them a little different. There are 8 people that each want a kitten and have a preference list for them. They awarded each kitten with a distinct score from 8-1, highest being their favorite. We want to assign each kitten to a person, such that the total score of the assignment is maximized.

slide-78
SLIDE 78

Personnel hiring problem at an airline

Training new flight attendants (FA).

◮ Training time (in months) is fixed, after that trainees start working

as FA

◮ Both trainees and FAs can work restricted number of hours per

month (trainees << FAs)

◮ Max training spots for trainees is fixed ◮ For the next half year we know the number of resignations and

total workload (in required hours)

◮ We know the number of flight attendants that we currently have ◮ We cannot fire people ◮ FA has a fixed salary cost > than the fixed salary cost of a trainee ◮ We want to hire trainees to satisfy the total workload for the next

half year, minimizing the total personnel cost.

slide-79
SLIDE 79

Personnel hiring problem at an airline

◮ Training time = 2 months ◮ Working hours = 25 (trainee), 150 (FA) ◮ Training spots = 5 ◮ Current FAs = 60 ◮ Salary cost = 3600 (trainee), 5100 (FA)

months required hours resignations January 8,000 2 February 9,000 March 9,800 2 April 9,900 May 10,050 1 June 10,500