QuadratizedIsingConverter¶
- class QuadratizedIsingConverter(strength=None, strength_multiplier=2.0)[source]¶
Bases:
BinaryToIsingConverterConvert binary polynomials to Ising operators via quadratization to QUBO/BQM.
The penalty term enforcing
p == u·vfor each aux-var substitution must dominate the objective for the QUBO’s global minimum to coincide with the original HUBO’s. WhenstrengthisNonethe converter picksstrength_multiplier * max(|hubo coefficient|)(with a floor ofstrength_multiplier).Warning
The adaptive default is sized to outweigh a single worst-case term, not the sum of many simultaneously violated terms. For dense HUBOs where the cumulative objective contribution scales with the number of variables (e.g. fully-connected QUBOs with
O(n²)active terms), the default may under-penalise constraint violations and rank infeasible solutions above feasible ones. Overridestrengthor raisestrength_multiplierfor such instances.Attributes Summary
Explicit penalty strength.
Multiplier applied to
max(|hubo coefficient|)whenstrengthisNone.Methods Summary
convert(problem)Convert a canonical binary-polynomial problem to an Ising Hamiltonian.
Attributes Documentation
- strength: float | None = None¶
Explicit penalty strength.
Nonetriggers adaptive sizing from the input HUBO’s coefficient magnitudes.
- strength_multiplier: float = 2.0¶
Multiplier applied to
max(|hubo coefficient|)whenstrengthisNone. Values ≥ 2 keep the penalty strictly larger than the worst single objective term — but not necessarily larger than the sum of many simultaneously violated terms (see class docstring).
Methods Documentation