Home

Pyomos

Pyomos is an open-source Python library for formulating and solving mathematical optimization problems. It provides a high-level algebraic modeling language that allows users to define decision variables, constraints, and objective functions using Python expressions. The design emphasizes readability and modularity, enabling complex models to be built from reusable components.

Models in Pyomos are written by declaring variables with specified domains (continuous, integer, or binary), adding

Pyomos supports a range of problem types, including linear, mixed-integer, and nonlinear optimization. It provides an

Architecture-wise, Pyomos separates the modeling kernel from solver adapters, allowing the core API to stay solver-agnostic.

Licensing and usage: Pyomos is released under an open-source license and is used by researchers and practitioners

constraints
as
expressions
over
these
variables,
and
specifying
a
scalar
objective
to
minimize
or
maximize.
The
syntax
is
designed
to
resemble
mathematical
notation
while
benefiting
from
Python's
programming
capabilities,
such
as
looping,
data
structures,
and
function
calls.
abstraction
layer
to
connect
to
external
solvers
such
as
popular
linear
and
integer
programming
engines,
enabling
users
to
solve
problems
without
changing
their
modeling
code.
It
can
import
and
export
standard
formats
for
data
exchange
and
can
be
integrated
with
Python
data
sources
like
lists,
arrays,
or
CSV
files.
The
project
emphasizes
extensibility,
with
a
plugin-like
mechanism
to
add
new
solvers
or
problem
features.
to
prototype
models,
reproduce
experiments,
and
teach
optimization
concepts.
Documentation
and
tutorials
accompany
the
project
to
help
new
users
start
quickly.