You are on page 1of 36

COEN505

(ENGINEERING OPTIMIZATION)

LECTURE 2
Linear Programming: Part I

Dr. Y. Ibrahim

1–1
 One of the most fundamental tools in combinatorial
optimization
− invented by G. Dantzig (1947)
− growing areas for decades

 Both geometrical and algebraic views


− interesting connections between them

George Dantzig

1–2
What is a Linear Program?

 n variables, m constraints
 variables are nonnegative
 inequality constraints

1–3
Questions?

• Can I maximize?
• What if a variable can take negative values?
• What if I have an equality constraint?
• What if my variable takes integer values?
• What if I have a nonlinear constraint?

1–4
Answers

1–5
Geometry of Linear Programs

• Convex Sets

1–6
Convex Combinations

1–7
Geometry of Linear Programs

1–8
Geometry of Linear Programs
Why is this interesting?

1–9
Hyperplanes

1–10
Hyperplane

1–11
1–12
1–13
Feasible Region of the Linear
Problem

1–14
Geometry of Linear Programs

• A face is the intersection of finitely many hyperplanes

1–15
• Every point in a polytope is a convex combination of its vertices

1–16
Why are the vertices important?

• Theorem: At least one of the points where the objective value is


minimal is a vertex

1–17
1–18
1–19
Theorem: At least one of the points where the objective value is
minimal is a vertex
Proof:

1–20
Geometry of Linear Programming

• How to solve a linear program “geometrically”


− enumerate all the vertices
− Select the one with the smallest objective value

Example: manufacturing

A large factory makes tables and chairs. Each table returns a profit
of $200 and each chair a profit of $100. Each table takes 1 unit of
metal and 3 units of wood and each chair takes 2 units of metal
and 1 unit of wood. The factory has 6K units of metal and 9K units
of wood. How many tables and chairs should the factory make to
maximize profit?

1–21
Solution

1–22
1–23
Converting to standard form

Simple steps to convert to standard form (presenting intuition here):

1–24
Standard form example

1–25
1–26
Finding “corners” in standard form polytope

• In standard form we assume n > m, so Ax = b is an


underdetermined system of equations (more variables than
equations)
• We can find solutions by selecting a subset of m columns of A,
solving the linear system, and setting remaining n - m variables to
be 0
• Those solutions that also satisfy x ≥ 0 are the corners of the
polytope

1–27
Naive linear programming algorithm

1–28
Example: polytope corners

1–29
Example: polytope corners

1–30
Example: polytope corners

1–31
Example: polytope corners

1–32
1–33
1–34
• The simplex algorithm
− A more intelligent way of exploring the vertices
− connection between the algebraic and geometrical view

− Next Week

1–35
Thank you…

1–36

You might also like