Release Notes#

0.12.14#

New Features#

  • Add C++ dimod::abc::QuadraticModelBase::remove_variables() method and accompanying overloads.

  • Speed up C++ dimod::Expression::remove_variables() method.

0.12.13#

New Features#

  • Build wheels for Python 3.12.

  • Build C++ extensions with Cython 3.

0.12.12#

New Features#

  • Add mimo() function for generating a multi-input multiple-output (MIMO) channel-decoding problem.

  • Add coordinated_multipoint() function for generating a coordinated multi-point (CoMP) decoding problem.

0.12.11#

New Features#

  • Make SampleSet.relabel_variables() non-blocking in all cases. Previously it would block when inplace=False.

  • Implement SampleSet serialization schema version 3.2.0.

    Version 3.2.0 replaces float values that represent integers with int in the "data" field of any arrays returned by SampleSet.to_serializable(). In some pathological cases this can result in a much smaller representation when the data dictionaries are json-serialized by avoiding the redundant .0 appended to every value.

    This is a backwards-compatible change.

  • Add penalization_method parameter to BinaryQuadraticModel.add_linear_inequality_constraint(). It allows the use of unbalanced penalization https://arxiv.org/abs/2211.13914 instead of the slack variables method for the inequality constraints.

Bug Fixes#

  • Fix the behavior of SampleSet.relabel_variables() when inplace=True. Previously the method incorrectly returned a copy when the sample set was unresolved.