qiskit_addon_opt_mapper.converters.IntegerToBinary¶
- class IntegerToBinary[source]¶
Bases:
OptimizationProblemConverterInteger to binary converter.
Convert a
OptimizationProbleminto new one by encoding integers with binary variables.This bounded-coefficient encoding used in this converted is proposed in [1], Eq. (5).
Examples
>>> from qiskit_addon_opt_mapper.problems import OptimizationProblem >>> from qiskit_addon_opt_mapper.converters import IntegerToBinary >>> problem = OptimizationProblem() >>> var = problem.integer_var(name='x', lowerbound=0, upperbound=10) >>> conv = IntegerToBinary() >>> problem2 = conv.convert(problem)
References
- [1]: Sahar Karimi, Pooya Ronagh (2017), Practical Integer-to-Binary Mapping for Quantum
Annealers. arxiv.org:1706.01945.
Class initializer.
Methods
__init__()Class initializer.
convert(problem)Convert an integer problem into a new problem with binary variables.
interpret(x)Convert back the converted problem (binary variables) to the original (integer variables).
- convert(problem)[source]¶
Convert an integer problem into a new problem with binary variables.
- Parameters:
problem (OptimizationProblem) – The problem to be solved, that may contain integer variables.
- Returns:
The converted problem, that contains no integer variables.
- Raises:
OptimizationError – if variable or constraint type is not supported.
- Return type:
OptimizationProblem