Skip to content
Pasqal Documentation

Results are limited to the current section : Application solving tools

mis.pipeline.maximization

module
mis.pipeline.maximization

Classes

  • Maximization A postprocessor dedicated to improving MIS results provided by a quantum algorithm.

class
Maximization (config: SolverConfig, frequency_threshold: float = 1e-07, augment_rounds: int = 10, seed: int = 0)

Bases : BasePostprocessor

A postprocessor dedicated to improving MIS results provided by a quantum algorithm.

This postprocessor expects that a result could be vulnerable to bitflips, so it will attempt to fix any result provided by the quantum algorithm, to make it independent (if it's not independent) and maximal (if it's not maximal).

frequency_threshold: Minimal frequency to check. Discard any solution which show up with a frequency <= frequency_threshold. Set 0 to never discard any solution. augment_rounds: The number of attempts to augment an independent set to add possibly missing nodes. seed: A random seed.

Methods

method
postprocess (solution: MISSolution) → MISSolution | None

The main entry point: attempt to improve a solution.

method
is_independent_solution (solution: MISSolution) → bool

Check whether a solution is independent.

method
augment_to_maximal (solution: MISSolution) → MISSolution

Augment a given set up to a maximal IS using a greedy algorithm running k times.

See https://doi.org/10.48550/arXiv.2202.09372 section 2.3 of supplementary material for reference.

method
reduce_to_independence (solution: MISSolution) → MISSolution

Reduce the given candidate solution to an independent state of graph g.

We progressively remove the nodes with highest number of neighbours.

See https://doi.org/10.48550/arXiv.2202.09372 section 2.3 of supplementary material for reference.