ommx_openjij_adapter.adapter#
Direct OpenJij Adapter implementation.
Classes#
Sample an applicable Binary polynomial input with OpenJij simulated annealing. |
Module Contents#
- class OMMXOpenJijSAAdapter(ommx_instance: Instance, *, beta_min: float | None = None, beta_max: float | None = None, num_sweeps: int | None = None, num_reads: int | None = None, schedule: list | None = None, initial_state: list | dict | None = None, updater: str | None = None, sparse: bool | None = None, reinitialize_state: bool | None = None, seed: int | None = None)#
Sample an applicable Binary polynomial input with OpenJij simulated annealing.
The direct Adapter input must use only Binary decision variables, have no active regular or special constraints, and be a minimization problem. Arbitrary polynomial objective degree is supported through OpenJij’s QUBO and Binary-HUBO paths.
Integer encoding, sense reversal, slack introduction, and finite constraint penalties are explicit preparation operations, not part of the declared input class. Pass
OpenJijPreparation.inputback to this Adapter as a separateommx.Instancevalue.- classmethod check_applicability(ommx_instance: Instance) AdapterApplicabilityReport#
Inspect applicability without mutating or preparing
ommx_instance.Adapter-specific preconditions run only after at least one complete input-class clause contains the instance. The hook receives an isolated copy so it cannot mutate the caller’s instance. Any explicitly transformed value is a different input and must be checked separately.
- classmethod check_preparation(ommx_instance: Instance, *, config: ommx_openjij_adapter._preparation.OpenJijPreparationConfig | None = None) ommx_openjij_adapter._preparation.OpenJijPreparationReport#
Dry-run the complete explicit preparation without mutating the input.
This is intentionally separate from
check_applicability(), which checks only the Binary, unconstrained minimization Adapter input. The 53-bit log-encoding limit describes availability of that preparation operation, not an OpenJij input-class condition and not anommx.v2.Feature. A model proven infeasible while preparing integer slack raisesInfeasibleDetected. Approximate integer slack is disabled unless the suppliedOpenJijPreparationConfigenables it.
- decode_to_samples(data: openjij.Response) Samples#
Convert openjij.Response to
SamplesThere is a static method
decode_to_samples()that does the same thing.
- classmethod prepare(ommx_instance: Instance, *, config: ommx_openjij_adapter._preparation.OpenJijPreparationConfig | None = None) ommx_openjij_adapter._preparation.OpenJijPreparation#
Produce a separate Adapter input and an auditable preparation report.
Raises
InfeasibleDetectedwhen variable bounds prove an inequality infeasible. Other preparation failures raiseOpenJijPreparationError. Approximate integer slack is used only when the suppliedOpenJijPreparationConfigenables it.
- classmethod require_applicable(ommx_instance: Instance) AdapterApplicabilityReport#
Return the report or raise
AdapterNotApplicableError.
- classmethod sample(ommx_instance: Instance, *, beta_min: float | None = None, beta_max: float | None = None, num_sweeps: int | None = None, num_reads: int | None = None, schedule: list | None = None, initial_state: list | dict | None = None, updater: str | None = None, sparse: bool | None = None, reinitialize_state: bool | None = None, seed: int | None = None, diagnostics: DiagnosticsSink | None = None) SampleSet#
Sample the exact applicable
ommx_instancepassed to the Adapter.
- classmethod solve(ommx_instance: Instance, *, beta_min: float | None = None, beta_max: float | None = None, num_sweeps: int | None = None, num_reads: int | None = None, schedule: list | None = None, initial_state: list | dict | None = None, updater: str | None = None, sparse: bool | None = None, reinitialize_state: bool | None = None, seed: int | None = None, diagnostics: DiagnosticsSink | None = None) Solution#
Return the best feasible sample from
sample().
- INPUT_CLASS: ClassVar[InstanceClass | None]#
- ommx_instance: Instance#
Isolated copy of the exact Adapter input used to evaluate returned samples.