Pybnb

Latest version: v0.6.1

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

Scan your dependencies

Page 2 of 3

0.4.0

~~~~~~~~~~~~~~~~~~

* Major redesign of node serialization, allowing for much
faster serial performance (especially with PyPy): The
`node.state` attribute can now be assigned anything (must
pickle-able to work in the parallel case). The
`node.resize(...)` method should no longer be called. (5)
* Adding `pybnb.config` to allow customizing serialization
of node state (e.g., use `dill` instead of `pickle`). See
online docs for more information.
* Allowing for lexicographic queue strategies: The
`queue_strategy` solve option can now be assigned a tuple
of existing strategies (e.g., `('bound','objective')`) to
define a lexicographic queue strategy. Equivalently, when
the 'custom' queue strategy is selected, users can assign
a tuple to the `node.queue_priority` attribute.
* Adding a last-in, first-out queue strategy ('lifo').

0.3.0

~~~~~~~~~~~~~~~~~~

* Adding new sections to the online docs.
* Fix to pybnb.solve helper function. The dispatcher_rank
keyword was not being used to initialized the solver.
* Adding 'log_new_incumbent' solver option that can be set
to False to disable immediate logging of incumbent
updates, in case this is slowing down the dispatcher.
* Renaming 'node_priority_strategy' solver option to
'queue_strategy'.
* Adding 'scale_function' solver option to allow customizing
how the absolute gap is converted to a relative
gap. Default is max{1.0,|objective|}.
* Renaming 'absolute_tolerance' solver option to
'comparison_tolerance'.
* Renaming the pybnb.pyomo_tools sub-package to pybnb.pyomo.
* Renaming the 'cutoff' solve option to 'bound_stop'. Also
adding an 'objective_stop' solve option. Both options
trigger the 'objective_limit' termination condition
(replaces the 'cutoff' termination condition).
* Adding an optional notify_solve_begins callback to the
Problem base class.
* Removing worker_comm argument from the
notify_new_best_objective_* callbacks, as it is unsafe to
use when those methods are called.
* Adding documented Enum types for solution status,
termination condition, and node priority strategy.
* Adding handling for SIGINT and SIGUSER1 events to
initiate a graceful shutdown that tags the results
with an 'interrupted' termination condition.
* Adding 'disable_objective_call' solver option that
disables calls to the problem objective.
* Removing a number of collective MPI communicator calls
from the solve finalization process.
* Adding additional queue strategy implementations: 'random'
and 'local_gap'.

0.2.9

~~~~~~~~~~~~~~~~~~

* tagging with explicit support for Python 3.7 on PyPI

0.2.8

~~~~~~~~~~~~~~~~~~

* removing code that causes deprecation warnings in Python 3.7

0.2.7

~~~~~~~~~~~~~~~~~~

* removing code that causes deprecation warnings in Python 3.7
* compatibility fixes for next pyomo release

0.2.6

~~~~~~~~~~~~~~~~~~

* adding a best objective first node priority strategy
* performance improvements

Page 2 of 3

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.