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:
options (Optional[Union[jijzept_solver.solver_parameters.JijZeptSolverOption, jijzept_solver.solver_parameters.SolverOptions]])
time_limit_sec (Optional[float])
num_threads (Optional[int])
id_translator (jijzept_solver.core.IdTranslator)
- Return type:
- inject_cancel_token(options, cancel_token)
Inject cancel_token into options that support it.
- Parameters:
options (jijzept_solver.solver_parameters.JijZeptSolverOption) – The original JijZeptSolverOption
cancel_token (jijzept_solver.solver_parameters.CancelToken) – The CancelToken to inject
- Returns:
A new JijZeptSolverOption with cancel_token injected into applicable options.
- Return type:
- 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:
time_limit_sec (Optional[float])
initial_ommx_state (Optional[ommx.v1.State])
num_samples (Optional[int])
seed (Optional[int])
options (Optional[Union[jijzept_solver.solver_parameters.JijZeptSolverOption, jijzept_solver.solver_parameters.SolverOptions]])
num_threads (Optional[int])
log_display (Optional[bool])
log_interval_sec (Optional[float])
terminate_if_optimal (bool)
- 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:
- 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:
running_processes (Dict[int, Tuple[Any, Any]])
result_bytes (List[Tuple[bytes, List[jijzept_solver.solution_info.FeasObjectivePair], jijzept_solver.metrics.ProcessInfo]])
- Return type:
None