lumix.solvers.base.LXSolverInterface

class lumix.solvers.base.LXSolverInterface(capability)[source]

Abstract base class for all solver interfaces.

Provides: - Unified API across solvers (OR-Tools, Gurobi, CPLEX) - Capability detection - Automatic linearization when needed - Type-safe solution mapping

Parameters:

capability (LXSolverCapability)

__init__(capability)[source]

Initialize solver interface.

Parameters:

capability (LXSolverCapability) – Solver capability description

Methods

__init__(capability)

Initialize solver interface.

build_model(model)

Build solver-specific model from LumiX model.

get_solver_model()

Get underlying solver model for advanced usage.

solve(model[, time_limit, gap_tolerance])

Solve the optimization model.

__init__(capability)[source]

Initialize solver interface.

Parameters:

capability (LXSolverCapability) – Solver capability description

abstract build_model(model)[source]

Build solver-specific model from LumiX model.

Parameters:

model (LXModel[TypeVar(TModel)]) – OPtiXNG model

Return type:

Any

Returns:

Solver-specific model object

abstract solve(model, time_limit=None, gap_tolerance=None, **solver_params)[source]

Solve the optimization model.

Parameters:
  • model (LXModel[TypeVar(TModel)]) – LumiX model

  • time_limit (Optional[float]) – Time limit in seconds

  • gap_tolerance (Optional[float]) – MIP gap tolerance

  • **solver_params (Any) – Additional solver-specific parameters

Return type:

LXSolution[TypeVar(TModel)]

Returns:

Solution object

abstract get_solver_model()[source]

Get underlying solver model for advanced usage.

Return type:

Any

Returns:

Solver-specific model object