Changelogs » Dimod

PyUp Safety actively tracks 316,954 Python packages for vulnerabilities and notifies you when to upgrade.

Dimod

0.10.0.dev6

Changes
  -------
  * Promote `dimod.binary.binary_quadratic_model.BinaryQuadraticModek` to the top-level `dimod` namespace and remove `dimod.binary_quadratic_model.BinaryQuadraticModel` 847
  
  Fixes
  -----
  * Fix issue where `Variables._relabel` mislabeled other variables a0791b0

0.10.0.dev5

New Features
  ------------
  * Add `add_bqm` method to C++ BinaryQuadraticModel https://github.com/dwavesystems/dimod/pull/821, https://github.com/dwavesystems/dimod/pull/823
  * Add `Structured.valid_bqm_graph` method for verifying input problem structure https://github.com/dwavesystems/dimod/pull/832
  * Reimplement `BinaryQuadraticModel` to use new C++ code https://github.com/dwavesystems/dimod/pull/828
  * `BinaryQuadraticModel` can now be manipulated symbolically https://github.com/dwavesystems/dimod/pull/834
  * `load` function can now load all model types https://github.com/dwavesystems/dimod/pull/841, https://github.com/dwavesystems/dimod/pull/843
  * `DiscreteQuadraticModel` now has an `.offset` attribute https://github.com/dwavesystems/dimod/pull/838
  * Add `ConstrainedQuadraticModel` class https://github.com/dwavesystems/dimod/pull/839
  * Add `make_header`, `read_header` and `write_header` utility functions https://github.com/dwavesystems/dimod/pull/842
  * Add `ExactDQMSampler` https://github.com/dwavesystems/dimod/pull/820
  
  Fix
  ---
  * Fix type promotions in binary quadratic models with object biases https://github.com/dwavesystems/dimod/pull/836

0.10.0.dev4

New Features
  ------------
  * Support PEP518 for building the package https://github.com/dwavesystems/dimod/pull/814
  * Add `cyVariables.size()` and `.at(..)` to improve cython access to the `Variables` object
  * Add new `QuadraticModelBase` and `BinaryQuadraticModel` implementation in c++ https://github.com/dwavesystems/dimod/pull/818, https://github.com/dwavesystems/dimod/pull/819
  
  Fixes
  -----
  * Fix broken documentation links https://github.com/dwavesystems/dimod/pull/815

0.10.0.dev3

Changes
  -------
  * Drop `AdjMapBQM` and `AdjArrayBQM` 788
  
  New Features
  ------------
  * `gnm_random_bqm` generator 808
  * Allow sample methods decorated by nonblocking_sample_method to
  return sample sets that can indicate their doneness. This allows
  ScaleComposite to be properly non-blocking even when there is
  a vartype change 805
  * `DiscreteQuadraticModel.degree()` method
  
  Improvements
  ------------
  * `DiscreteQuadraticModel.adj` is no longer constructed each time on the fly 807
  * Cython implementation of the `Variables` object https://github.com/dwavesystems/dimod/pull/812
  
  Fixes
  -----
  * Windows wheels now correctly include `.pxd` files.

0.10.0.dev2

Changes
  -------
  * Drop `AdjMapBQM` and `AdjArrayBQM` 788
  
  New Features
  ------------
  * `gnm_random_bqm` generator 808
  * Allow sample methods decorated by nonblocking_sample_method to
  return sample sets that can indicate their doneness. This allows
  ScaleComposite to be properly non-blocking even when there is
  a vartype change 805
  * `DiscreteQuadraticModel.degree()` method
  
  Improvements
  ------------
  * `DiscreteQuadraticModel.adj` is no longer constructed each time on the fly 807
  
  Fixes
  -----
  * Windows wheels now correctly include `.pxd` files.

0.10.0.dev1

Changes
  -------
  * Drop `AdjMapBQM` and `AdjArrayBQM` 788
  
  New Features
  ------------
  * `gnm_random_bqm` generator 808
  * Allow sample methods decorated by nonblocking_sample_method to
  return sample sets that can indicate their doneness. This allows
  ScaleComposite to be properly non-blocking even when there is
  a vartype change 805
  * `DiscreteQuadraticModel.degree()` method
  
  Improvements
  ------------
  * `DiscreteQuadraticModel.adj` is no longer constructed each time on the fly 807

0.10.0.dev0

Development Release

0.9.15

Fixes
  -----
  * Windows wheels now correctly include `.pxd` files. 826

0.9.14

New Features
  ------------
  * `DiscreteQuadraticModel` and `SampleSet` now use the same underlying variable representation. 772, 779
  * `DiscreteQuadraticModel.add_linear_equality_constraint` method. 774, 787, 798
  * `AdjVectorBQM.add_linear_equality_constraint` method. 784
  * Samplers now swallow unknown keyword arguments. 796, 799
  * `SpinReversalTransformComposite` no longer requires a structured sampler. 802
  
  Fixes
  ------
  * Stopped using deprecated methods and functions to reduce the number of deprecation warnings. 773
  * `DiscreteQuadraticModel.copy()` now works correctly. 777
  * Fix handling of integer-valued floats in Variables. 779
  * Fix the `cyDiscreteQuadraticModel.dtype` setting. 783

0.9.13

Fixes
  -----
  * `DQM.from_numpy_vectors`, `.set_quadratic` and `.set_quadratic_case` now correctly raise a `ValueError` when the user attempts to create an interaction between cases in a variable
  * `BQM.from_numpy_vectors` now maintains the correct variable order
  * `AdjDictBQM` biases are no longer 0 dimensional arrays when constructed from a numpy matrix
  * Fixed column alignment issue when printing sample sets
  
  New Features
  ------------
  * C++ `AdjVectorBQM` and `AdjMapBQM` can now be constructed from COO-formatted arrays
  * Python `AdjVectorBQM.from_numpy_vectors` and `AdjMapBQM.from_numpy_vectors` is now much more performant
  * Cython `DiscreteQuadrataticModel` object now uses C++ COO constructors rather than an ad hoc implementation
  * `gnp_random_bqm` generator for randomly connected BQMs

0.9.12

New Features
  ------------
  * Documentation improvements
  * Improved error messages and variable names in `DQM.from_numpy_vectors`
  * `.clang-format` file for C++ formatting
  
  Fixes
  -----
  * `DQM.from_numpy_vectors` no longer segfaults when given inconsistent inputs

0.9.11

Changes
  -------
  * Deprecated `SampleSet.append_variables`
  
  New Features
  ------------
  * `append_variables` function, replacing the funcionality of `SampleSet.append_variables`
  * `append_vectors` function, to add more data vactors to a sample set
  * Documentation improvements
  * Support for python 3.9
  
  Fixes
  ------
  * Fix c++ target for windows build

0.9.10

Fixes
  -----
  * Fix the behavior of the file-like returned by `DQM.to_file`

0.9.9

New Features
  -----------
  * New parallel constructor for c++ AdjMapBQM
  * `DQM.to_file` now returns a seekable file-like
  * `DQM.from_numpy_vectors` now reserves the quadratic vectors which should reduce memory and speed up construction
  
  Fixes
  -----
  * `DQM.from_file` now correctly accepts bytes-like objects
  
  Changes
  -------
  * `DQM.to_file`'s `compressed` kwarg has been deprecated in favor of `compress`

0.9.8

Fixes
  -----
  * Support printing sample sets with discrete variables

0.9.7

New Features
  ------------
  * New `DISCRETE` vartype for sample sets
  * `DiscreteQuadraticModel` class
  * New parallel constructor for dense c++ BQMs

0.9.7.dev1

New Features
  ------------
  * New `DISCRETE` vartype for sample sets

0.9.7.dev0

New Features
  ------------
  * `DiscreteQuadraticModel` class
  * New parallel constructor for dense c++ BQMs

0.9.6

New Features
  ------------
  * `Structured.to_networkx_graph` mixin method
  * `.min`, `.max`, and `.sum` methods on BQM views
  * `nonblocking_sample_method` decorators for asynchronous samplers
  * `anti_crossing_loops`, `anti_crossing_clique`, and `doped` problem generators
  * `BQM.to_file` and `BQM.from_file` methods for cyBQMs
  
  Fixes
  -----
  * `VartypeView.relabel_variables` no longer sometimes returnes models with the wrong vartype
  * `BQM.relabel_variables_as_integers` now works correctly when `inplace=False`

0.9.5

New Features
  ------------
  * `BQM.normalize` now returns the value the BQM was scaled by
  * `SampleSet.relabel_variables` no longer blocks for unresolved sample sets
  * `FileView` has a new parameter, `ignore_variables` that treats the BQM as integer-labelled
  * `ScaleComposite` no longer blocks
  
  Fixes
  -----
  * `FileView.seek` now works correctly with `io.SEEK_END`
  
  Changes
  -------
  * `BinaryPolynomial` support in `ScaleComposite` has been removed

0.9.4

New Features
  ------------
  • `assert_consistent_bqm` to `dimod.testing` for testing different BQM implementations
  • Testing is now done with parameterized package - this does not affect installed packages
  • FileView version 2.0 with improved docs

0.9.3

New Features
  ------------
  * `pack_samples` kwarg for `SampleSet.to_serializable()` method that allows the user to _not_ pack samples. This means bumping the sample set serialization version to 3.1.0
  
  Fixes
  -----
  * `SampleSet.info` is now correctly propagated through the `ClipComposite`
  * All `.pyx` and `.pxd` files are included in the MANIFEST which means that `cimport dimod` will now work correctly

0.9.2

New Features
  ------------
  * BQM C++ headers are now in `dimod/include/dimod/`. Packages that need access to the headers can get the path using the new `get_dimod_headers()` function. Note that the C++ code is still considered unstable and does not respect semantic versioning.
  * `Initialized` ABC and accompanying `parse_initial_states` method for samplers that accept initial states.
  * `IdentitySampler` that returns passed-in initial states.
  * `ising_to_qubo` function now accepts an underspecified `h` arg.
  
  Fixes
  -----
  * General performance and structural improvements to C++ bqms.
  * cyBQMs are now pickleable and deepcopyable.

0.9.1

Changes
  -------
  * Removed deprecated kwarg in `SpinReversalTransformComposite`
  
  Fixes
  -----
  * `RoofDualityComposite`, `ConnectedComponentComposite` and `FixedVariableComposite` now all work with the new BQM types
  
  New Features
  ------------
  * A sample method testing framework for Samplers
  * Significant documentation update
  * A unified location for header files

0.9.0


        

0.9.0.dev6

Fixes
  -----
  * Fix numpy version range
  * `BQM.get_quadratic` now has consistent/correct behaviour when a default is provided
  * Restored some removed methods, `BQM.to_coo`, `.from_coo`, `.to_numpy_matrix`, `.from_numpy_matrix`, `.to_networkx_graph`, `.from_networkx_graph`
  * `BQM.energies` now raises the correct exception when given bad samples
  
  New Features
  ------------
  * Binary quadratic models can now be constructed from linear/quadratic iterators
  * `BQM.base` attribute to help when constructing from views
  * `BQM.energies` mixin now uses a faster numpy-based energy calculation

0.9.0.dev5

Changes
  -------
  * `BinaryQuadraticModel` now subclasses `AdjDictBQM`
  * Remove `BinaryQuadraticModel.to_coo` and `BinaryQuadraticModel.from_coo`
  * Remove `BinaryQuadraticModel.to_numpy_matrix` and `BinaryQuadraticModel.from_numpy_matrix`
  * Remove `BinaryQuadraticModel.SPIN` and `BinaryQuadraticModel.BINARY`
  * Remove `vartype` keyword argument from `BinaryQuadraticModel.add_variable`, `BinaryQuadraticModel.add_variables`, `BinaryQuadraticModel.add_interaction` and `BinaryQuadraticModel.add_interactions`
  * The `.spin` and `.binary` properties of binary quadratic models are now views rather than copies
  
  New Features
  ------------
  * `as_bqm` function for constructing binary quadratic models
  * Most `BinaryQuadraticModel` methods and properties have been added to `AdjArrayBQM`, `AdjDictBQM`, `AdjMapBQM` and `AdjVectorBQM`

0.9.0.dev4

Fixes
  -----
  * Fix deserialization of variables that are nested tuples
  * Include `shapeablebqm.pyx.src` in the `manifest.ini`

0.8.21

New Features
  ------------
  * `SampleSet` objects can now have additional attributes assigned to them
  
  Fixes
  -----
  * Fix float/int issues in deprecated deserialization format

0.8.20

Fixes
  -----
  * `LockableDict` methods that have return values no longer always return None