NumberPartition

class NumberPartition(number_set)[source]

Bases: OptimizationApplication

Optimization application for the “number partition” [1] problem.

References

[1]: “Partition problem”, https://en.wikipedia.org/wiki/Partition_problem

Parameters:

number_set (list[int]) – A list of integers

Methods

interpret(result)[source]

Interpret a result as a list of subsets

Parameters:

result (OptimizationResult | np.ndarray) – The calculated result of the problem

Returns:

A list of subsets whose sum is the half of the total.

Return type:

list[list[int]]

static sample_most_likely(state_vector)

Compute the most likely binary string from state vector.

Parameters:

state_vector (QuasiDistribution | Statevector | np.ndarray | dict) – state vector or counts or quasi-probabilities.

Returns:

binary string as numpy.ndarray of ints.

Raises:

ValueError – if state_vector is not QuasiDistribution, Statevector, np.ndarray, or dict.

Return type:

np.ndarray

to_quadratic_program()[source]

Convert a number partitioning problem instance into a QuadraticProgram

Returns:

The QuadraticProgram created from the number partitioning problem instance.

Return type:

QuadraticProgram