Preface xiii I Models 1
1 Linear Programming 3
1.1 Introduction 3
1.2 The Transportation Problem 4
1.3 The Production Scheduling Problem 6
1.4 The Diet Problem 9
1.5 The Network Flow Problem 11
1.6 The Portfolio Problem 13
1.7 Scaffolding System 15
1.8 Electric Power Economic Dispatch 18
2 Mixed-Integer Linear Programming 25
2.1 Introduction 25
2.2 The 0-1 Knapsack Problem 25
2.3 Identifying Relevant Symptoms 27
2.4 The Academy Problem 29
2.5 School Timetable Problem 32
2.6 Models of Discrete Location 35
2.7 Unit Commitment of Thermal Power Units 38
3 Nonlinear Programming 47
3.1 Introduction 47
3.2 Some Geometrically Motivated Examples 47
3.3 Some Mechanically Motivated Examples 51
3.4 Some Electrically Motivated Examples 55
3.5 The Matrix Balancing Problem 62
3.6 The Traffic Assignment Problem 64
II Methods 71
4 An Introduction to Linear Programming 73
4.1 Introduction 73
4.2 Problem Statement and Basic Definitions 73
4.3 Linear Programming Problem in Standard Form 78
4.4 Basic Solutions 81
4.5 Sensitivities 83
4.6 Duality 84
5 Understanding the Set of All Feasible Solutions 97
5.1 Introduction and Motivation 97
5.2 Convex Sets 101
5.3 Linear Spaces 105
5.4 Polyhedral Convex Cones 107
5.5 Polytopes 109
5.6 Polyhedra 110
5.7 Bounded and Unbounded LPP 113
6 Solving the Linear Programming Problem 117
6.1 Introduction 117
6.2 The Simplex Method 118
6.3 The Exterior Point Method 140
7 Mixed-Integer Linear Programming 161
7.1 Introduction 161
7.2 The Branch-Bound Method 162
7.3 The Gomory Cuts Method 172
8 Optimality and Duality in Nonlinear Programming 183
8.1 Introduction 183
8.2 Necessary Optimality Conditions 188
8.2.1 Differentiability 188
8.3 Optimality Conditions: Sufficiency and Convexity 207
8.4 Duality Theory 216
8.5 Practical Illustration of Duality and Separability 221
8.6 Constraint Qualifications 226
9 Computational Methods for Nonlinear Programming 235
9.1 Unconstrained Optimization Algorithms 236
9.2 Constrained Optimization Algorithms 254
9.2.1 Dual Methods 254
III Software 283
10 The GAMS Package 285
10.1 Introduction 285
10.2 Illustrative Example 286
10.3 Language Features 290
11 Some Examples Using GAMS 311
11.1 Introduction 311
11.2 Linear Programming Examples 311
11.3 Mixed-Integer LPP Examples 330
11.4 Nonlinear Programming Examples 344
IV Applications 369
12 Applications 371
12.1 Applications to Artificial Intelligence 371
12.2 Applications to CAD 378
12.3 Applications to Probability 387
12.4 Regression Models 395
12.5 Applications to Optimization Problems 401
12.6 Transportation Systems 417
12.7 Short-Term Hydrothermal Coordination 442
13 Some Useful Modeling Tricks 451
13.1 Introduction 451
13.2 Some General Tricks 451
13.3 Some GAMS Tricks 466
A Compatibility and Set of All Feasible Solutions 477
A.l The Dual Cone 478
A.2 Cone Associated with a Polyhedron 480
A.3 The Procedure 483
A.4 Compatibility of Linear Systems 488
A.5 Solving Linear Systems 491
A.6 Applications to Several Examples 494
B Notation 517
Bibliography 533
Index 541