AMPL: A Modeling Language for Mathematical Programming, 2/e

Robert Fourer, David M. Gay, Brian W. Kernighan

  • 出版商: Thomson
  • 出版日期: 2002-11-12
  • 售價: $500
  • 貴賓價: 9.5$475
  • 語言: 英文
  • 頁數: 540
  • 裝訂: Hardcover
  • ISBN: 0534388094
  • ISBN-13: 9780534388096
  • 已絕版

買這商品的人也買了...

商品描述

AMPL is a language for large-scale optimization and mathematical programming problems in production, distribution, blending, scheduling, and many other applications. Combining familiar algebraic notation and a powerful interactive command environment, AMPL makes it easy to create models, use a wide variety of solvers, and examine solutions. Though flexible and convenient for rapid prototyping and development of models, AMPL also offers the speed and generality needed for repeated large-scale production runs. This book, written by the creators of AMPL, is a complete guide for modelers at all levels of experience. It begins with a tutorial on widely used linear programming models, and presents all of AMPL's features for linear programming with extensive examples. Additional chapters cover network, nonlinear, piecewise-linear, and integer programming; database and spreadsheet interactions; and command scripts. Most chapters include exercises. Download free versions of AMPL and several solvers from www.ampl.com for experimentation, evaluation, and education. The Web site also lists vendors of the commercial version of AMPL and numerous solvers.

Table of Contents

1. PRODUCTION MODELS: MAXIMIZING PROFITS.
A two-variable linear program. The two-variable linear program in AMPL. A linear programming model. The linear programming model in AMPL. Adding lower bounds to the model. Adding resource constraints to the model. AMPL interfaces.

2. DIET AND OTHER INPUT MODELS: MINIMIZING COSTS.
A linear program for the diet problem. An AMPL model for the diet problem. Using the AMPL diet model. Generalizations to blending, economics, and scheduling.

3. TRANSPORTATION AND ASSIGNMENT MODELS.
A linear program for the transportation problem. An AMPL model for the transport ation problem. Other interpretations of the transportation model.

4. BUILDING LARGER MODELS.
A multicommodity transportation model. A multiperiod production model. A model o f production and transportation.

5. SIMPLE SETS AND INDEXING.
Unordered sets. Sets of numbers. Set operations. Set membership operations and f unctions. Indexing expressions. Ordered sets.

6. COMPOUND SETS AND INDEXING.
Sets of ordered pairs. Subsets and slices of ordered pairs. Sets of longer tuple s. Operations on sets of tuples. Indexed collections of sets.

7. PARAMETERS AND EXPRESSIONS.
Parameter declarations. Arithmetic expressions. Logical and conditional expressi ons. Restrictions on parameters. Computed parameters. Randomly generated paramet ers. Logical parameters. Symbolic parameters.

8. LINEAR PROGRAMS: VARIABLES, OBJECTIVES AND CONSTRAINTS.
Variables. Linear expressions. Objectives. Constraints.

9. SPECIFYING DATA.
Formatted data: the data command. Data in lists. Data in tables. Other features of data statements. Reading unformatted data: the read command.

10. DATABASE ACCESS.
General principles of data correspondence. Examples of table-handling statements . Reading data from relational tables. Writing data to relational tables. Readin g and writing the same table. Indexed collections of tables and columns. Standar d and built-in table handlers.

11. MODELING COMMANDS.
General principles of commands and options. Setting up and solving models and da ta. Modifying data. Modifying models.

12. DISPLAY COMMANDS.
Browsing through results: the display command. Formatting options for display. Numeric options for display. Other output commands: print and printf. Related so lution values. Other display features for models and instances. General faciliti es for manipulating output.

13. COMMAND SCRIPTS.
Running scripts: include and commands. Iterating over a set: the for statement. Iterating subject to a condition: the repeat statement. Testing a condition: th e if-then-else statement. Terminating a loop: break and continue. Stepping throu gh a script. Manipulating character strings.

14. INTERACTIONS WITH SOLVERS.
Presolve. Retrieving results from solvers. Exchanging information with solvers v ia suffixes. Alternating between models. Named problems.

15. NETWORK LINEAR PROGRAMS.
Minimum-cost transshipment models. Other network models. Declaring network model s by node and arc. Rules for node and arc declarations. Solving network linear p rograms.

16. COLUMNWISE FORMULATIONS.
An input-output model. A scheduling model. Rules for columnwise formulations.

17. PIECEWISE-LINEAR PROGRAMS.
Cost terms. Common two-piece and three-piece terms. Other piecewise-linear funct ions. Guidelines for piecewise-linear optimization.

18. NONLINEAR PROGRAMS.
Sources of nonlinearity. Nonlinear variables. Nonlinear expressions. Pitfalls of nonlinear programming.

19. COMPLEMENTARITY PROBLEMS.
Sources of complementarity. Forms of complementarity constraints. Working with c omplementarity constraints.

20. INTEGER LINEAR PROGRAMS.
Integer variables. Zero-one variables and logical conditions. Practical consider ations in integer programming.

APPENDIX A: AMPL REFERENCE MANUAL.

INDEX.