Skip to content

0.10.0.dev8

Pre-release
Pre-release
Compare
Choose a tag to compare
@arcondello arcondello released this 09 Jul 20:34
· 1322 commits to main since this release
2bc47e9

Release Notes

0.10.0.dev8

New Features

  • Add bin_packing, knapsack and multi_knapsack constrained quadratic model generators.
  • Add BinaryQuadraticModel.is_almost_equal method for testing approximate equality to other binary quadratic models.
  • Add Variables.copy method, implemented as a cpdef method for Cython and Python access.
  • Support specifying lower and upper bounds for integer variables in quadratic models:

    • Add lower_bound and upper_bound keyword arguments to QuadraticModel.add_variable.
    • Add QuadraticModel.lower_bound and QuadraticModel.upper_bound methods.

Upgrade Notes

  • Remove dimod.utils.LockableDict and dimod.decorators.lockable_method. Also SampleSet.is_writeable can no longer be set to False.

Deprecation Notes

  • AdjVectorBQM and AdjDictBQM are deprecated and will be removed in dimod 0.11.0. Use BinaryQuadraticModel with dtype=np.float64 and dtype=object respectively.
  • SampleSet.is_writeable is deprecated and now always returns True.

Bug Fixes

  • Add support for AdjVectorBQM and AdjDictBQM in ConstrainedQuadraticModel.
  • Fix shallow copies of Variables objects when using copy.copy.
  • Implement rule of five for dimod::NeighborhoodIterator, dimod::ConstNeighborhoodIterator, and dimod::ConstQuadraticIterator. This fixes double frees caused by the default copy constructor copying information that is not intended to be shared.
  • Fix shallow copies of BinaryQuadraticModel with object dtype when using copy.copy.