- 博客(0)
- 资源 (4)
- 收藏
- 关注
保罗·戴特尔,哈维·戴特尔 Java大学教程(第十一版) 答案 Java How to Program, 11e
保罗·戴特尔,哈维·戴特尔 Java大学教程(第十一版) 答案
JAVA大学教程 答案 Java How to Program, 11e (Early Objects)答案
2023-03-11
Optimization Modelling A Practical Approach
List of Figures...................................................................................................... xv
List of Tables ...................................................................................................... xxi
List of Mathematical Notations .................................................................... xxiv
Preface ................................................................................................................. xxv
Acknowledgments ........................................................................................... xxix
Authors............................................................................................................... xxxi
Section I Introduction to Optimization and Modelling
1 Introduction ......................................................................................................3
1.1 General Introduction .............................................................................3
1.2 History of Optimization .......................................................................4
1.3 Optimization Problems.........................................................................5
1.4 Mathematical Model..............................................................................6
1.4.1 Characteristics and Assumptions ........................................... 6
1.5 Concept of Optimization ......................................................................8
1.6 Classification of Optimization Problems .........................................11
1.7 Organization of the Book ...................................................................13
Exercises ...........................................................................................................14
References ........................................................................................................15
2 The Process of Optimization.......................................................................17
2.1 Introduction ..........................................................................................17
2.2 Decision Process...................................................................................17
2.3 Problem Identification and Clarification .........................................19
2.4 Problem Definition ..............................................................................20
2.5 Development of a Mathematical Model ..........................................21
2.5.1 Measure of Effectiveness........................................................ 23
2.6 Deriving a Solution..............................................................................25
2.7 Sensitivity Analysis .............................................................................26
2.8 Testing the Solution.............................................................................26
2.9 Implementation ....................................................................................27
v
2.10 Summary ...............................................................................................28
Exercises ...........................................................................................................29
3 Introduction to Modelling ...........................................................................31
3.1 Introduction ..........................................................................................31
3.2 Components of a Mathematical Model............................................31
3.2.1 Decision Variables................................................................... 32
3.2.2 Objective Function................................................................... 32
3.2.3 Constraints................................................................................ 32
3.3 Simple Examples..................................................................................32
3.4 Analyzing a Problem...........................................................................34
3.4.1 A Nonmathematical Programming Problem...................... 35
3.5 Modelling a Simple Problem .............................................................36
3.5.1 Defining the Variables ............................................................ 37
3.5.2 Objective Function................................................................... 37
3.5.3 Constraints................................................................................ 37
3.6 Linear Programming Model ..............................................................39
3.7 More Mathematical Models ...............................................................39
3.8 Integer Programming..........................................................................42
3.9 Multi-Objective Problem.....................................................................45
3.9.1 Objective versus Goal ............................................................. 47
3.10 Goal Programming ..............................................................................47
3.11 Nonlinear Programming.....................................................................49
3.12 Summary ...............................................................................................52
Exercises ...........................................................................................................52
Section II Modelling Techniques
4 Simple Modelling Techniques I ................................................................59
4.1 Introduction ..........................................................................................59
4.2 Use of Subscripts in Variables ...........................................................59
4.3 Simple Modelling Techniques ...........................................................60
4.3.1 Additional Work Requirement in the Formulation........... 61
4.3.2 Variables as Fractions of Other Variables ........................... 64
4.3.3 Maintaining Certain Ratios among Different Variables .... 68
4.3.4 One Constraint Is a Fraction of Another Constraint ......... 70
4.3.5 Maxi–Min or Mini–Max Objective Function....................... 75
4.3.6 Multi-Period Modelling.......................................................... 77
4.3.7 Transforming Infeasible Solutions to Satisfactory
Solutions.................................................................................... 79
4.3.8 Single to Multiple Objectives ................................................ 81
4.4 Special Types of Linear Programming.............................................82
4.4.1 Transportation Problem ......................................................... 83
4.4.2 Assignment Problem .............................................................. 86
4.4.3 Transshipment Problem ......................................................... 88
4.4.4 Project Management Problem ............................................... 91
vi
4.5 Summary ...............................................................................................98
Exercises ...........................................................................................................98
Bibliography ..................................................................................................102
5 Simple Modelling Techniques II .............................................................103
5.1 Introduction ........................................................................................103
5.2 Precedence Constraints.....................................................................103
5.3 Either–or Constraints ........................................................................104
5.4 K out of N Constraints Must Hold .................................................105
5.5 Yes-or-No Decisions ..........................................................................106
5.6 Functions with N Possible Values...................................................108
5.7 Mutually Exclusive Alternatives and Contingent Decisions......109
5.8 Linking Constraints with the Objective Function ........................111
5.9 Piecewise Linear Functions ..............................................................113
5.10 Nonlinear to Approximate Functions ............................................116
5.11 Deterministic Models with Probability Terms..............................118
5.12 Alternate Objective Functions .........................................................121
5.13 Constrained to Unconstrained Problem ........................................122
5.14 Simplifying Cross Product of Binary Variables............................124
5.15 Fractional Programming...................................................................126
5.16 Unrestricted Variables.......................................................................128
5.17 Changing Constraint and Objective Type .....................................129
5.17.1 From to¼Constraints..................................................... 129
5.17.2 From to¼Constraints..................................................... 130
5.17.3 From to Constraints.................................................... 130
5.17.4 From to Constraints.................................................... 130
5.17.5 From ¼ Constraint to and Constraints.................... 130
5.17.6 Changing Objective Type................................................... 131
5.18 Conditional Constraints....................................................................132
5.19 Dual Formulation...............................................................................133
5.20 Regression Model ..............................................................................136
5.21 Stochastic Programming...................................................................137
5.22 Constraint Programming..................................................................137
5.23 Summary .............................................................................................138
Exercises .........................................................................................................138
Bibliography ..................................................................................................142
References ......................................................................................................143
6 Modelling Large-Scale and Well-Known Problems I..........................145
6.1 Introduction ........................................................................................145
6.2 Use of the Summation (S) Sign.......................................................145
6.3 Use of the Subset (2) Sign ................................................................147
6.4 Network Flow Problems...................................................................149
6.4.1 Shortest Path Problem ........................................................ 149
6.4.2 Maximum Flow Problem ................................................... 150
6.4.3 Multi-Commodity Flow Problem ..................................... 152
vii
6.5 Knapsack Problem...............................................................................154
6.5.1 Capital Budgeting Problem................................................... 154
6.5.2 Bin Packing Problem .............................................................. 155
6.5.3 Cutting Stock Problem ........................................................... 157
6.6 Facility Location and Layout .............................................................159
6.6.1 Facility Location Problem...................................................... 159
6.6.2 Facility Layout Problem......................................................... 161
6.7 Production Planning and Scheduling ..............................................164
6.7.1 Relevant Literature ................................................................. 165
6.8 Logistics and Transportation .............................................................167
6.8.1 Airlift Problem ........................................................................ 167
6.8.2 Relevant Literature ................................................................. 168
6.9 Summary ...............................................................................................170
Exercises .........................................................................................................170
References ......................................................................................................172
7 Modelling Well-Known Problems II.......................................................177
7.1 Introduction ..........................................................................................177
7.2 Job and Machine Scheduling .............................................................177
7.2.1 Relevant Literature ................................................................. 179
7.3 Assignment and Routing....................................................................180
7.3.1 Generalized Assignment Problem ....................................... 180
7.3.2 Traveling Salesperson Problem............................................ 181
7.3.3 Relevant Literature on Traveling Salesperson
Problem..................................................................................... 184
7.3.4 Vehicle Routing Problem....................................................... 185
7.3.5 Relevant Literature on Vehicle Routing Problem ............. 188
7.4 Staff Rostering and Scheduling .........................................................189
7.4.1 Staff Scheduling: A Weekly Problem .................................. 189
7.4.2 Daily Rostering Problem ....................................................... 191
7.4.3 Relevant Literature on General Staff Scheduling .............. 192
7.4.4 Crew Planning=Scheduling Problem................................... 193
7.5 Scheduling and Timetabling Problem..............................................194
7.5.1 School Timetabling Problem................................................. 194
7.5.2 University Timetabling .......................................................... 196
7.5.3 Relevant Literature ................................................................. 197
7.6 Summary ...............................................................................................199
Exercises .........................................................................................................199
References ......................................................................................................201
8 Alternative Modelling ................................................................................205
8.1 Introduction ..........................................................................................205
8.2 Modelling under Different Assumptions ........................................205
8.2.1 A Coal Blending Problem...................................................... 205
8.2.2 First Alternative Blending Model ........................................ 207
8.2.3 Second Alternative Blending Model.................................... 209
viii
8.2.4 Comparing the Two Simple Alternative Models ........... 210
8.2.5 A Crop Planning Problem.................................................. 211
8.2.6 Crop Planning Model 1 ...................................................... 212
8.2.7 Crop Planning Model 2 ...................................................... 213
8.3 Hierarchical Modelling: An Introduction.....................................214
8.3.1 Hierarchical Modelling in a Manufacturing Context .... 215
8.3.2 Aggregate Model ................................................................. 216
8.3.3 Family Scheduling Model .................................................. 217
8.3.4 Individual Item Scheduling Model................................... 218
8.4 Summary ............................................................................................219
References ......................................................................................................220
Section III Model Solving
9 Solution Approaches: An Overview........................................................223
9.1 Introduction .......................................................................................223
9.2 Complexity and Complexity Classes ............................................223
9.2.1 Complexity of Algorithms.................................................. 223
9.2.2 Complexity Classes.............................................................. 224
9.3 Classical Optimization Techniques................................................225
9.3.1 Linear Programming............................................................ 225
9.3.2 Integer Programming: The Curse
of Dimensionality ................................................................. 227
9.3.3 Integer Linear Program: Solution Approaches ............... 228
9.3.4 Special Linear Programming Models ............................... 230
9.3.5 Goal Programming............................................................... 230
9.3.6 Nonlinear Programming..................................................... 231
9.3.7 Multi-Objective Models....................................................... 232
9.4 Heuristic Techniques........................................................................233
9.4.1 Hill Climbing ........................................................................ 233
9.4.2 Simulated Annealing ........................................................... 233
9.4.3 Tabu Search........................................................................... 234
9.4.4 Genetic Algorithms.............................................................. 234
9.4.5 Ant Colony Optimization ................................................... 235
9.4.6 Memetic Algorithms ............................................................ 236
9.4.7 Other Heuristics ................................................................... 236
9.5 Optimization Software.....................................................................236
9.5.1 LINGO=LINDO .................................................................... 237
9.5.2 MPL with OptiMax 2000, CPLEX,
and XPRESS........................................................................... 237
9.5.3 GAMS..................................................................................... 237
9.5.4 Solver and Premium Solver................................................ 238
9.5.5 Win QSB................................................................................. 238
9.5.6 MINOS ................................................................................... 238
9.6 Summary ............................................................................................239
ix
References ....................................................................................................239
Appendix-9A LINGO: An Introduction .................................................241
9A.1 Introduction.....................................................................................241
9A.2 Inputting Model in LINGO...........................................................241
9A.3 Solving the Model...........................................................................243
9A.3.1 Solver Status Window.................................................... 243
9A.3.2 LINGO Special Features ................................................ 244
9A.4 Another Example............................................................................246
9A.4.1 Objective Function .......................................................... 246
9A.4.2 Constraints ....................................................................... 247
9A.4.3 Complete LINGO Model ............................................... 248
9A.4.4 Defining the Sets ............................................................. 249
9A.4.5 Inputting the Data .......................................................... 250
9A.5 LINGO Syntax.................................................................................252
Appendix-9B MPL: An Introduction.......................................................253
9B.1 Introduction .....................................................................................253
9B.2 Use of MPL......................................................................................253
9B.3 Using Vectors and Indexes in MPL.............................................255
9B.4 A Product-Mix Model with Three Variables .............................256
Appendix-9C GAMS: An Introduction...................................................260
9C.1 Introduction.....................................................................................260
9C.2 An Example.....................................................................................260
Appendix-9D Excel Solver: An Introduction .........................................264
9D.1 Introduction.....................................................................................264
9D.2 Solving Linear Programs with Solver .........................................264
9D.2.1 Defining the Target Cell (Objective Function) ........... 266
9D.2.2 Identifying the Changing Cells
(Decision Variables) ........................................................ 266
9D.2.3 Adding Constraints ........................................................ 267
9D.2.4 Some Important Options ............................................... 269
9D.2.5 The Solution ..................................................................... 270
Appendix-9E Win QSB: An Introduction ...............................................273
9E.1 Introduction.....................................................................................273
9E.2 Problem Solving with Win QSB...................................................273
9E.3 Reference..........................................................................................275
10 Input Preparation and Model Solving ..................................................277
10.1 Introduction .....................................................................................277
10.2 Data and Data Collection ..............................................................277
10.3 Data Type.........................................................................................279
10.4 Data Preparation .............................................................................280
10.4.1 Data Requirements ......................................................... 282
10.4.2 Data Aggregation............................................................ 283
10.5 Data Preprocessing .........................................................................287
10.6 Model-Driven Data versus Data-Driven Model ........................292
x
10.7 Model Solving .................................................................................292
10.7.1 Excel Solver ....................................................................... 293
10.7.2 LINGO and MPL.............................................................. 295
10.8 Summary .........................................................................................304
Exercises .......................................................................................................304
References.....................................................................................................308
Appendix-10A Additional Problem-Solving Using LINGO ...............309
10A.1 Example 4.6 (Model 4.7) ..............................................................309
10A.1.1 LINGO Code ................................................................ 309
10A.1.2 LINGO Solution ........................................................... 310
10A.2 A Transportation Model ..............................................................310
10A.2.1 LINGO in Algebraic Form ......................................... 311
10A.2.2 LINGO Solution Report.............................................. 311
10A.2.3 LINGO Codes (Alternative)....................................... 312
10A.2.4 LINGO Solution Report (Using
Alternative Codes)....................................................... 312
10A.2.5 A Modified Transportation Model ........................... 313
10A.2.6 LINGO Solution Report (with Restricted
Path)............................................................................... 314
10A.3 Example 4.14 (Model 4.15) ..........................................................315
10A.3.1 LINGO in Algebraic Form......................................... 315
10A.3.2 LINGO Solution Report ............................................. 316
10A.3.3 LINGO Codes (Alternative Form)............................ 316
10A.3.4 LINGO Solution Report
(for Alternative Codes)............................................... 317
10A.4 Example 3.6 (Model 4.1) ..............................................................318
10A.4.1 LINGO in Algebraic Form......................................... 318
10A.4.2 LINGO Model Statistics ............................................. 318
10A.4.3 LINGO Solution........................................................... 318
10A.4.4 LINGO Codes (Alternative Form)............................ 319
10A.4.5 LINGO Solution for Alternative Codes................... 319
10A.5 Example 5.3 (Model 5.2) ..............................................................320
10A.5.1 LINGO Codes .............................................................. 320
10A.5.2 LINGO Solution Report ............................................. 321
10A.5.3 LINGO Alternative Codes ......................................... 321
10A.5.4 LINGO Solution Report (for Alternative
Codes)............................................................................ 321
10A.6 Example 5.16..................................................................................322
10A.6.1 LINGO Codes .............................................................. 322
10A.6.2 LINGO Solution Report ............................................. 322
10A.7 Example 4.11 (Model 4.12) ..........................................................323
10A.7.1 LINGO Codes .............................................................. 323
10A.7.2 LINGO Solution Report ............................................. 324
10A.8 Example 5.10 (Model 5.7) ............................................................324
10A.8.1 LINGO Codes .............................................................. 324
10A.8.2 LINGO Solution Report ............................................. 325
xi
11
2011-03-22
Algorithms for Approximation
Proceedings of the 5th International
Conference, Chester, July 2005
Part I. Imaging and Data Mining;
Part II. Numerical Simulation;
Part III. Statistical Approximation Methods;
Part IV. Data Fitting and Modelling;
Part V. Differential and Integral Equations;
Part VI. Special Functions and Approximation on Manifolds.
2011-03-07
Combinatorial Optimization Theory and Algorithms Third Edition
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Enumeration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Running Time of Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 Linear Optimization Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 Sorting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2. Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.1 Basic Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Trees, Circuits, and Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3 Connectivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.4 Eulerian and Bipartite Graphs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.5 Planarity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.6 Planar Duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
3. Linear Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.1 Polyhedra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
3.2 The Simplex Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3 Duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.4 Convex Hulls and Polytopes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
4. Linear Programming Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.1 Size of Vertices and Faces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
4.2 Continued Fractions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
4.3 Gaussian Elimination . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
4.4 The Ellipsoid Method . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
4.5 Khachiyan’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.6 Separation and Optimization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
XII Table of Contents
5. Integer Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91
5.1 The Integer Hull of a Polyhedron . . . . . . . . . . . . . . . . . . . . . . . . . . 92
5.2 Unimodular Transformations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
5.3 Total Dual Integrality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.4 Totally Unimodular Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
5.5 Cutting Planes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
5.6 Lagrangean Relaxation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
6. Spanning Trees and Arborescences . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.1 Minimum Spanning Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
6.2 Minimum Weight Arborescences . . . . . . . . . . . . . . . . . . . . . . . . . . 125
6.3 Polyhedral Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
6.4 Packing Spanning Trees and Arborescences . . . . . . . . . . . . . . . . . 132
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
7. Shortest Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.1 Shortest Paths From One Source . . . . . . . . . . . . . . . . . . . . . . . . . . 144
7.2 Shortest Paths Between All Pairs of Vertices . . . . . . . . . . . . . . . . . 148
7.3 Minimum Mean Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155
8. Network Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
8.1 Max-Flow-Min-Cut Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
8.2 Menger’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
8.3 The Edmonds-Karp Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
8.4 Blocking Flows and Fujishige’s Algorithm . . . . . . . . . . . . . . . . . . 166
8.5 The Goldberg-Tarjan Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
8.6 Gomory-Hu Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172
8.7 The Minimum Cut in an Undirected Graph . . . . . . . . . . . . . . . . . . 179
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
9. Minimum Cost Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
9.1 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
9.2 An Optimality Criterion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
9.3 Minimum Mean Cycle-Cancelling Algorithm . . . . . . . . . . . . . . . . 195
9.4 Successive Shortest Path Algorithm . . . . . . . . . . . . . . . . . . . . . . . . 199
9.5 Orlin’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
9.6 Flows Over Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 208
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Table of Contents XIII
10. Maximum Matchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
10.1 Bipartite Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
10.2 The Tutte Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
10.3 Tutte’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
10.4 Ear-Decompositions of Factor-Critical Graphs . . . . . . . . . . . . . . . 223
10.5 Edmonds’ Matching Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
11. Weighted Matching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
11.1 The Assignment Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
11.2 Outline of the Weighted Matching Algorithm . . . . . . . . . . . . . . . . 247
11.3 Implementation of the Weighted Matching Algorithm . . . . . . . . . 250
11.4 Postoptimality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
11.5 The Matching Polytope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
12. b-Matchings and T -Joins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
12.1 b-Matchings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271
12.2 Minimum Weight T -Joins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275
12.3 T -Joins and T -Cuts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
12.4 The Padberg-Rao Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 285
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 288
13. Matroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
13.1 Independence Systems and Matroids . . . . . . . . . . . . . . . . . . . . . . . 291
13.2 Other Matroid Axioms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
13.3 Duality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
13.4 The Greedy Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
13.5 Matroid Intersection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 308
13.6 Matroid Partitioning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 313
13.7 Weighted Matroid Intersection . . . . . . . . . . . . . . . . . . . . . . . . . . . . 314
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
14. Generalizations of Matroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
14.1 Greedoids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
14.2 Polymatroids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
14.3 Minimizing Submodular Functions . . . . . . . . . . . . . . . . . . . . . . . . . 331
14.4 Schrijver’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
14.5 Symmetric Submodular Functions . . . . . . . . . . . . . . . . . . . . . . . . . 337
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 339
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 341
XIV Table of Contents
15. NP-Completeness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
15.1 Turing Machines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
15.2 Church’s Thesis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
15.3 P and NP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
15.4 Cook’s Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
15.5 Some Basic NP-Complete Problems . . . . . . . . . . . . . . . . . . . . . . . . 358
15.6 The Class coNP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
15.7 NP-Hard Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
16. Approximation Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 377
16.1 Set Covering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
16.2 Colouring . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 383
16.3 Approximation Schemes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
16.4 Maximum Satisfiability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 392
16.5 The PCP Theorem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 397
16.6 L-Reductions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 401
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 410
17. The Knapsack Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 415
17.1 Fractional Knapsack and Weighted Median Problem . . . . . . . . . . 415
17.2 A Pseudopolynomial Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 418
17.3 A Fully Polynomial Approximation Scheme . . . . . . . . . . . . . . . . . 420
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 422
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
18. Bin-Packing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
18.1 Greedy Heuristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
18.2 An Asymptotic Approximation Scheme . . . . . . . . . . . . . . . . . . . . . 431
18.3 The Karmarkar-Karp Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . 435
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 438
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
19. Multicommodity Flows and Edge-Disjoint Paths . . . . . . . . . . . . . . . . 443
19.1 Multicommodity Flows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
19.2 Algorithms for Multicommodity Flows . . . . . . . . . . . . . . . . . . . . . 447
19.3 Directed Edge-Disjoint Paths Problem . . . . . . . . . . . . . . . . . . . . . . 451
19.4 Undirected Edge-Disjoint Paths Problem . . . . . . . . . . . . . . . . . . . . 455
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 460
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
Table of Contents XV
20. Network Design Problems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
20.1 Steiner Trees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
20.2 The Robins-Zelikovsky Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . 473
20.3 Survivable Network Design . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 478
20.4 A Primal-Dual Approximation Algorithm . . . . . . . . . . . . . . . . . . . 481
20.5 Jain’s Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 498
21. The Traveling Salesman Problem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 501
21.1 Approximation Algorithms for the TSP . . . . . . . . . . . . . . . . . . . . . 501
21.2 Euclidean TSPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 506
21.3 Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513
21.4 The Traveling Salesman Polytope . . . . . . . . . . . . . . . . . . . . . . . . . . 519
21.5 Lower Bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
21.6 Branch-and-Bound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 527
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 530
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 532
22. Facility Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 537
22.1 The Uncapacitated Facility Location Problem . . . . . . . . . . . . . . . . 537
22.2 Rounding Linear Programming Solutions . . . . . . . . . . . . . . . . . . . 539
22.3 Primal-Dual Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 541
22.4 Scaling and Greedy Augmentation . . . . . . . . . . . . . . . . . . . . . . . . . . 547
22.5 Bounding the Number of Facilities . . . . . . . . . . . . . . . . . . . . . . . . . 550
22.6 Local Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 553
22.7 Capacitated Facility Location Problems . . . . . . . . . . . . . . . . . . . . . . 559
22.8 Universal Facility Location . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 561
Exercises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 568
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 570
Notation Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 573
Author Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 577
Subject Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 585
2011-03-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人