Pyomo

Latest version: v6.7.3

Safety actively analyzes 638720 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 9 of 14

4.3

-------------------------------------------------------------------------------

- Scripts
- pyomo_install
- Added --pip-options to specify options for PIP option
- Added --index-url to specify the PyPI mirror
- Restructured this script to make it more modular
- Deprecated the --with-extras option
- Added "--venv-only" option for setting up a local python virtual
environment with no additional packages (apart from pip, setuptools, and
potentially wheel).
- Fixes when installing from zip files offline.
- get-pyomo-extras.py
- Misc fixes and updates
- pyomo
- Consolidated help information within the 'pyomo help' subcommand
- Added 'pyomo install-extras' to install third-party dependencies
- pyomo.bilevel
- Major changes to get the bilevel_ld solver working
- Extended the logic in SubModel to allow for implicit declarations of
upper-level variables.
- pyomo.check
- More complete scoping checks
- pyomo.core
- Changes to allow sorted output using DataPortal objects
- Bug fix in linear dualization transformation
- Adding a mechanism to load default configuration information from a
standard location.
- Changes to allow objectives to be used inside expressions, and to
allow objectives to be sent through the solver plugins
- Updating blocks so that models can be created and populated using rule options
- Added a domain property method to IndexedVar so it cannot be treated as having
a single domain
- Added the Var() 'dense' option. This defaults to True, which defines variables
densely. But sparse variables are defined when dense==False.
- Change to define a SOS constraint over the declared index set for a variable
unless an explicit index set is provided.
- Changes to ensure that most components do not define their data densely.
- pyomo.dae
- Updates to support Python3 and current Pyomo Transformation API
- Fixed the collocation extension to reduce the degrees of freedom for certain variables
- pyomo.gdp
- Many fixes to bilinear transformation
- Fixed the Big-M estimation routine to work with constant expressions
- pyomo.neos
- Added support for ephemeral solver options, which over-ride the
options dictionary
- Fixes to enable loading of solutions from NEOS solvers
- pyomo.opt
- Sort variable names when printing results
- Many fixes to sol reader.
- pyomo.pysp
- Updates to ScenarioStructure.dat to handle a larger
class of models that can have non-uniform variable sets
in later time stages. Also updating parsing rules to
allow for more convenient variable declarations
- NodeVariables / NodeDerivedVariables can be used in
place of StageVariables / StageDerivedVariables to
declare variables on a per-node basis
- Indexed variables can be declared without bracket
notation (e.g., x[*,*] -> x)
- Single or indexed block names can be used to
conveniently declare all variables found on that
block within a node or stage
- Re-write of runef and runbenders based off of new PySP
scripting tools
- Adding option to runbenders for including one or more
scenarios in the master benders problem
- Fixes to csvsolutionwriter so that it works with
distributed PH
- Added new script (evaluate_xhat) that allows users to
evaluate SP solutions on alternate scenario trees.
- Added more extensive checking to PySP->SMPS conversion
utility (pysp2smps) to alert users when conversion fails
due to non-uniform problem structure or missing
stochastic annotations
- Added helper routine to convert a networkx directed
graph into a PySP scenario tree model
- Fixes to PH for better handling of user warmstarts
- pyomo.repn
- Updates to the NL writer to handle new expression types.
- Added an MPS writer
- pyomo.scripting
- Updated the Pyro mip server to improve its efficiency
- pyomo.solvers
- Updates to xpress plugin to use the ASL interface to xpress.
- Fixed a major issue with the gap computation in the CPLEX direct/persistent
solver plugins
- Significant speed-up of the the CPLEX persistent plugin.
- Added the 'mps' mode for various solvers.
- Changes to the Pyro solver manager to allow out-of-order results collection

-------------------------------------------------------------------------------

4.2

-------------------------------------------------------------------------------

- pyomo.core
- Removed the 'initial' attribute from Var components.
- Removed the 'reset()' method from core components.
- Objective components now store sense for each objective.
- Added support for slicing when indexing a component.
- pyomo.dae
- Added methods to set and test the value of integral expressions
- pyomo.gdp
- Added property methods to access disjunction expressions (e.g. lower, upper)
- pyomo.opt
- Added support for ephemeral solver options that override the default
values set in the solver object.
- pyomo.neos
- Bug fixes to get data after calling NEOS
- Resolving issues with python 3
- pyomo.scripting
- Added --pyro-host and --pyro-port options
- Added shutdown capabilities to pyro solver manager
- Collect solve time for pyro solvers
- pyomo.pysp
- Added --pyro-host and --pyro-port options to manage pyro-based execution
in a more robust manner.
- Adding utility for converting PySP models into SMPS input files (pysp2smps).
- pyomo.solver
- Resolved serious issues with python direct interfaces:
- CPLEX: constants in linear range constraints and all quadratic
constraints were being excluded from the expression.
- CPLEX and GUROBI: actually raise an exception when a nonlinear
(non-quadratic) objective or constraint expression is encountered
rather than just emitting the linear and quadratic part of the
expression to the solver. This could lead to a naive user
thinking they have solved a general nonlinear model with these
solvers.
- CPLEX and GUROBI: do not skip trivial constraints by default.
Adding I/O option 'skip_trivial_constraints' to recover this
behavior.
- CPLEX: Merging as much of CPLEXPersistent with CPLEXDirect
as possible to avoid repeating bug fixes. More should be done,
but for now CPLEXDirect is a base class for CPLEXPersistent.
- Fix to various solver plugins so that variable bounds set to
float('inf') and float('-inf') are treated the same as variable
bounds set to None.
- Updates to Pyro solver managers
- Major performance enhancements for Pyro-based solver managers.
- Tasks can be uploaded to the dispatcher in bulk.
- Workers no longer use a timeout when requesting tasks from the queue, which
was wasting CPU cycles.
- Compatibility fixes when Pyro4 is used.
- other
- Updated the get-pyomo-extras.py script to install conditional dependencies
for Pyomo (e.g. xlrd and ipython)
- Adding logic to explicitly identify metasolvers. This information is
reflected in the 'pyomo help -s' command.
- Deprecated 'pyomo.os', which was not being actively supported.
- Added the 'pyomo info' subcommand to provide information about the Python
installation.

-------------------------------------------------------------------------------

4.1

-------------------------------------------------------------------------------

- API changes for model transformations
- Revised API for SOSConstraint, Suffix and Block components
- Optimization results are now loaded into models
- Removed explicit specification of model preprocessing
- Resolved many issues with writing and solving MPECs
- Changes to MPEC meta-solver names
- The solution output for runph has been changed to
- Pyomo subcommands can now use configuration files (e.g. pyomo solve config.json)
- New JSON/YAML format for parameter data
- Added a script to install pyomo.extras

-------------------------------------------------------------------------------

4.0

-------------------------------------------------------------------------------

This release rebrands Coopr as Pyomo, which reflects the fact that
users have consistently confused the Coopr software and the Pyomo
modeling language. Pyomo 4.0 includes the following significant
changes:

- Pyomo provides a single source tree replacing all Coopr packages
- The 'pyomo' command replaces the 'coopr' command
- The 'pyomo solve' subcommand replaces the former 'pyomo' command
- The 'pyomo.environ' package is now used to import core Pyomo capabilities
- Robust support for Python 3.x

The following are highlights of this release:

- Modeling
* Added a RealInterval domain
* Major rework of coopr.dae. Can now represent higher order and partial
differential equations. Also added more discretization schemes.

- Solvers
* Added preliminary support for a Benders solver
* Added support for the BARON solver
* Preliminary support for MPEC solvers, including the PATH solver

- Transformations
* Added explicit support for model transformations
* The 'pyomo solve --transform' option specified model transformations
* Created a streamline linear dual transformation

- Other
* The 'pyomo help' command documents installed capabilities
* Major rework and simplification of the 'pyomo_install' script
* Added support for parallelism using Pyro4

-------------------------------------------------------------------------------

3.5.8787

-------------------------------------------------------------------------------

- pyomo.opt 2.12.2
pyomo.core 3.6.4
pyomo.pysp 3.5.5
pyomo.solvers 3.2.1

-------------------------------------------------------------------------------

3.5.8748

-------------------------------------------------------------------------------

- pyomo.pysp 3.5.4

-------------------------------------------------------------------------------

Page 9 of 14

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.