In the past few units, you have learned about many discrete math and computer science optimization
problems, including min cut, max flow; shortest paths; minimum spanning trees; and matching. Each of
these optimization problems can be rephrased or rewritten as an equivalent linear programming problem. A
linear programming problem consists of an objective (that is, a value to be maximized or minimized) and
Each of the graphical optimization problems discussed in this class can be rephrased as a linear
programming problem by altering the objective or the constraints to refit the problem at hand. Another way
to use a linear program to solve an optimization problem is to transform a new problem into a problem for
which we already have a linear program solution—this is a reduction. The idea is that you already have a
solution for a known linear programming problem. If you can somehow transform a new problem that you
have into this known linear programming problem, you already have the solution. The tricky part is to figure
out how to transform your problem into a known solution problem.
For this assignment, read the Notes section on page 529 of your textbook. There is a linear program on this
page that describes finding a maximal flow in a network G, with a source a, a sink z, flows F, and capacities
C. If we want to find a solution to a different problem, maybe the matching problem, for example, we could
(1) formulate a linear program for the matching problem or (2) transform the matching problem into a
maximal flow problem, then use the already known linear program that solves the maximal flow problem.
To better understand linear programs and reductions, write a two- to three-page paper that addresses the
What is a linear program? Explain in at least one paragraph. Feel free to show an example.
What are constraints in linear programming problems? Offer at least one example.
What is an optimization problem? Offer an example and explain.
What is a reduction (specifically, changing one problem into another)? Provide an example. You may use
the Internet to locate an example.
Given Example 10.4.4 and Theorem 10.4.5 in the textbook, explain how you would transform the matching
problem into a maximal flow problem.
Once you complete question 5, use the already known linear program that solves the maximal flow
problem. Show all of your work and how you are doing the reduction.
Show all of your work and include references for resources you use to complete the assignment.
Hint 1: Transform the matching problem into a matching network, and then find the maximal flow to this
Hint 2: The goal here is to learn that, while problems might appear different, they are often the same.
Knowing how to transform a new problem into a known problem can save a lot of solving time. Use the
Internet and your textbook.