Russell C. Walker
|This text is a soft cover, spiral bound, custom published version of the hard cover text of the same name. It or its hardcover predecessor have been used in the Business Administration program at Carnegie Mellon for more than 10 years. It is the sole text for Models and Methods for Optimization and one of the texts for Multivariate Analysis.
There have been several improvements in the custom version which is now in its third edition:
|The text can be ordered by contacting the author: rw1k AT andrew DOT cmu DOT edu or from Amazon.|
|The table of contents and chapter summaries:|
|Chapter 1: Introduction to the Problems
Section 1.1 Introduction
Section 1.2 Types of problems to be considered
Section 1.3 Sample problems
Section 1.4 Graphical solution of linear programs
Section 1.5 Summary and objectives
|The first chapter provides a survey of problem types to be considered to indicate the possible applications.
In some cases the contribution of the solution to an organization is indicated to emphasize the relevance of these skills. The sample problems in the third section suggest the linear structure involved in most models we consider and issues associated with model formulation. The concluding section presents a graphical approach to solving two variable linear programs.
|Chapter 2: Vectors and Matrices
Section 2.1 Introduction
Section 2.2 Vectors
Section 2.3 The span of a set of vectors
Section 2.4 Matrices
Section 2.5 Linear independence
Section 2.6 Systems of equations
Section 2.7 The inverse of a matrix
Section 2.8 Summary and objectives
|This chapter develops the matrix algebra needed
to treat linear problems.
Section 2.5 is important since there is a linearly independent set of vectors corresponding to each basic solution in the simplex algorithm. The discussion of linear independence includes some principles of basic mathematical reasoning which should be understood by any student who has studied mathematics. These ideas are then used in proving propositions concerning linear independence.
The section on systems of equations is important because the row operations used there are the same as those needed later in the simplex algorithm.
Matrix inverses are discussed but are needed only in the Exercises of Section 3.3 and in Sections 4.4 and 4.5.
|Chapter 3 Linear Programming
Section 3.1 Introduction
Section 3.2 Slack variables
Section 3.3 The simplex algorithm
Section 3.4 Basic feasible solutions and extreme points
Section 3.5 Formulation examples
Section 3.6 General constraints and variables
Section 3.9 Summary and objectives
|The central topic in the text is linear programming. |
Sections 3.2 and 3.3 develop the simplex algorithm.
In Section 3.4 we establish that the simplex algorithm is correct.
Section 3.5 discusses the formulation of problems and is of particular importance to those most motivated by applications.
Section 3.6 extends the simplex algorithm to problems with nonstandard constraints or unsigned variables.
Chapter 4 Duality and Post Optimal Analysis |
Section 4.1 Introduction
Section 4.2 The dual and minimizing problems
Section 4.3 Sensitivity analysis
Section 4.4 The matrix setting for the simplex algorithm
Section 4.5 Adding a variable
Section 4.6 Summary and objectives
|Section 4.2 discusses the solution of minimization problems by using the associated dual
maximization problem. The power of linear
programming as a managerial tool is shown in an example which helps to motivate the discussion of
sensitivity analysis in Section 4.3. Section 4.4 takes a closer look at the linear
algebra involved in the simplex algorithm, and in Section 4.5 that linear algebra is
used to show that a variable can be added to a solved linear program without having
to re-solve it.
|Chapter 5 Network Models
Section 5.1 Introduction
Section 5.2 The transportation problem
Section 5.3 The critical path method
Section 5.4 Shortest path models
Section 5.5 Minimal spanning trees
Section 5.6 The maximum flow problem
Section 5.7 Summary and objectives
|Chapter 5 treats six network problems: the transportation problem, the transhipment problem, the critical
path method, the shortest path problem, minimal spanning trees, and maximum flow.
Sample models in LINGO and LINDO are provided.
The discussions of shortest paths and minimal spanning trees require some
introduction to graph theory. The effectiveness and correctness of an algorithm are
also introduced and considered for minimal spanning tree algorithms.
|Chapter 6 Unconstrained Extrema
Section 6.1 Introduction
Section 6.2 Locating extrema
Section 6.3 The economic lot size model and convexity
Section 6.4 Location of extrema in two variables
Section 6.5 Least squares approximation
Section 6.6 The n-variable case
Section 6.7 Numerical search
Section 6.8 Summary and objectives
|In this chapter we discuss classical optimization techniques. Some knowledge of
differential calculus is required. Convexity is discussed in connection with the
economic order quantity problem and inventory management. A section is devoted to
the application of least squares curve fitting. There is a discussion of the theory
underlying optimization and also an introduction to the use of Maple to solve
optimization problems. Numerical search techniques are also introduced.
|Chapter 7 Constrained Extrema
Section 7.1 Introduction
Section 7.2 Two variable problems
Section 7.3 More variables; more constraints
Section 7.4 Problems having inequality constraints
Section 7.5 The convex programming problem
Section 7.6 Linear programming revisited
Section 7.7 Summary and objectives
|This chapter extends the discussion begun in the previous one to problems in which
the solution is subject to constraints. The key theorem is the Karush-Kuhn-Tucker
theorem for solving convex problems. The main applications presented are the
minimization of the cost of a cardboard box, the maximization of utility, the
minimization of the cost of equipment replacement, and choosing an investment
portfolio to achieve an acceptable return at minimum risk. The chapter concludes
with a look back at linear programming as a special case of convex programming.
|Chapter 8 Integer Programming
Section 8.1 Introduction
Section 8.2 The knapsack problem
Section 8.3 The dual simplex algorithm
Section 8.4 Adding a constraint
Section 8.5 Branch and bound for integer programs:
Section 8.6 Basic integer programming models
Section 8.7 The traveling salesman problem
Section 8.8 Summary and objectives
|Branch-and-bound algorithms are central to this topic. The knapsack problem is considered first to introduce
the branch-and-bound method.|
The dual simplex algorithm is discussed next, and then employed to re-optimize a solved problem after a constraint has been added. This then forms the basis of a branch-and-bound approach to solving integer programs.
A variety of integer programming models is then discussed, and the chapter concludes with a branch-and-bound approach to the traveling salesman problem.
| Chapter 9 Introduction to Dynamic Programming
Section 9.1 Introduction to recursion
Section 9.2 The longest path
Section 9.3 A fixed cost transportation problem
Section 9.4 More examples
Section 9.5 Summary and objectives
|Problems for which a solution can be obtained through a succession of independent decisions
can often be solved by dynamic programming. Dynamic programming requires an introduction to recursion. This leads to a brief excursion through the Towers of Hanoi, Fibonacci numbers, and the binomial expansion. Applications discussed are the longest path
problem, which is similar to the determination of earliest times in the CPM
model, the fixed cost transportation problem, and the cargo loading problem. We also return to the traveling salesman problem and investigate the computational challenge of that problem.
|Chapter 10 Case Studies
Section 10.1 Tweaking Widget's production
Section 10.2 A furniture sales opportunity
Section 10.3 Building storage lockers
Section 10.4 The McIntire farm
Section 10.5 Cylinders for beverages
Section 10.6 Books by the holidays
Section 10.7 Into a blind trust
Section 10.8 Max's taxes
Section 10.9 A supply network
|Chapter 10 presents several more open-ended problems suitable for longer assignments
and group projects. Solutions to the cases and suggestions for their class
use are available for instructors in the solutions manual from the author.
Methods required for their solution are linear programming, integer programming, critical path management, and non-linear optimization.
|Appendix A Brief Introductions to LINDO and LINGO
Section A.1 LINDO
Section A.2 LINGO
|The LINDO program is extremely useful in solving
linear programs including those with integer constraints. Examples of its
use are presented along with the use of the basic commands.
LINGO is a related package allowing the solution of nonlinear problems. As a modelling language, LINGO is particularly useful for its ability to efficiently express problems with repetitive constraints.
|Appendix B A Brief Introduction to Maple
Section B.1 The basics
Section B,2 Using packages
|The symbolic computation software Maple can be very
useful, particularly in solving classical optimization problems such as are
presented in Chapters 5 and 6 as well as in doing matrix computations, curve
fitting, solving linear programs, and solving network models.
|Appendix C Using Excel Solver
Section C.1 A basic example
Section C.2 Two network examples
Section C.3 Two nonlinear examples
|The Excel spreadsheet includes the Solver add-in which
is extremely useful in linear optimization problems. A brief introduction to
Solver with several examples of its use is provided.
|Appendix D Selected Answers and Hints ||The answers to all odd problems are provided here. Solutions to the even numbered problems are available from the
author in a pdf file.|
|References p. 585|
|Index p. 588|