Releases: dwavesystems/dimod
Releases · dwavesystems/dimod
0.12.1
Bug Fixes
- Add the ability to set offsets on
ObjectiveView
andConstraintView
. This was previously removed in dimod 0.12.0. See #1287
- Add
ObjectiveView.add_linear_from()
andConstraintView.add_linear_from()
methods. These were previously removed in dimod 0.12.0.
- Add
ObjectiveView.add_variable()
andConstraintView.add_variable()
methods. These were previously removed in dimod 0.12.0.
0.12.0
Prelude
The entire C++ library has been rewritten for performance and consistency.
New Features
- New
dimod::abc::QuadraticModelBase
abstract base class.
- Better performance for linear models.
- Add
dimod.cyqmbase.cyQMBase_template
Cython class to serve as an abstract base class for Cython quadratic models.
- Break
dimod/libcpp.pxd
into a full Cython subpackage to mirror the structure underdimod/include/
. This allows for better organization, and less need to recompile all Cython files when changing parts of the C++ library. Packages that depend on dimod are still encouraged to use thefrom dimod.libcpp cimport ...
syntax.
-
Build wheels for Python 3.11.
-
Add C++
dimod::ConstrainedQuadraticModel
class.
- Add C++
ConstrainedQuadraticModel.add_constraint()
overload that allows a user to move a binary quadratic model or quadratic model as a constraint.
- Add C++
ConstrainedQuadraticModel.constraint_weak_ptr()
method.
- Make
BinaryQuadraticModel.vartype
callable. This allows for more uniform syntax between binary quadratic models, quadratic models and constrained quadratic models.
- Replace current
ConstrainedQuadraticModel
implementation with one implemented in Cython.
- Add
ConstrainedQuadraticModel.clear()
method.
Bug Fixes
- Fix a performance regression introduced in 0.10.0 when loading linear binary quadratic models from files.
- Fix the handling of self-loops in
dimod::Expression::add_quadratic()
and similar methods.
- Fix C++
ConstrainedQuadraticModel.remove_variable()
method. Previously it would segmentation fault.
Upgrade Notes
- Rewrite
dimod::QuadraticModelBase
and move it todimod::abc::QuadraticModelBase
inabc.h
.
- Move
dimod::Vartype
,dimod::vartype_info
, anddimod::vartype_limits` to
vartypes.h``.
- Remove the
dimod::Neighborhood
class.
- Remove
iterators.h
.
- Move
dimod::BinaryQuadraticModel
tobinary_quadratic_model.h
.
- Remove
dimod.binary.cybqm.cyBQMBase
class.
- Remove
dimod.quadratic.cyqm.cyQMBase
class.
- Build
manylinux2014
wheels. Previously we builtmanylinux2010
.
- Build
arm64
andx86_64
wheels for macos. Previously we builtx86_64
anduniversal2
.
Deprecation Notes
- Deprecate the
cascade
keyword argument inConstrainedQuadraticModel.fix_variable()
.
- Deprecate the
cascade
keyword argument inConstrainedQuadraticModel.fix_variables()
.
0.12.0rc1
Update version 0.12.0.dev3 -> 0.12.0rc1
0.12.0.dev3
Fixes
- Fix C++
ConstrainedQuadraticModel.remove_variable()
method. Previously it would segmentation fault.
0.12.0.dev2
Update version 0.12.0.dev1 -> 0.12.0.dev2
0.12.0.dev1
New Features
- Add C++
dimod::ConstrainedQuadraticModel
class.
- Make
BinaryQuadraticModel.vartype
callable. This allows for more uniform syntax between binary quadratic models, quadratic models and constrained quadratic models.
- Replace current
ConstrainedQuadraticModel
implementation with one implemented in Cython.
0.11.6
New Features
- Add
Variables._remove()
method.
- Added
weight
and penalty parameters onConstrainedQuadraticModel.add_constraint
methods to encoded weighted constraints.
- Add constrained quadratic model serialization version 1.3 to support soft constraints.
0.12.0.dev0
Prelude
The entire C++ library has been rewritten for performance and consistency.
New Features
- New
dimod::abc::QuadraticModelBase
abstract base class.
- Better performance for linear models.
- Add
dimod.cyqmbase.cyQMBase_template
Cython class to serve as an abstract base class for Cython quadratic models.
- Break
dimod/libcpp.pxd
into a full Cython subpackage to mirror the structure underdimod/include/
. This allows for better organization, and less need to recompile all Cython files when changing parts of the C++ library. Packages that depend on dimod are still encouraged to use thefrom dimod.libcpp cimport ...
syntax.
- Build wheels for Python 3.11.
Upgrade Notes
- Rewrite
dimod::QuadraticModelBase
and move it todimod::abc::QuadraticModelBase
inabc.h
.
- Move
dimod::Vartype
,dimod::vartype_info
, anddimod::vartype_limits` to
vartypes.h``.
- Remove the
dimod::Neighborhood
class.
- Remove
iterators.h
.
- Move
dimod::BinaryQuadraticModel
tobinary_quadratic_model.h
.
- Remove
dimod.binary.cybqm.cyBQMBase
class.
- Remove
dimod.quadratic.cyqm.cyQMBase
class.
- Build
manylinux2014
wheels. Previously we builtmanylinux2010
.
- Build
arm64
andx86_64
wheels for macos. Previously we builtx86_64
anduniversal2
.
0.11.6rc1
Update version 0.11.6.dev2 -> 0.11.6rc1
0.11.6.dev2
Bug Fixes
- Fix the type of soft constraint weights when loaded from files. The issue was introduced in 0.11.6.dev1.