Dwave-ocean-sdk

Latest version: v6.10.0

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

Scan your dependencies

Page 21 of 27

0.6.6

New Features

- Support `dimod<0.13.0`. See [\266](https://github.com/dwavesystems/dwave-hybrid/pull/266).

Fixes

- Docs refresh, [\262](https://github.com/dwavesystems/dwave-hybrid/issues/262).

0.6.5

New Features

- Add `hybrid.Log`, a block to log user-define state metrics to a JSON file, python logger, or in-memory queue or list. See [\257](https://github.com/dwavesystems/dwave-hybrid/pull/257).

- Add convenience JSON encoders for commonly used NumPy (`hybrid.utils.NumpyEncoder`) and Ocean types (`hybrid.utils.OceanEncoder`). See [\257](https://github.com/dwavesystems/dwave-hybrid/pull/257).

Fixes

- Clarify docs, [\142](https://github.com/dwavesystems/dwave-hybrid/issues/142).

Upgrade

- Drop dimod 0.8.x support. Oldest supported dimod version is now 0.9.6. See [\259](https://github.com/dwavesystems/dwave-hybrid/pull/259).

0.6.4

New Features

- `make_origin_embeddings` problem decomposing utility that creates optimal embeddings for a lattice. Embeddings are compatible with the topology and shape of D-Wave QPU samplers (https://github.com/dwavesystems/dwave-hybrid/pull/252).
- `SublatticeDecomposer` that produces lattice-structured subproblems
(https://github.com/dwavesystems/dwave-hybrid/pull/252).

Bug Fixes

- `SteepestDescentProblemSampler` now actually uses `greedy.SteepestDescentSolver` (https://github.com/dwavesystems/dwave-hybrid/pull/250).

0.6.3

New Features

- Make `SpinReversalTransformComposite` nonblocking.

- Add a `seed` parameter to the constructor of `SpinReversalTransformComposite`.

- Improve the performance of the `Presolver` constructor by avoiding an unnecessary copy.

- Raise an `InvalidModelError` from `Presolver` when given a model with `float("nan")` bounds.

- Raise an `InvalidModelError` from `Presolver` when given a model that has a constraint with `float("nan")` weight or rhs.

- Add C++ `Presolver::restore()` method for restoring samples.

- Add domain propagation to `dwave::presolve::Presolver`.

- Add removing small biases to `dwave::presolve::Presolver`.

- Support `Numpy>=1.17.3`, previously required `NumPy>=1.20.0`.

- Add a presolve normalization step to replace inf biases, bounds, offsets, right-hand-sides, etc with a large finite number.

- A newly instantiated `Presolver` will now have presolve techniques loaded by default.

- Add `TechniqueFlags` enum to represent different presolve techniques.

- Add C++ `dwave::presolve::Presolver::add_techniques()`, `dwave::presolve::Presolver::set_techniques()`, and `dwave::presolve::Presolver::techniques()` methods for manipulating the presolve techniques that will be used by the presolver.

- Update `Presolver.apply()`, `Presolver.normalize()`, and `Presolver.presolve()` to release Python\'s global interpreter lock (GIL).

- Reimplement the C++ `Presolver` using the PImpl pattern. This will make it easier to maintain binary compatibility going forward. See [\89](https://github.com/dwavesystems/dwave-preprocessing/issues/89).

- Add `dwave::presolve::Presolve::normalize()` C++ method.

- Add `dwave::presolve::Presolve::presolve()` C++ method.

- Raise an `InvalidModelError` from `Presolver` when given a model with `float("nan")` biases.

- Add `Presolver.feasibility()` method to return a `Feasibility` enum. This can be used to test the feasibility of presolved models.

- Add `time_limit_s` keyword argument to `Presolver.presolve()`.

- Add `time_limit` argument to C++ method `dwave::presolve::Presolver::presolve()`.

- Add `Presolver.normalize()` method. See [\78](https://github.com/dwavesystems/dwave-preprocessing/issues/78).

- Add `Presolver.presolve()` method. See [\78](https://github.com/dwavesystems/dwave-preprocessing/issues/78).

Upgrade Notes

- The wrapped C++ `dwave::presolve::Presolver` held by `cyPresolver.cpppresolver` is now stored as a pointer.

- Remove C++ `PostSolver` class. See [\90](https://github.com/dwavesystems/dwave-preprocessing/issues/90).

- A newly instantiated `Presolver` will now have presolve techniques loaded by default. Previously it would have no techniques loaded and the user would need to also call `Presolver.load_default_presolvers()`.

- Remove the C++ `dwave::presolve::Presolver::load_default_presolvers()` method.

- The C++ `Presolver` no longer has a header-only implementation.

- Raise an `InvalidModelError` rather than a `RuntimeError` when presolving a detached model.

- Change `Presolver` to no longer raise an `InfeasibleModelError` error for infeasible models.

- Remove the `InfeasibleModelError`.

- Speed up `PresolverImpl::normalization_remove_invalid_markers()` C++ method. This gives faster presolve normalization times for models with many discrete constraints.

- Speed up `PresolverImpl::technique_remove_small_biases()` C++ method. This gives faster presolve times for models with many small biases.

Bug Fixes

- Fix `ImportError` being raised on Windows when other `dwave` namespace packages are installed after `dwave-preprocessing`. See [\130](https://github.com/dwavesystems/dwave-preprocessing/issues/130).

- Fix the handling of quadratic constraints in presolve. Previously fixing variables in quadratic constraints would result in memory errors. See [dimod1351](https://github.com/dwavesystems/dimod/issues/1351).

Deprecation Notes

- Drop support for Python 3.7.

- Deprecate `Presolver.load_default_techniques()`. Use `Presolver.set_techniques(TechniqueFlags.Default)` instead.

0.6.0

Deprecate *dwave-neal* in favor of [dwave-samplers](https://github.com/dwavesystems/dwave-samplers).

0.5.9

New Features

- Add Python 3.10 support. See [\99](https://github.com/dwavesystems/dwave-neal/pull/99).

Page 21 of 27

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.