Giter Club home page Giter Club logo

pyomoexamples's Introduction

pyomoexamples

Working with Pyomo

Pyomo Solvers and Solver Managers

Pyomo uses 'solver managers' to execute 'solvers' that perform optimization and other forms of model analysis. A solver directly executes an optimizer, typically using an executable found on the user's PATH environment. Solver managers support a flexible mechanism for asyncronously executing solvers either locally or remotely. The following solver managers are available in Pyomo:

neos       Asynchronously execute solvers on the NEOS server
phpyro     Specialized PH solver manager that uses pyro
pyro       Execute solvers remotely using pyro
serial     Synchronously execute solvers locally

If no solver manager is specified, Pyomo uses the serial solver manager to execute solvers locally. The pyro and phpyro solver managers require the installation and configuration of the pyro software. The neos solver manager is used to execute solvers on the NEOS optimization server.

Serial Solver Interfaces

The serial, pyro and phpyro solver managers support the following solver interfaces:

asl                  + Interface for solvers using the AMPL Solver
                       Library
baron                  The BARON MINLP solver
bilevel_blp_global   + Global solver for continuous bilevel linear
                       problems
bilevel_blp_local    + Local solver for continuous bilevel linear
                       problems
bilevel_bqp          + Global solver for bilevel quadratic
                       problems
bilevel_ld           + Solver for bilevel problems using linear
                       duality
cbc                    The CBC LP/MIP solver
conopt                 The CONOPT NLP solver
contrib.gjh            Interface to the AMPL GJH "solver"
cplex                  The CPLEX LP/MIP solver
cplex_direct           Direct python interface to CPLEX
cplex_persistent       Persistent python interface to CPLEX
gams                   The GAMS modeling language
gdpbb                * Branch and Bound based GDP Solver
gdpopt               * The GDPopt decomposition-based Generalized
                       Disjunctive Programming (GDP) solver
glpk                 * The GLPK LP/MIP solver
gurobi                 The GUROBI LP/MIP solver
gurobi_direct          Direct python interface to Gurobi
gurobi_persistent      Persistent python interface to Gurobi
ipopt                * The Ipopt NLP solver
mindtpy              * MindtPy: Mixed-Integer Nonlinear
                       Decomposition Toolbox in Pyomo
mosek                  Direct python interface to Mosek
mpec_minlp           + MPEC solver transforms to a MINLP
mpec_nlp             + MPEC solver that optimizes a nonlinear
                       transformation
multistart           * MultiStart solver for NLPs
path                   Nonlinear MCP solver
pico                   The PICO LP/MIP solver
ps                   * Pyomo's simple pattern search optimizer
py                   + Direct python solver interfaces
scip                   The SCIP LP/MIP solver
trustregion          * Trust region filter method for black
                       box/glass box optimization
xpress               * The XPRESS LP/MIP solver

An asterisk indicates solvers that are currently available to be run from Pyomo with the serial solver manager. A plus indicates meta- solvers, that are always available.

Pyomo also supports solver interfaces that are wrappers around third- party solver interfaces. These interfaces require a subsolver specification that indicates the solver being executed. For example, the following indicates that the ipopt solver will be used:

asl:ipopt

The asl interface provides a generic wrapper for all solvers that use the AMPL Solver Library.

Note that subsolvers can not be enumerated automatically for these interfaces. However, if a solver is specified that is not found, Pyomo assumes that the asl solver interface is being used. Thus the following solver name will launch ipopt if the 'ipopt' executable is on the user's path:

ipopt

NEOS Solver Interfaces

The neos solver manager supports solver interfaces that can be executed remotely on the NEOS optimization server. The following solver interfaces are available with your current system configuration:

bonmin       Heuristic MINLP solver
cbc          MILP solver
conopt       Feasible path NLP solver
couenne      Exact MINLP solver
cplex        MILP solver
filmint      Heuristic MINLP solver
filter       SQP NLP solver
ipopt        Interior point NLP solver
knitro       Convex MINLP solver
l-bfgs-b     Bound-constrained NLP solver
loqo         Interior point NLP solver
minlp        Heuristic MINLP solver
minos        SLC NLP solver
minto        MILP solver
mosek        Interior point NLP solver
ooqp         Convex QP solver
path         Nonlinear MCP solver
snopt        SQP NLP solver

pyomoexamples's People

Contributors

tvaditya avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.