jijzept_solver.sample_entries_utils

Utilities for _sample_entries function

This module contains components extracted from the _sample_entries function to improve modularity and maintainability.

Submodules

Package Contents

class InstanceConverter

Class responsible for instance conversion and translator creation

convert_and_create_id_translator(ommx_instance)
Parameters:

ommx_instance (ommx.v1.Instance)

Return type:

Tuple[ommx.v1.Instance, bytes, jijzept_solver.core.IdTranslator]

class OptionBuilder

Class responsible for option building and validation

build_options(options, time_limit_sec, num_threads, id_translator)
Parameters:
Return type:

jijzept_solver.solver_parameters.JijZeptSolverOption

inject_cancel_token(options, cancel_token)

Inject cancel_token into options that support it.

Parameters:
Returns:

A new JijZeptSolverOption with cancel_token injected into applicable options.

Return type:

jijzept_solver.solver_parameters.JijZeptSolverOption

class ParameterValidator

Class responsible for parameter validation

validate(time_limit_sec=None, initial_ommx_state=None, num_samples=None, seed=0, options=None, num_threads=None, log_display=False, log_interval_sec=None, terminate_if_optimal=True)
Parameters:
Return type:

Dict[str, Any]

collect_results_with_timeout(running_processes, time_limit_sec, global_start_time, status_queue=None, terminate_if_optimal=True)
Parameters:
  • running_processes (Dict[int, Tuple[Any, Any]])

  • time_limit_sec (Optional[float])

  • global_start_time (float)

  • status_queue (Optional[Any])

  • terminate_if_optimal (bool)

Return type:

Tuple[List[Tuple[bytes, List[jijzept_solver.solution_info.FeasObjectivePair], jijzept_solver.metrics.ProcessInfo]], Optional[int]]

create_signal_safe_manager()
Return type:

multiprocess.managers.SyncManager

process_results(results, converted_ommx_instance, num_samples)
Parameters:
  • results (List[Tuple[ommx.v1.Samples, List[jijzept_solver.solution_info.FeasObjectivePair], jijzept_solver.metrics.ProcessInfo]])

  • converted_ommx_instance (ommx.v1.Instance)

  • num_samples (Optional[int])

Return type:

Tuple[List[ommx.v1.State], List[Tuple[jijzept_solver.solution_info.SolutionInfo, jijzept_solver.metrics.ProcessInfo]]]

run_sampling_in_process(x)
terminate_gracefully_and_collect_results(running_processes, result_bytes)
Parameters:
Return type:

None