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.
In the third edition, much of the material has been reorganized, new
examples have been added, and a new chapter has been added describing
how modelers can improve the performance of their models. The authors
have also modified their recommended method for importing Pyomo. A big
change in this edition is the emphasis of concrete models, which provide
fewer restrictions on the specification and use of Pyomo models.
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.