Buchhandlung BOOKandPAPER.store

Suche

Pyomo — Optimization Modeling in Python

Pyomo — Optimization Modeling in Python

William E. Hart; Carl D. Laird; Jean-Paul Watson; David L. Woodruff; Gabriel A. Hackebeil; Bethany L. Nicholson; John D. Siirola

Taschenbuch
2018 Springer International Publishing
Auflage: 2. Auflage
XVIII, 277 Seiten; XVIII, 277 p. 13 illus., 8 illus. in color.; 23.5 cm x 15.5 cm
Sprache: English
ISBN: 978-3-319-86482-2

Rezension verfassen

€ 62,69

in den Warenkorb
Hauptbeschreibung

This book provides a complete and comprehensive guide to Pyomo (Python Optimization Modeling Objects) for beginning and advanced modelers, including students at the undergraduate and graduate levels, academic researchers, and practitioners. Using many examples to illustrate the different techniques useful for formulating models, this text beautifully elucidates the breadth of modeling capabilities that are supported by Pyomo and its handling of complex real-world applications. This second edition provides an expanded presentation of Pyomo’s modeling capabilities, providing a broader description of the software that will enable the user to develop and optimize models. Introductory chapters have been revised to extend tutorials; chapters that discuss advanced features now include the new functionalities added to Pyomo since the first edition including generalized disjunctive programming, mathematical programming with equilibrium constraints, and bilevel programming.


Pyomois an open source software package for formulating and solving large-scale optimization problems. The software extends the modeling approach supported by modern AML (Algebraic Modeling Language) tools. Pyomo is a flexible, extensible, and portable AML that is embedded in Python, a full-featured scripting language. Python is a powerful and dynamic programming language that has a very clear, readable syntax and intuitive object orientation. Pyomo includes Python classes for defining sparse sets, parameters, and variables, which can be used to formulate algebraic expressions that define objectives and constraints. Moreover, Pyomo can be used from a command-line interface and within Python's interactive command environment, which makes it easy to create Pyomo models, apply a variety of optimizers, and examine solutions.




Zitat aus einer Besprechung
“This book provides a detailed guide to Pyomo for beginners and advanced users from undergraduate students to academic researchers to practitioners. … the book is a good software guide which I strongly recommend to anybody interested in looking for an alternative to commercial modeling languages in general or in learning or intensifying their Pyomo skills in particular.” (Christina Schenk, SIAM Review, Vol. 61 (1), March, 2019)

Klappentext

This book provides a complete and comprehensive guide to Pyomo (Python Optimization Modeling Objects) for beginning and advanced modelers, including students at the undergraduate and graduate levels, academic researchers, and practitioners. Using many examples to illustrate the different techniques useful for formulating models, this text beautifully elucidates the breadth of modeling capabilities that are supported by Pyomo and its handling of complex real-world applications. This second edition provides an expanded presentation of Pyomo’s modeling capabilities, providing a broader description of the software that will enable the user to develop and optimize models. Introductory chapters have been revised to extend tutorials; chapters that discuss advanced features now include the new functionalities added to Pyomo since the first edition including generalized disjunctive programming, mathematical programming with equilibrium constraints, and bilevel programming.

Pyomo is an open source software package for formulating and solving large-scale optimization problems. The software extends the modeling approach supported by modern AML (Algebraic Modeling Language) tools. Pyomo is a flexible, extensible, and portable AML that is embedded in Python, a full-featured scripting language. Python is a powerful and dynamic programming language that has a very clear, readable syntax and intuitive object orientation. Pyomo includes Python classes for defining sparse sets, parameters, and variables, which can be used to formulate algebraic expressions that define objectives and constraints. Moreover, Pyomo can be used from a command-line interface and within Python's interactive command environment, which makes it easy to create Pyomo models, apply a variety of optimizers, and examine solutions.




Review of the first edition:



Documents a simple, yet versatile tool for modeling and solving optimization problems. … The book, by Bill Hart, CarlLaird, Jean-Paul Watson, and David Woodruff, is essential to the usability of Pyomo, serving as the Pyomo documentation. … has contents for both an inexperienced user, and a computational operations research expert. … with examples of each of the concepts discussed.




 —Nedialko B. Dimitrov, 
INFORMS Journal on Computing
, Vol. 24 (4), Fall 2012




1. Introduction.- Part I. An Introduction to Pyomo.- 2. Mathematical Modeling and Optimization.- 3. Pyomo Overview.- 4. Pyomo Models and Components.- 5. The Pyomo Command.- 6. Data Command Files.- Part II. Advanced Features and Extensions.- 7. Nonlinear Programming with Pyomo.- 8. Structured Modeling with Blocks.- 9. Generalized Disjunctive Programming.- 10. Stochastic Programming Extensions.- 11. Differential Algebraic Equations.- 12. Mathematical Programs with Equilibrium Constraints.- 13. Bilevel Programming.- 14. Scripting.- A. A Brief Python Tutorial.- Index.

William E. Hart, Jean-Paul Watson, Carl D. Laird, Bethany L. Nicholson, and John D. Siirola are researchers affiliated with the Sandia National Laboratories in Albuquerque, New Mexico. David Woodruff is professor is the graduate school of management at the University of California, Davis. Gabriel Hackebeil is a math programming consultant at the University of Michigan.