Iris Hui-Ru Jiang Fall 2014
Linear Programming
IRIS H.-R. JIANG
Linear Programming
¨ Course contents:
¤ Linear programming
¤ Formulation
¤ Duality
¤ The simplex method
¨ Reading:
¤ Chapter 7 (Dasgupta)
¤ Chapter 29 (Cormen)
Linear programming
2
IRIS H.-R. JIANG
Linear Programming
¨ Linear programming describes a broad class of optimization
tasks in which both the optimization criterion and the
constraints are linear functions.
¨ Linear programming consists of three parts:
¤ A set of decision variables
¤ An objective function:
n maximize or minimize a given linear objective function
¤ A set of constraints:
n satisfy a set of linear inequalities involving these variables
Linear programming
3
IRIS H.-R. JIANG
Example: Profit Maximization (1/4)
¨ A boutique chocolatier has two products:
¤ A (Pyramide): profit $1 per box
¤ B (Nuit): profit $6 per box
¨ Constraints:
¤ The daily demand for these exclusive chocolates is limited to at
most 200 boxes of A and 300 boxes of B
¤ The current workforce can produce a total of at most 400 boxes
of chocolate per day
¨ Decision variables:
¤ x1 = Boxes of A
¤ x2 = Boxes of B
¨ Objective Function:
¤ Maximize profit
Linear programming
4
Iris Hui-Ru Jiang Fall 2014
Linear Programming
IRIS H.-R. JIANG
Linear Programming
¨ Course contents:
¤ Linear programming
¤ Formulation
¤ Duality
¤ The simplex method
¨ Reading:
¤ Chapter 7 (Dasgupta)
¤ Chapter 29 (Cormen)
Linear programming
2
IRIS H.-R. JIANG
Linear Programming
¨ Linear programming describes a broad class of optimization
tasks in which both the optimization criterion and the
constraints are linear functions.
¨ Linear programming consists of three parts:
¤ A set of decision variables
¤ An objective function:
n maximize or minimize a given linear objective function
¤ A set of constraints:
n satisfy a set of linear inequalities involving these variables
Linear programming
3
IRIS H.-R. JIANG
Example: Profit Maximization (1/4)
¨ A boutique chocolatier has two products:
¤ A (Pyramide): profit $1 per box
¤ B (Nuit): profit $6 per box
¨ Constraints:
¤ The daily demand for these exclusive chocolates is limited to at
most 200 boxes of A and 300 boxes of B
¤ The current workforce can produce a total of at most 400 boxes
of chocolate per day
¨ Decision variables:
¤ x1 = Boxes of A
¤ x2 = Boxes of B
¨ Objective Function:
¤ Maximize profit
Linear programming
4
Iris Hui-Ru Jiang Fall 2014
Linear Programming
IRIS H.-R. JIANG
Linear Programming
¨ Course contents:
¤ Linear programming
¤ Formulation
¤ Duality
¤ The simplex method
¨ Reading:
¤ Chapter 7 (Dasgupta)
¤ Chapter 29 (Cormen)
Linear programming
2
IRIS H.-R. JIANG
Linear Programming
¨ Linear programming describes a broad class of optimization
tasks in which both the optimization criterion and the
constraints are linear functions.
¨ Linear programming consists of three parts:
¤ A set of decision variables
¤ An objective function:
n maximize or minimize a given linear objective function
¤ A set of constraints:
n satisfy a set of linear inequalities involving these variables
Linear programming
3
IRIS H.-R. JIANG
Example: Profit Maximization (1/4)
¨ A boutique chocolatier has two products:
¤ A (Pyramide): profit $1 per box
¤ B (Nuit): profit $6 per box
¨ Constraints:
¤ The daily demand for these exclusive chocolates is limited to at
most 200 boxes of A and 300 boxes of B
¤ The current workforce can produce a total of at most 400 boxes
of chocolate per day
¨ Decision variables:
¤ x1 = Boxes of A
¤ x2 = Boxes of B
¨ Objective Function:
¤ Maximize profit
Linear programming
4
Iris Hui-Ru Jiang Fall 2014
Linear Programming
IRIS H.-R. JIANG
Linear Programming
¨ Course contents:
¤ Linear programming
¤ Formulation
¤ Duality
¤ The simplex method
¨ Reading:
¤ Chapter 7 (Dasgupta)
¤ Chapter 29 (Cormen)
Linear programming
2
IRIS H.-R. JIANG
Linear Programming
¨ Linear programming describes a broad class of optimization
tasks in which both the optimization criterion and the
constraints are linear functions.
¨ Linear programming consists of three parts:
¤ A set of decision variables
¤ An objective function:
n maximize or minimize a given linear objective function
¤ A set of constraints:
n satisfy a set of linear inequalities involving these variables
Linear programming
3
IRIS H.-R. JIANG
Example: Profit Maximization (1/4)
¨ A boutique chocolatier has two products:
¤ A (Pyramide): profit $1 per box
¤ B (Nuit): profit $6 per box
¨ Constraints:
¤ The daily demand for these exclusive chocolates is limited to at
most 200 boxes of A and 300 boxes of B
¤ The current workforce can produce a total of at most 400 boxes
of chocolate per day
¨ Decision variables:
¤ x1 = Boxes of A
¤ x2 = Boxes of B
¨ Objective Function:
¤ Maximize profit
Linear programming
4
IRIS H.-R. JIANG
Example: Profit Maximization (2/4)
¨ A linear equation in x1 and x2 defines a line in the 2D plane
¨ A linear inequality designates a half-space
¨ The set of all feasible solutions of this linear program is the
intersection of five half-spaces. It is a convex polygon
Linear programming
5
IRIS H.-R. JIANG
Example: Profit Maximization (3/4)
¨ Search for the optimal solution
¤ It is a general rule of linear programs that the optimum is
achieved at a vertex of the feasible region.
Linear programming
6
(100, 300)
IRIS H.-R. JIANG
Example: Profit Maximization (4/4)
¨ The Simplex method: hill climbing
¤ George Dantzig, 1947
¤ Starts at a vertex, say (0, 0)
¤ Repeatedly looks for an adjacent vertex (connected by an edge
of the feasible region) of better objective value
¤ Upon reaching a vertex that has no better neighbor, simplex
declares it to be optimal and halts
Linear programming
7
(100, 300)
IRIS H.-R. JIANG
Multipliers?
¨ Optimal: (x1, x2) = (100, 300); objective value = 1900
¨ Can this answer be checked somehow?
¤ (1) + 6*(2):
x1 + 6x2 <= 2000
¤ 0*(1) + 5*(2) + (3):
x1 + 6x2 <= 1900
¤ The multipliers (0, 5, 1) constitute a certificate of optimality
¤ How would we systematically find the magic multipliers?
Linear programming
8
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Example: Profit Maximization (2/4)
¨ A linear equation in x1 and x2 defines a line in the 2D plane
¨ A linear inequality designates a half-space
¨ The set of all feasible solutions of this linear program is the
intersection of five half-spaces. It is a convex polygon
Linear programming
5
IRIS H.-R. JIANG
Example: Profit Maximization (3/4)
¨ Search for the optimal solution
¤ It is a general rule of linear programs that the optimum is
achieved at a vertex of the feasible region.
Linear programming
6
(100, 300)
IRIS H.-R. JIANG
Example: Profit Maximization (4/4)
¨ The Simplex method: hill climbing
¤ George Dantzig, 1947
¤ Starts at a vertex, say (0, 0)
¤ Repeatedly looks for an adjacent vertex (connected by an edge
of the feasible region) of better objective value
¤ Upon reaching a vertex that has no better neighbor, simplex
declares it to be optimal and halts
Linear programming
7
(100, 300)
IRIS H.-R. JIANG
Multipliers?
¨ Optimal: (x1, x2) = (100, 300); objective value = 1900
¨ Can this answer be checked somehow?
¤ (1) + 6*(2):
x1 + 6x2 <= 2000
¤ 0*(1) + 5*(2) + (3):
x1 + 6x2 <= 1900
¤ The multipliers (0, 5, 1) constitute a certificate of optimality
¤ How would we systematically find the magic multipliers?
Linear programming
8
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Example: Profit Maximization (2/4)
¨ A linear equation in x1 and x2 defines a line in the 2D plane
¨ A linear inequality designates a half-space
¨ The set of all feasible solutions of this linear program is the
intersection of five half-spaces. It is a convex polygon
Linear programming
5
IRIS H.-R. JIANG
Example: Profit Maximization (3/4)
¨ Search for the optimal solution
¤ It is a general rule of linear programs that the optimum is
achieved at a vertex of the feasible region.
Linear programming
6
(100, 300)
IRIS H.-R. JIANG
Example: Profit Maximization (4/4)
¨ The Simplex method: hill climbing
¤ George Dantzig, 1947
¤ Starts at a vertex, say (0, 0)
¤ Repeatedly looks for an adjacent vertex (connected by an edge
of the feasible region) of better objective value
¤ Upon reaching a vertex that has no better neighbor, simplex
declares it to be optimal and halts
Linear programming
7
(100, 300)
IRIS H.-R. JIANG
Multipliers?
¨ Optimal: (x1, x2) = (100, 300); objective value = 1900
¨ Can this answer be checked somehow?
¤ (1) + 6*(2):
x1 + 6x2 <= 2000
¤ 0*(1) + 5*(2) + (3):
x1 + 6x2 <= 1900
¤ The multipliers (0, 5, 1) constitute a certificate of optimality
¤ How would we systematically find the magic multipliers?
Linear programming
8
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Example: Profit Maximization (2/4)
¨ A linear equation in x1 and x2 defines a line in the 2D plane
¨ A linear inequality designates a half-space
¨ The set of all feasible solutions of this linear program is the
intersection of five half-spaces. It is a convex polygon
Linear programming
5
IRIS H.-R. JIANG
Example: Profit Maximization (3/4)
¨ Search for the optimal solution
¤ It is a general rule of linear programs that the optimum is
achieved at a vertex of the feasible region.
Linear programming
6
(100, 300)
IRIS H.-R. JIANG
Example: Profit Maximization (4/4)
¨ The Simplex method: hill climbing
¤ George Dantzig, 1947
¤ Starts at a vertex, say (0, 0)
¤ Repeatedly looks for an adjacent vertex (connected by an edge
of the feasible region) of better objective value
¤ Upon reaching a vertex that has no better neighbor, simplex
declares it to be optimal and halts
Linear programming
7
(100, 300)
IRIS H.-R. JIANG
Multipliers?
¨ Optimal: (x1, x2) = (100, 300); objective value = 1900
¨ Can this answer be checked somehow?
¤ (1) + 6*(2):
x1 + 6x2 <= 2000
¤ 0*(1) + 5*(2) + (3):
x1 + 6x2 <= 1900
¤ The multipliers (0, 5, 1) constitute a certificate of optimality
¤ How would we systematically find the magic multipliers?
Linear programming
8
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Duality (1/3)
¨ Multipliers yi’s must be nonnegative
¨ If the left-hand side to look like our objective function, the right-
hand side is an upper bound on the optimum solution
¨ We want a tight bound!
Linear programming
9
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Duality (2/3)
¨ A new LP: finding multipliers that gives the best upper bound
on our original LP
¤ Primal LP
¤ Any feasible value of dual LP is an upper bound on primal LP
¤ If we find a pair of primal and dual feasible values that are equal,
they must be both optimal.
Linear programming
10
¤ Dual LP
IRIS H.-R. JIANG
Duality (3/3)
¨ Generic form:
¨ Dual theorem: If a linear program has a bounded optimum, then
so does its dual, and the new optimum values coincide.
¤ Max-flow min-cut
Linear programming
11
IRIS H.-R. JIANG
The Simplex Algorithm
Linear programming
12
Every constraint specifies an
n-dimensional half-space
Travel along “edges” until no
improvement can be made
IRIS H.-R. JIANG
Duality (1/3)
¨ Multipliers yi’s must be nonnegative
¨ If the left-hand side to look like our objective function, the right-
hand side is an upper bound on the optimum solution
¨ We want a tight bound!
Linear programming
9
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Duality (2/3)
¨ A new LP: finding multipliers that gives the best upper bound
on our original LP
¤ Primal LP
¤ Any feasible value of dual LP is an upper bound on primal LP
¤ If we find a pair of primal and dual feasible values that are equal,
they must be both optimal.
Linear programming
10
¤ Dual LP
IRIS H.-R. JIANG
Duality (3/3)
¨ Generic form:
¨ Dual theorem: If a linear program has a bounded optimum, then
so does its dual, and the new optimum values coincide.
¤ Max-flow min-cut
Linear programming
11
IRIS H.-R. JIANG
The Simplex Algorithm
Linear programming
12
Every constraint specifies an
n-dimensional half-space
Travel along “edges” until no
improvement can be made
IRIS H.-R. JIANG
Duality (1/3)
¨ Multipliers yi’s must be nonnegative
¨ If the left-hand side to look like our objective function, the right-
hand side is an upper bound on the optimum solution
¨ We want a tight bound!
Linear programming
9
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Duality (2/3)
¨ A new LP: finding multipliers that gives the best upper bound
on our original LP
¤ Primal LP
¤ Any feasible value of dual LP is an upper bound on primal LP
¤ If we find a pair of primal and dual feasible values that are equal,
they must be both optimal.
Linear programming
10
¤ Dual LP
IRIS H.-R. JIANG
Duality (3/3)
¨ Generic form:
¨ Dual theorem: If a linear program has a bounded optimum, then
so does its dual, and the new optimum values coincide.
¤ Max-flow min-cut
Linear programming
11
IRIS H.-R. JIANG
The Simplex Algorithm
Linear programming
12
Every constraint specifies an
n-dimensional half-space
Travel along “edges” until no
improvement can be made
IRIS H.-R. JIANG
Duality (1/3)
¨ Multipliers yi’s must be nonnegative
¨ If the left-hand side to look like our objective function, the right-
hand side is an upper bound on the optimum solution
¨ We want a tight bound!
Linear programming
9
max x1 + 6x2
x1 <= 200 (1)
x2 <= 300 (2)
x1 + x2 <= 400 (3)
x1 , x2 >= 0.
IRIS H.-R. JIANG
Duality (2/3)
¨ A new LP: finding multipliers that gives the best upper bound
on our original LP
¤ Primal LP
¤ Any feasible value of dual LP is an upper bound on primal LP
¤ If we find a pair of primal and dual feasible values that are equal,
they must be both optimal.
Linear programming
10
¤ Dual LP
IRIS H.-R. JIANG
Duality (3/3)
¨ Generic form:
¨ Dual theorem: If a linear program has a bounded optimum, then
so does its dual, and the new optimum values coincide.
¤ Max-flow min-cut
Linear programming
11
IRIS H.-R. JIANG
The Simplex Algorithm
Linear programming
12
Every constraint specifies an
n-dimensional half-space
Travel along “edges” until no
improvement can be made
IRIS H.-R. JIANG
Vertex and Neighbors
¨ Pick a subset of the inequalities. If there is
a unique point that satisfies them with equality,
and this point happens to be feasible,
then it is a vertex
¤ {2, 3, 7} ® A
¤ {4, 6} ® no vertex
¨ Two vertices are neighbors if they have
n - 1 defining inequalities in common
¤ {2, 3, 7} ® A
¤ {1, 3, 7} ® C
13
Linear programming
IRIS H.-R. JIANG
The Simplex Algorithm
¨ On each iteration, simplex has two tasks:
¤ Task 1: Check whether the current vertex is optimal
¤ Task 2: Determine where to move next
¨ Both tasks are easy if the vertex happens to be at the origin
¤ Transform the coordinate system to move vertex u to the origin
¨ Task 1:
¤ The origin is optimal if and only if all ci <= 0
¨ Task 2:
¤ We can move by increasing some xi for which ci > 0
¤ Until we hit some other constraint
14
Linear programming
IRIS H.-R. JIANG
Example (1/3)
Linear programming
15
IRIS H.-R. JIANG
Example (2/3)
Linear programming
16
IRIS H.-R. JIANG
Vertex and Neighbors
¨ Pick a subset of the inequalities. If there is
a unique point that satisfies them with equality,
and this point happens to be feasible,
then it is a vertex
¤ {2, 3, 7} ® A
¤ {4, 6} ® no vertex
¨ Two vertices are neighbors if they have
n - 1 defining inequalities in common
¤ {2, 3, 7} ® A
¤ {1, 3, 7} ® C
13
Linear programming
IRIS H.-R. JIANG
The Simplex Algorithm
¨ On each iteration, simplex has two tasks:
¤ Task 1: Check whether the current vertex is optimal
¤ Task 2: Determine where to move next
¨ Both tasks are easy if the vertex happens to be at the origin
¤ Transform the coordinate system to move vertex u to the origin
¨ Task 1:
¤ The origin is optimal if and only if all ci <= 0
¨ Task 2:
¤ We can move by increasing some xi for which ci > 0
¤ Until we hit some other constraint
14
Linear programming
IRIS H.-R. JIANG
Example (1/3)
Linear programming
15
IRIS H.-R. JIANG
Example (2/3)
Linear programming
16
IRIS H.-R. JIANG
Vertex and Neighbors
¨ Pick a subset of the inequalities. If there is
a unique point that satisfies them with equality,
and this point happens to be feasible,
then it is a vertex
¤ {2, 3, 7} ® A
¤ {4, 6} ® no vertex
¨ Two vertices are neighbors if they have
n - 1 defining inequalities in common
¤ {2, 3, 7} ® A
¤ {1, 3, 7} ® C
13
Linear programming
IRIS H.-R. JIANG
The Simplex Algorithm
¨ On each iteration, simplex has two tasks:
¤ Task 1: Check whether the current vertex is optimal
¤ Task 2: Determine where to move next
¨ Both tasks are easy if the vertex happens to be at the origin
¤ Transform the coordinate system to move vertex u to the origin
¨ Task 1:
¤ The origin is optimal if and only if all ci <= 0
¨ Task 2:
¤ We can move by increasing some xi for which ci > 0
¤ Until we hit some other constraint
14
Linear programming
IRIS H.-R. JIANG
Example (1/3)
Linear programming
15
IRIS H.-R. JIANG
Example (2/3)
Linear programming
16
IRIS H.-R. JIANG
Vertex and Neighbors
¨ Pick a subset of the inequalities. If there is
a unique point that satisfies them with equality,
and this point happens to be feasible,
then it is a vertex
¤ {2, 3, 7} ® A
¤ {4, 6} ® no vertex
¨ Two vertices are neighbors if they have
n - 1 defining inequalities in common
¤ {2, 3, 7} ® A
¤ {1, 3, 7} ® C
13
Linear programming
IRIS H.-R. JIANG
The Simplex Algorithm
¨ On each iteration, simplex has two tasks:
¤ Task 1: Check whether the current vertex is optimal
¤ Task 2: Determine where to move next
¨ Both tasks are easy if the vertex happens to be at the origin
¤ Transform the coordinate system to move vertex u to the origin
¨ Task 1:
¤ The origin is optimal if and only if all ci <= 0
¨ Task 2:
¤ We can move by increasing some xi for which ci > 0
¤ Until we hit some other constraint
14
Linear programming
IRIS H.-R. JIANG
Example (1/3)
Linear programming
15
IRIS H.-R. JIANG
Example (2/3)
Linear programming
16
IRIS H.-R. JIANG
Example (3/3)
17
Linear programming
IRIS H.-R. JIANG
Standard Form
¨ Variants
¤ Either a maximization or a minimization problem
¤ Constraints can be equations and/or inequalities
¤ Variables are restricted to be nonnegative or unrestricted in sign
¨ Standard form
¤ Objective function: minimization
¤ Constraints: equations
¤ Variables: nonnegative
Linear programming
18
Slack variables
IRIS H.-R. JIANG
Example (3/3)
17
Linear programming
IRIS H.-R. JIANG
Standard Form
¨ Variants
¤ Either a maximization or a minimization problem
¤ Constraints can be equations and/or inequalities
¤ Variables are restricted to be nonnegative or unrestricted in sign
¨ Standard form
¤ Objective function: minimization
¤ Constraints: equations
¤ Variables: nonnegative
Linear programming
18
Slack variables

More Related Content

PPTX
Precalculus 1 chapter 2
PPT
Vcs slides on or 2014
PDF
Quantitative Methods - section 6.pdf in business administration
PPT
beyond linear programming: mathematical programming extensions
PPT
Formulation Lpp
PPT
LinearProgramming-Graphicalnethod.ppt
PPT
linear programming model formulation and graphical solution
PDF
Paper Study: Melding the data decision pipeline
Precalculus 1 chapter 2
Vcs slides on or 2014
Quantitative Methods - section 6.pdf in business administration
beyond linear programming: mathematical programming extensions
Formulation Lpp
LinearProgramming-Graphicalnethod.ppt
linear programming model formulation and graphical solution
Paper Study: Melding the data decision pipeline

Similar to algorithm_9linear_programming.pdf (20)

PPTX
Alg II Unit 3-4-linear programingintro
PPT
PPTX
Alg II 3-4 Linear Programming
PPTX
Linear programming - Model formulation, Graphical Method
PDF
linearprogramming.pdf
PDF
오토인코더의 모든 것
PPT
Ms(lpgraphicalsoln.)[1]
PPT
SRWColAlg6_0P_07.ppt
PPTX
Dynamic Programming Matrix Chain Multiplication
PPT
Chapter 17 - Multivariable Calculus
PPT
Introductory maths analysis chapter 17 official
PPT
Chapter17 multivariablecalculus-151007044001-lva1-app6891
PPT
Linear Programming - Model formulation and Graphical Solution
PDF
02.03 Artificial Intelligence: Search by Optimization
PPTX
439_Applied_Mathematics_for_Civil_Engineering_LECTURE_1 Function.pptx
PDF
Integer Programming PPt.ernxzamnbmbmspdf
PDF
Determination of Optimal Product Mix for Profit Maximization using Linear Pro...
PDF
Determination of Optimal Product Mix for Profit Maximization using Linear Pro...
PDF
Numerical Methods for Engineers 6th Edition Chapra Solutions Manual
PDF
Feature Engineering
Alg II Unit 3-4-linear programingintro
Alg II 3-4 Linear Programming
Linear programming - Model formulation, Graphical Method
linearprogramming.pdf
오토인코더의 모든 것
Ms(lpgraphicalsoln.)[1]
SRWColAlg6_0P_07.ppt
Dynamic Programming Matrix Chain Multiplication
Chapter 17 - Multivariable Calculus
Introductory maths analysis chapter 17 official
Chapter17 multivariablecalculus-151007044001-lva1-app6891
Linear Programming - Model formulation and Graphical Solution
02.03 Artificial Intelligence: Search by Optimization
439_Applied_Mathematics_for_Civil_Engineering_LECTURE_1 Function.pptx
Integer Programming PPt.ernxzamnbmbmspdf
Determination of Optimal Product Mix for Profit Maximization using Linear Pro...
Determination of Optimal Product Mix for Profit Maximization using Linear Pro...
Numerical Methods for Engineers 6th Edition Chapra Solutions Manual
Feature Engineering
Ad

More from HsuChi Chen (14)

PDF
algorithm_6dynamic_programming.pdf
PDF
algorithm_1introdunction.pdf
PDF
algorithm_4greedy_algorithms.pdf
PDF
algorithm_3graphs.pdf
PDF
algorithm_7network_flow.pdf
PDF
algorithm_2algorithm_analysis.pdf
PDF
algorithm_8beyond_polynomial_running_times.pdf
PDF
algorithm_5divide_and_conquer.pdf
PDF
algorithm_0introdunction.pdf
PDF
期末專題報告書
PPTX
單晶片期末專題-報告二
PPTX
單晶片期末專題-報告一
PPTX
模組化課程生醫微製程期末報告
PPTX
單晶片期末專題-初步想法
algorithm_6dynamic_programming.pdf
algorithm_1introdunction.pdf
algorithm_4greedy_algorithms.pdf
algorithm_3graphs.pdf
algorithm_7network_flow.pdf
algorithm_2algorithm_analysis.pdf
algorithm_8beyond_polynomial_running_times.pdf
algorithm_5divide_and_conquer.pdf
algorithm_0introdunction.pdf
期末專題報告書
單晶片期末專題-報告二
單晶片期末專題-報告一
模組化課程生醫微製程期末報告
單晶片期末專題-初步想法
Ad

Recently uploaded (20)

PPTX
Airline CRS | Airline CRS Systems | CRS System
PDF
Topaz Photo AI Crack New Download (Latest 2025)
PDF
Internet Download Manager IDM Crack powerful download accelerator New Version...
DOCX
How to Use SharePoint as an ISO-Compliant Document Management System
PDF
Introduction to Ragic - #1 No Code Tool For Digitalizing Your Business Proces...
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PPTX
MLforCyber_MLDataSetsandFeatures_Presentation.pptx
PDF
Microsoft Office 365 Crack Download Free
PDF
AI-Powered Fuzz Testing: The Future of QA
PDF
How Tridens DevSecOps Ensures Compliance, Security, and Agility
PPTX
Full-Stack Developer Courses That Actually Land You Jobs
PDF
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
PDF
The Dynamic Duo Transforming Financial Accounting Systems Through Modern Expe...
PDF
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
PPTX
Cybersecurity: Protecting the Digital World
PPTX
Python is a high-level, interpreted programming language
DOC
UTEP毕业证学历认证,宾夕法尼亚克拉里恩大学毕业证未毕业
PPTX
Download Adobe Photoshop Crack 2025 Free
PDF
MCP Security Tutorial - Beginner to Advanced
PDF
BoxLang Dynamic AWS Lambda - Japan Edition
Airline CRS | Airline CRS Systems | CRS System
Topaz Photo AI Crack New Download (Latest 2025)
Internet Download Manager IDM Crack powerful download accelerator New Version...
How to Use SharePoint as an ISO-Compliant Document Management System
Introduction to Ragic - #1 No Code Tool For Digitalizing Your Business Proces...
Wondershare Recoverit Full Crack New Version (Latest 2025)
MLforCyber_MLDataSetsandFeatures_Presentation.pptx
Microsoft Office 365 Crack Download Free
AI-Powered Fuzz Testing: The Future of QA
How Tridens DevSecOps Ensures Compliance, Security, and Agility
Full-Stack Developer Courses That Actually Land You Jobs
Top 10 Software Development Trends to Watch in 2025 🚀.pdf
The Dynamic Duo Transforming Financial Accounting Systems Through Modern Expe...
Multiverse AI Review 2025: Access All TOP AI Model-Versions!
Cybersecurity: Protecting the Digital World
Python is a high-level, interpreted programming language
UTEP毕业证学历认证,宾夕法尼亚克拉里恩大学毕业证未毕业
Download Adobe Photoshop Crack 2025 Free
MCP Security Tutorial - Beginner to Advanced
BoxLang Dynamic AWS Lambda - Japan Edition

algorithm_9linear_programming.pdf

  • 1. Iris Hui-Ru Jiang Fall 2014 Linear Programming IRIS H.-R. JIANG Linear Programming ¨ Course contents: ¤ Linear programming ¤ Formulation ¤ Duality ¤ The simplex method ¨ Reading: ¤ Chapter 7 (Dasgupta) ¤ Chapter 29 (Cormen) Linear programming 2 IRIS H.-R. JIANG Linear Programming ¨ Linear programming describes a broad class of optimization tasks in which both the optimization criterion and the constraints are linear functions. ¨ Linear programming consists of three parts: ¤ A set of decision variables ¤ An objective function: n maximize or minimize a given linear objective function ¤ A set of constraints: n satisfy a set of linear inequalities involving these variables Linear programming 3 IRIS H.-R. JIANG Example: Profit Maximization (1/4) ¨ A boutique chocolatier has two products: ¤ A (Pyramide): profit $1 per box ¤ B (Nuit): profit $6 per box ¨ Constraints: ¤ The daily demand for these exclusive chocolates is limited to at most 200 boxes of A and 300 boxes of B ¤ The current workforce can produce a total of at most 400 boxes of chocolate per day ¨ Decision variables: ¤ x1 = Boxes of A ¤ x2 = Boxes of B ¨ Objective Function: ¤ Maximize profit Linear programming 4
  • 2. Iris Hui-Ru Jiang Fall 2014 Linear Programming IRIS H.-R. JIANG Linear Programming ¨ Course contents: ¤ Linear programming ¤ Formulation ¤ Duality ¤ The simplex method ¨ Reading: ¤ Chapter 7 (Dasgupta) ¤ Chapter 29 (Cormen) Linear programming 2 IRIS H.-R. JIANG Linear Programming ¨ Linear programming describes a broad class of optimization tasks in which both the optimization criterion and the constraints are linear functions. ¨ Linear programming consists of three parts: ¤ A set of decision variables ¤ An objective function: n maximize or minimize a given linear objective function ¤ A set of constraints: n satisfy a set of linear inequalities involving these variables Linear programming 3 IRIS H.-R. JIANG Example: Profit Maximization (1/4) ¨ A boutique chocolatier has two products: ¤ A (Pyramide): profit $1 per box ¤ B (Nuit): profit $6 per box ¨ Constraints: ¤ The daily demand for these exclusive chocolates is limited to at most 200 boxes of A and 300 boxes of B ¤ The current workforce can produce a total of at most 400 boxes of chocolate per day ¨ Decision variables: ¤ x1 = Boxes of A ¤ x2 = Boxes of B ¨ Objective Function: ¤ Maximize profit Linear programming 4
  • 3. Iris Hui-Ru Jiang Fall 2014 Linear Programming IRIS H.-R. JIANG Linear Programming ¨ Course contents: ¤ Linear programming ¤ Formulation ¤ Duality ¤ The simplex method ¨ Reading: ¤ Chapter 7 (Dasgupta) ¤ Chapter 29 (Cormen) Linear programming 2 IRIS H.-R. JIANG Linear Programming ¨ Linear programming describes a broad class of optimization tasks in which both the optimization criterion and the constraints are linear functions. ¨ Linear programming consists of three parts: ¤ A set of decision variables ¤ An objective function: n maximize or minimize a given linear objective function ¤ A set of constraints: n satisfy a set of linear inequalities involving these variables Linear programming 3 IRIS H.-R. JIANG Example: Profit Maximization (1/4) ¨ A boutique chocolatier has two products: ¤ A (Pyramide): profit $1 per box ¤ B (Nuit): profit $6 per box ¨ Constraints: ¤ The daily demand for these exclusive chocolates is limited to at most 200 boxes of A and 300 boxes of B ¤ The current workforce can produce a total of at most 400 boxes of chocolate per day ¨ Decision variables: ¤ x1 = Boxes of A ¤ x2 = Boxes of B ¨ Objective Function: ¤ Maximize profit Linear programming 4
  • 4. Iris Hui-Ru Jiang Fall 2014 Linear Programming IRIS H.-R. JIANG Linear Programming ¨ Course contents: ¤ Linear programming ¤ Formulation ¤ Duality ¤ The simplex method ¨ Reading: ¤ Chapter 7 (Dasgupta) ¤ Chapter 29 (Cormen) Linear programming 2 IRIS H.-R. JIANG Linear Programming ¨ Linear programming describes a broad class of optimization tasks in which both the optimization criterion and the constraints are linear functions. ¨ Linear programming consists of three parts: ¤ A set of decision variables ¤ An objective function: n maximize or minimize a given linear objective function ¤ A set of constraints: n satisfy a set of linear inequalities involving these variables Linear programming 3 IRIS H.-R. JIANG Example: Profit Maximization (1/4) ¨ A boutique chocolatier has two products: ¤ A (Pyramide): profit $1 per box ¤ B (Nuit): profit $6 per box ¨ Constraints: ¤ The daily demand for these exclusive chocolates is limited to at most 200 boxes of A and 300 boxes of B ¤ The current workforce can produce a total of at most 400 boxes of chocolate per day ¨ Decision variables: ¤ x1 = Boxes of A ¤ x2 = Boxes of B ¨ Objective Function: ¤ Maximize profit Linear programming 4
  • 5. IRIS H.-R. JIANG Example: Profit Maximization (2/4) ¨ A linear equation in x1 and x2 defines a line in the 2D plane ¨ A linear inequality designates a half-space ¨ The set of all feasible solutions of this linear program is the intersection of five half-spaces. It is a convex polygon Linear programming 5 IRIS H.-R. JIANG Example: Profit Maximization (3/4) ¨ Search for the optimal solution ¤ It is a general rule of linear programs that the optimum is achieved at a vertex of the feasible region. Linear programming 6 (100, 300) IRIS H.-R. JIANG Example: Profit Maximization (4/4) ¨ The Simplex method: hill climbing ¤ George Dantzig, 1947 ¤ Starts at a vertex, say (0, 0) ¤ Repeatedly looks for an adjacent vertex (connected by an edge of the feasible region) of better objective value ¤ Upon reaching a vertex that has no better neighbor, simplex declares it to be optimal and halts Linear programming 7 (100, 300) IRIS H.-R. JIANG Multipliers? ¨ Optimal: (x1, x2) = (100, 300); objective value = 1900 ¨ Can this answer be checked somehow? ¤ (1) + 6*(2): x1 + 6x2 <= 2000 ¤ 0*(1) + 5*(2) + (3): x1 + 6x2 <= 1900 ¤ The multipliers (0, 5, 1) constitute a certificate of optimality ¤ How would we systematically find the magic multipliers? Linear programming 8 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0.
  • 6. IRIS H.-R. JIANG Example: Profit Maximization (2/4) ¨ A linear equation in x1 and x2 defines a line in the 2D plane ¨ A linear inequality designates a half-space ¨ The set of all feasible solutions of this linear program is the intersection of five half-spaces. It is a convex polygon Linear programming 5 IRIS H.-R. JIANG Example: Profit Maximization (3/4) ¨ Search for the optimal solution ¤ It is a general rule of linear programs that the optimum is achieved at a vertex of the feasible region. Linear programming 6 (100, 300) IRIS H.-R. JIANG Example: Profit Maximization (4/4) ¨ The Simplex method: hill climbing ¤ George Dantzig, 1947 ¤ Starts at a vertex, say (0, 0) ¤ Repeatedly looks for an adjacent vertex (connected by an edge of the feasible region) of better objective value ¤ Upon reaching a vertex that has no better neighbor, simplex declares it to be optimal and halts Linear programming 7 (100, 300) IRIS H.-R. JIANG Multipliers? ¨ Optimal: (x1, x2) = (100, 300); objective value = 1900 ¨ Can this answer be checked somehow? ¤ (1) + 6*(2): x1 + 6x2 <= 2000 ¤ 0*(1) + 5*(2) + (3): x1 + 6x2 <= 1900 ¤ The multipliers (0, 5, 1) constitute a certificate of optimality ¤ How would we systematically find the magic multipliers? Linear programming 8 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0.
  • 7. IRIS H.-R. JIANG Example: Profit Maximization (2/4) ¨ A linear equation in x1 and x2 defines a line in the 2D plane ¨ A linear inequality designates a half-space ¨ The set of all feasible solutions of this linear program is the intersection of five half-spaces. It is a convex polygon Linear programming 5 IRIS H.-R. JIANG Example: Profit Maximization (3/4) ¨ Search for the optimal solution ¤ It is a general rule of linear programs that the optimum is achieved at a vertex of the feasible region. Linear programming 6 (100, 300) IRIS H.-R. JIANG Example: Profit Maximization (4/4) ¨ The Simplex method: hill climbing ¤ George Dantzig, 1947 ¤ Starts at a vertex, say (0, 0) ¤ Repeatedly looks for an adjacent vertex (connected by an edge of the feasible region) of better objective value ¤ Upon reaching a vertex that has no better neighbor, simplex declares it to be optimal and halts Linear programming 7 (100, 300) IRIS H.-R. JIANG Multipliers? ¨ Optimal: (x1, x2) = (100, 300); objective value = 1900 ¨ Can this answer be checked somehow? ¤ (1) + 6*(2): x1 + 6x2 <= 2000 ¤ 0*(1) + 5*(2) + (3): x1 + 6x2 <= 1900 ¤ The multipliers (0, 5, 1) constitute a certificate of optimality ¤ How would we systematically find the magic multipliers? Linear programming 8 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0.
  • 8. IRIS H.-R. JIANG Example: Profit Maximization (2/4) ¨ A linear equation in x1 and x2 defines a line in the 2D plane ¨ A linear inequality designates a half-space ¨ The set of all feasible solutions of this linear program is the intersection of five half-spaces. It is a convex polygon Linear programming 5 IRIS H.-R. JIANG Example: Profit Maximization (3/4) ¨ Search for the optimal solution ¤ It is a general rule of linear programs that the optimum is achieved at a vertex of the feasible region. Linear programming 6 (100, 300) IRIS H.-R. JIANG Example: Profit Maximization (4/4) ¨ The Simplex method: hill climbing ¤ George Dantzig, 1947 ¤ Starts at a vertex, say (0, 0) ¤ Repeatedly looks for an adjacent vertex (connected by an edge of the feasible region) of better objective value ¤ Upon reaching a vertex that has no better neighbor, simplex declares it to be optimal and halts Linear programming 7 (100, 300) IRIS H.-R. JIANG Multipliers? ¨ Optimal: (x1, x2) = (100, 300); objective value = 1900 ¨ Can this answer be checked somehow? ¤ (1) + 6*(2): x1 + 6x2 <= 2000 ¤ 0*(1) + 5*(2) + (3): x1 + 6x2 <= 1900 ¤ The multipliers (0, 5, 1) constitute a certificate of optimality ¤ How would we systematically find the magic multipliers? Linear programming 8 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0.
  • 9. IRIS H.-R. JIANG Duality (1/3) ¨ Multipliers yi’s must be nonnegative ¨ If the left-hand side to look like our objective function, the right- hand side is an upper bound on the optimum solution ¨ We want a tight bound! Linear programming 9 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0. IRIS H.-R. JIANG Duality (2/3) ¨ A new LP: finding multipliers that gives the best upper bound on our original LP ¤ Primal LP ¤ Any feasible value of dual LP is an upper bound on primal LP ¤ If we find a pair of primal and dual feasible values that are equal, they must be both optimal. Linear programming 10 ¤ Dual LP IRIS H.-R. JIANG Duality (3/3) ¨ Generic form: ¨ Dual theorem: If a linear program has a bounded optimum, then so does its dual, and the new optimum values coincide. ¤ Max-flow min-cut Linear programming 11 IRIS H.-R. JIANG The Simplex Algorithm Linear programming 12 Every constraint specifies an n-dimensional half-space Travel along “edges” until no improvement can be made
  • 10. IRIS H.-R. JIANG Duality (1/3) ¨ Multipliers yi’s must be nonnegative ¨ If the left-hand side to look like our objective function, the right- hand side is an upper bound on the optimum solution ¨ We want a tight bound! Linear programming 9 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0. IRIS H.-R. JIANG Duality (2/3) ¨ A new LP: finding multipliers that gives the best upper bound on our original LP ¤ Primal LP ¤ Any feasible value of dual LP is an upper bound on primal LP ¤ If we find a pair of primal and dual feasible values that are equal, they must be both optimal. Linear programming 10 ¤ Dual LP IRIS H.-R. JIANG Duality (3/3) ¨ Generic form: ¨ Dual theorem: If a linear program has a bounded optimum, then so does its dual, and the new optimum values coincide. ¤ Max-flow min-cut Linear programming 11 IRIS H.-R. JIANG The Simplex Algorithm Linear programming 12 Every constraint specifies an n-dimensional half-space Travel along “edges” until no improvement can be made
  • 11. IRIS H.-R. JIANG Duality (1/3) ¨ Multipliers yi’s must be nonnegative ¨ If the left-hand side to look like our objective function, the right- hand side is an upper bound on the optimum solution ¨ We want a tight bound! Linear programming 9 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0. IRIS H.-R. JIANG Duality (2/3) ¨ A new LP: finding multipliers that gives the best upper bound on our original LP ¤ Primal LP ¤ Any feasible value of dual LP is an upper bound on primal LP ¤ If we find a pair of primal and dual feasible values that are equal, they must be both optimal. Linear programming 10 ¤ Dual LP IRIS H.-R. JIANG Duality (3/3) ¨ Generic form: ¨ Dual theorem: If a linear program has a bounded optimum, then so does its dual, and the new optimum values coincide. ¤ Max-flow min-cut Linear programming 11 IRIS H.-R. JIANG The Simplex Algorithm Linear programming 12 Every constraint specifies an n-dimensional half-space Travel along “edges” until no improvement can be made
  • 12. IRIS H.-R. JIANG Duality (1/3) ¨ Multipliers yi’s must be nonnegative ¨ If the left-hand side to look like our objective function, the right- hand side is an upper bound on the optimum solution ¨ We want a tight bound! Linear programming 9 max x1 + 6x2 x1 <= 200 (1) x2 <= 300 (2) x1 + x2 <= 400 (3) x1 , x2 >= 0. IRIS H.-R. JIANG Duality (2/3) ¨ A new LP: finding multipliers that gives the best upper bound on our original LP ¤ Primal LP ¤ Any feasible value of dual LP is an upper bound on primal LP ¤ If we find a pair of primal and dual feasible values that are equal, they must be both optimal. Linear programming 10 ¤ Dual LP IRIS H.-R. JIANG Duality (3/3) ¨ Generic form: ¨ Dual theorem: If a linear program has a bounded optimum, then so does its dual, and the new optimum values coincide. ¤ Max-flow min-cut Linear programming 11 IRIS H.-R. JIANG The Simplex Algorithm Linear programming 12 Every constraint specifies an n-dimensional half-space Travel along “edges” until no improvement can be made
  • 13. IRIS H.-R. JIANG Vertex and Neighbors ¨ Pick a subset of the inequalities. If there is a unique point that satisfies them with equality, and this point happens to be feasible, then it is a vertex ¤ {2, 3, 7} ® A ¤ {4, 6} ® no vertex ¨ Two vertices are neighbors if they have n - 1 defining inequalities in common ¤ {2, 3, 7} ® A ¤ {1, 3, 7} ® C 13 Linear programming IRIS H.-R. JIANG The Simplex Algorithm ¨ On each iteration, simplex has two tasks: ¤ Task 1: Check whether the current vertex is optimal ¤ Task 2: Determine where to move next ¨ Both tasks are easy if the vertex happens to be at the origin ¤ Transform the coordinate system to move vertex u to the origin ¨ Task 1: ¤ The origin is optimal if and only if all ci <= 0 ¨ Task 2: ¤ We can move by increasing some xi for which ci > 0 ¤ Until we hit some other constraint 14 Linear programming IRIS H.-R. JIANG Example (1/3) Linear programming 15 IRIS H.-R. JIANG Example (2/3) Linear programming 16
  • 14. IRIS H.-R. JIANG Vertex and Neighbors ¨ Pick a subset of the inequalities. If there is a unique point that satisfies them with equality, and this point happens to be feasible, then it is a vertex ¤ {2, 3, 7} ® A ¤ {4, 6} ® no vertex ¨ Two vertices are neighbors if they have n - 1 defining inequalities in common ¤ {2, 3, 7} ® A ¤ {1, 3, 7} ® C 13 Linear programming IRIS H.-R. JIANG The Simplex Algorithm ¨ On each iteration, simplex has two tasks: ¤ Task 1: Check whether the current vertex is optimal ¤ Task 2: Determine where to move next ¨ Both tasks are easy if the vertex happens to be at the origin ¤ Transform the coordinate system to move vertex u to the origin ¨ Task 1: ¤ The origin is optimal if and only if all ci <= 0 ¨ Task 2: ¤ We can move by increasing some xi for which ci > 0 ¤ Until we hit some other constraint 14 Linear programming IRIS H.-R. JIANG Example (1/3) Linear programming 15 IRIS H.-R. JIANG Example (2/3) Linear programming 16
  • 15. IRIS H.-R. JIANG Vertex and Neighbors ¨ Pick a subset of the inequalities. If there is a unique point that satisfies them with equality, and this point happens to be feasible, then it is a vertex ¤ {2, 3, 7} ® A ¤ {4, 6} ® no vertex ¨ Two vertices are neighbors if they have n - 1 defining inequalities in common ¤ {2, 3, 7} ® A ¤ {1, 3, 7} ® C 13 Linear programming IRIS H.-R. JIANG The Simplex Algorithm ¨ On each iteration, simplex has two tasks: ¤ Task 1: Check whether the current vertex is optimal ¤ Task 2: Determine where to move next ¨ Both tasks are easy if the vertex happens to be at the origin ¤ Transform the coordinate system to move vertex u to the origin ¨ Task 1: ¤ The origin is optimal if and only if all ci <= 0 ¨ Task 2: ¤ We can move by increasing some xi for which ci > 0 ¤ Until we hit some other constraint 14 Linear programming IRIS H.-R. JIANG Example (1/3) Linear programming 15 IRIS H.-R. JIANG Example (2/3) Linear programming 16
  • 16. IRIS H.-R. JIANG Vertex and Neighbors ¨ Pick a subset of the inequalities. If there is a unique point that satisfies them with equality, and this point happens to be feasible, then it is a vertex ¤ {2, 3, 7} ® A ¤ {4, 6} ® no vertex ¨ Two vertices are neighbors if they have n - 1 defining inequalities in common ¤ {2, 3, 7} ® A ¤ {1, 3, 7} ® C 13 Linear programming IRIS H.-R. JIANG The Simplex Algorithm ¨ On each iteration, simplex has two tasks: ¤ Task 1: Check whether the current vertex is optimal ¤ Task 2: Determine where to move next ¨ Both tasks are easy if the vertex happens to be at the origin ¤ Transform the coordinate system to move vertex u to the origin ¨ Task 1: ¤ The origin is optimal if and only if all ci <= 0 ¨ Task 2: ¤ We can move by increasing some xi for which ci > 0 ¤ Until we hit some other constraint 14 Linear programming IRIS H.-R. JIANG Example (1/3) Linear programming 15 IRIS H.-R. JIANG Example (2/3) Linear programming 16
  • 17. IRIS H.-R. JIANG Example (3/3) 17 Linear programming IRIS H.-R. JIANG Standard Form ¨ Variants ¤ Either a maximization or a minimization problem ¤ Constraints can be equations and/or inequalities ¤ Variables are restricted to be nonnegative or unrestricted in sign ¨ Standard form ¤ Objective function: minimization ¤ Constraints: equations ¤ Variables: nonnegative Linear programming 18 Slack variables
  • 18. IRIS H.-R. JIANG Example (3/3) 17 Linear programming IRIS H.-R. JIANG Standard Form ¨ Variants ¤ Either a maximization or a minimization problem ¤ Constraints can be equations and/or inequalities ¤ Variables are restricted to be nonnegative or unrestricted in sign ¨ Standard form ¤ Objective function: minimization ¤ Constraints: equations ¤ Variables: nonnegative Linear programming 18 Slack variables