AMPL : a modeling language for mathematical programming

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

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.

「Nielsen BookData」より

[目次]

  • 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 transportation problem. Other interpretations of the transportation model. 4. BUILDING LARGER MODELS. A multicommodity transportation model. A multiperiod production model. A model of production and transportation. 5. SIMPLE SETS AND INDEXING. Unordered sets. Sets of numbers. Set operations. Set membership operations and functions. Indexing expressions. Ordered sets. 6. COMPOUND SETS AND INDEXING. Sets of ordered pairs. Subsets and slices of ordered pairs. Sets of longer tuples. Operations on sets of tuples. Indexed collections of sets. 7. PARAMETERS AND EXPRESSIONS. Parameter declarations. Arithmetic expressions. Logical and conditional expressions. Restrictions on parameters. Computed parameters. Randomly generated parameters. 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. Reading and writing the same table. Indexed collections of tables and columns. Standard and built-in table handlers. 11. MODELING COMMANDS. General principles of commands and options. Setting up and solving models and data. 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 solution values. Other display features for models and instances. General facilities 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: the if-then-else statement. Terminating a loop: break and continue. Stepping through a script. Manipulating character strings. 14. INTERACTIONS WITH SOLVERS. Presolve. Retrieving results from solvers. Exchanging information with solvers via suffixes. Alternating between models. Named problems. 15. NETWORK LINEAR PROGRAMS. Minimum-cost transshipment models. Other network models. Declaring network models by node and arc. Rules for node and arc declarations. Solving network linear programs. 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 functions. 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 complementarity constraints. 20. INTEGER LINEAR PROGRAMS. Integer variables. Zero-one variables and logical conditions. Practical considerations in integer programming. APPENDIX A: AMPL REFERENCE MANUAL. INDEX.

「Nielsen BookData」より

この本の情報

書名 AMPL : a modeling language for mathematical programming
著作者等 Fourer, Robert
Gay, David M.
Kernighan, Brian W.
Gay David
出版元 Brooks/Cole-Thomson Learning
刊行年月 c2003
版表示 2nd ed
ページ数 xxi, 517 p.
大きさ 25 cm
ISBN 0534388094
NCID BA69070426
※クリックでCiNii Booksを表示
言語 英語
出版国 アメリカ合衆国
この本を: 
このエントリーをはてなブックマークに追加

このページを印刷

外部サイトで検索

この本と繋がる本を検索

ウィキペディアから連想