0% found this document useful (0 votes)
78 views

CO 250: Introduction To Optimization: Module 1: Formulations (Overview)

This document provides an overview of an introduction to optimization module. It discusses optimization problems in an abstract sense and important special cases like linear programming, integer programming, and nonlinear programming. It then provides examples of optimization in practice at companies like CSX Rail and hospitals. Finally, it presents an example modeling problem of determining production levels at a company called WaterTech to maximize profit.

Uploaded by

Roxanne Ji
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
78 views

CO 250: Introduction To Optimization: Module 1: Formulations (Overview)

This document provides an overview of an introduction to optimization module. It discusses optimization problems in an abstract sense and important special cases like linear programming, integer programming, and nonlinear programming. It then provides examples of optimization in practice at companies like CSX Rail and hospitals. Finally, it presents an example modeling problem of determining production levels at a company called WaterTech to maximize profit.

Uploaded by

Roxanne Ji
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 23

CO 250: Introduction to Optimization

Module 1: Formulations (Overview)

University
c of Waterloo 1 / 23
Outline

Introducing Optimization

Three Case Studies

A Modeling Example

University
c of Waterloo 2 / 23
Optimization - Abstract Perspective

• Abstractly, we will focus on problems of the following form:


• Given: a set A ⊆ Rn and a function f : A → R
• Goal: find x ∈ A that minimizes/maximizes f

• This is a very general problem that is enormously useful in


virtually every branch of industry.

• Bad News: The above problem is notoriously hard to solve (and


may not even be well-defined).

University
c of Waterloo 3 / 23
Optimization - Important Special Cases

• Abstract optimization problem (P):


• Given: a set A ⊆ Rn and a function f : A → R
• Goal: find x ∈ A that minimizes/maximizes f

• Will look at three special cases of (P) in this course:


(A) Linear Programming (LP). A is implicitly given by linear constraints,
and f is a linear function.
(B) Integer Programming (IP). Same as before, but now we want to
max/min over the integer points in A.
(C) Nonlinear Programming (NLP). A is given by non-linear constraints,
and f is a non-linear function.

University
c of Waterloo 4 / 23
Optimization - Typical Workflow

Typical development process


has three stages. Practical Problem:
- Description in
plain language
• The starting point is an - Supporting data

english language
description of practical
problem Mathematical Model:
- Capture problem
• We will develop a in mathematics
- here: LP, IP, NLP
mathematical model for
the problem.
• Finally, we feed the model Practical Implementation:
and data into a solver. - E.g., OPL (IBM ILOG)

• Iterate!

University
c of Waterloo 5 / 23
Optimization in Practice

Optimization is everywhere! Some examples include:


• booking hotel rooms or airline tickets,
• setting the market price of a kwh of electricity,
• determining an “optimal” portfolio of stocks,
• computing energy efficient circuits in chip design,
• and many more!

University
c of Waterloo 6 / 23
CSX Rail

• One of the largest


transport suppliers in the
United States
• Operates 21000 miles of
rail network
• 11 Billion in annual
revenue
• Serves 23 states, Ontario Thinkstock Images/Stockbyte/Thinkstock

and Quebec • Has a fleet of 3800


• Operates 1200 trains per locomotives, and more
day than 100000 freight cars
• Transports 7.4 million car
loads per year

University
c of Waterloo 7 / 23
Optimization @ CSX Rail

• [Acharya, Sellers, Gorman


’10] use mathematical
programming to optimally
allocate and reposition empty
railcars dynamically.

Angela Cable/iStock/Thinkstock

Implementing system yields the following estimated benefits for CSX:


• Annual savings: $51 million
• Avoided rail car capital investment: $1.4 billion

University
c of Waterloo 8 / 23
Optimization in Disease Control

• [Lee et al. ’13] Use


mathematical programming to
prepare for disease outbreak
and medical catastrophes.
• Where should we place
medical dispensing facilities,
and how should we staff
these in order to disseminate Senator Leahy Anthrax Letter, Envelope. Source: FBI,

medication as quickly as http://www.fbi.gov/about-us/history/famous-cases/anthrax-

possible to the population? amerithrax/4a.jpg/view

• How should dispensing be


scheduled?

University
c of Waterloo 9 / 23
Optimization in Disease Control

• In collaboration with the


Center for Disease Control,
[Lee et al. ’13] developed a
decision support suite called
RealOpt.
• The suite is being used by
≈ 6500 public health and
emergency directors in the Senator Leahy Anthrax Letter, Envelope. Source: FBI,

USA to design, place, and http://www.fbi.gov/about-us/history/famous-cases/anthrax-

staff medical dispensing amerithrax/4a.jpg/view

centres.
• In tests, throughput in medical
dispensing centres increases
by several orders of
magnitude.

University
c of Waterloo 10 / 23
Optimization @ Sick Kids

• Current project with SickKids,


Toronto.
• Cranofacial deformations in
infants sometimes need to be
corrected via an operation.
• Surgeons cut the forehead in
8-11 places and bend the
forehead back to reach an
“ideal” shape.

University
c of Waterloo 11 / 23
Optimization @ Sick Kids

• Skull pieces between


incisions are rigid → number
and position of cuts
determines how close the
skull maybe be bent to
approximate the ideal
template.

• Problem: Find a fixed, small


• We model this as a (non-
number of cut positions that
linear) IP.
allow for the best
approximation of the ideal
skull form.
• The cuts given by our model
are quite different from those
usually performed by
surgeons.

University
c of Waterloo 12 / 23
WaterTech Production

• WaterTech produces 4 products, P = {1, 2, 3, 4}, from the


following resources:
• Time on two machines, and
• Skilled and unskilled labour
• The following table gives precise requirements:

E.g., producing a unit of product 3 requires 6h on machine 1, 5h


on machine 2, 5h of skilled, and 7h of unskilled labour. It can be
sold at $220 per unit.

University
c of Waterloo 13 / 23
WaterTech Production
Restrictions:
• WaterTech has 700h on machine 1 and 500h on machine 2
available.
• It can purchase 600h of skilled labour at $8 per hour and at most
650h of unskilled labour at $6 per hour.

Question: How much of each product should WaterTech produce in


order to maximize profit?

Formulate this as a mathematical program!

University
c of Waterloo 14 / 23
Ingredients of a Math Model

• Decision Variables: Capture unknown information


• Constraints: Describe which assignments to variables are
feasible.
• Objective function: A function of the variables that we would like
to maximize/minimize.

University
c of Waterloo 15 / 23
WaterTech Model – Variables

• WaterTech needs to decide how many units of each product to


produce
=⇒ introduce variable xi for number of units of product i to
produce
• For convenience, we also introduce:
ys , yu : number of hours of skilled/unskilled labour to purchase.

University
c of Waterloo 16 / 23
WaterTech Model – Constraints

• What makes an assignment to


{xi }i∈P , ys , yu a feasible?
• E.g., a production plan described by
an assignment may not use more
than 700h of time on machine 1.

=⇒ 11x1 + 7x2 + 6x3 + 5x4 ≤ 700

Similarly, we may not use more than 500h of machine 2 time.

=⇒ 4x1 + 6x2 + 5x3 + 4x4 ≤ 500

University
c of Waterloo 17 / 23
WaterTech Model – Constraints

• Producing xi units of product


i ∈ P requires

8x1 + 5x2 + 5x3 + 6x4

units of skilled labour, and this


must not exceed ys .

=⇒ 8x1 + 5x2 + 5x3 + 6x4 ≤ ys

Similarly for unskilled labour:

=⇒ 7x1 + 8x2 + 7x3 + 4x4 ≤ yu

. . . and ys ≤ 600 as well as yu ≤ 650 as only limited amounts of labour


can be purchased.

University
c of Waterloo 18 / 23
WaterTech Model – Objective Function

• Revenue from sales:

300x1 + 260x2 + 220x3 + 180x4

• Cost of labour:

8ys + 6yu

• Objective function:

maximize 300x1 + 260x2 + 220x3 + 180x4


− 8ys − 6yu

University
c of Waterloo 19 / 23
WaterTech – Entire Model

max 300x1 + 260x2 + 220x3 + 180x4 − 8ys − 6yu


s.t. 11x1 + 7x2 + 6x3 + 5x4 ≤ 700
4x1 + 6x2 + 5x3 + 4x4 ≤ 500
8x1 + 5x2 + 5x3 + 6x4 ≤ ys
7x1 + 8x2 + 7x3 + 4x4 ≤ yu
ys ≤ 600
yu ≤ 650
x1 , x2 , x3 , x4 , yu , ys ≥ 0.

Solution (via CPLEX): x = (16 + 23 , 50, 0, 33 + 13 )T , ys = 583 + 13 ,


yu = 650 of profit $15433 + 13 .

University
c of Waterloo 20 / 23
Correctness of Model

• Is our model correct? What


does this mean?
• Some terminology:
(i) Word description of problem
(ii) Formulation
• A solution to the formulation is
an assignment to all of its
variables.
• This is feasible if all
constraints are satisfied, and
optimal if no better feasible
solution exists.
• Similar: A solution to the word description is an assignment to the
unknowns.

University
c of Waterloo 21 / 23
Correctness of Model

• One way of showing correctness: define a mapping between


feasible solutions to the word description, and feasible solutions
to the model, and vice versa.
• E.g., feasible solution to WaterTech word description is given by
(i) Producing 10 units of product 1, 50 units of product 2, 0 units of
product 3, and 20 units of product 4, and by
(ii) Purchasing 600 units of skilled and unskilled labour.
• It is easily checked that

x1 = 10, x2 = 50, x3 = 0, x4 = 20, ys = yu = 600

is feasible for the mathematical program we wrote.

University
c of Waterloo 22 / 23
Fomulations (Overview)

• Your map should preserve cost.


In the example, the profit from the solution to the word
description should correspond to the objective value of its image
(under map), and vice versa. Check this!
• In the example, the map was simply the identity. This need not
necessarily be the case in general!

University
c of Waterloo 23 / 23

You might also like