Module ojalgo
Package org.ojalgo.optimisation
Interface Optimisation.Integration<M extends Optimisation.Model,S extends Optimisation.Solver>
-
- All Superinterfaces:
Optimisation
- All Known Implementing Classes:
ConfiguredIntegration,ConvexSolver.ModelIntegration,ExpressionsBasedModel.Integration,ExpressionsBasedModel.IntegrationWrapper,GomorySolver.ModelIntegration,IntegerSolver.ModelIntegration,LinearSolver.ModelIntegration,LinearSolver.NewIntegration,LinearSolver.OldIntegration,ServiceIntegration
- Enclosing interface:
- Optimisation
public static interface Optimisation.Integration<M extends Optimisation.Model,S extends Optimisation.Solver> extends Optimisation
AnOptimisation.Modelimplementation should not depend on any specificOptimisation.Solver, andOptimisation.Solverimplementations should be usable independently of anyOptimisation.Model. For every specific combination ofOptimisation.ModelandOptimisation.Solver(that should function together) there needs to be anOptimisation.Integration.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.ojalgo.optimisation.Optimisation
Optimisation.Constraint, Optimisation.ConstraintType, Optimisation.Integration<M extends Optimisation.Model,S extends Optimisation.Solver>, Optimisation.Model, Optimisation.Objective, Optimisation.Options, Optimisation.ProblemStructure, Optimisation.Result, Optimisation.Sense, Optimisation.Solver, Optimisation.State
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description Sbuild(M model)An integration must be able to instantiate a solver that can handle (any) model instance.Optimisation.ResultextractSolverState(M model)Extract state from the model and convert it to solver state.booleanisCapable(M model)Optimisation.ResulttoModelState(Optimisation.Result solverState, M model)Convert solver state to model state.Optimisation.ResulttoSolverState(Optimisation.Result modelState, M model)Convert model state to solver state.
-
-
-
Method Detail
-
build
S build(M model)
An integration must be able to instantiate a solver that can handle (any) model instance.
-
extractSolverState
Optimisation.Result extractSolverState(M model)
Extract state from the model and convert it to solver state.
-
isCapable
boolean isCapable(M model)
- Returns:
- true if this solver (integration) can handle the input model
-
toModelState
Optimisation.Result toModelState(Optimisation.Result solverState, M model)
Convert solver state to model state. Transforming the solution (set of variable values) is the main concern. Adjusting the objective function value (if needed) is best handled elsewhere, and is not required here.The required behaviour here depends on how
build(Optimisation.Model)is implemented, and is the reverse mapping oftoSolverState(Optimisation.Result, Optimisation.Model).
-
toSolverState
Optimisation.Result toSolverState(Optimisation.Result modelState, M model)
Convert model state to solver state. Transforming the solution (set of variable values) is the main concern. Adjusting the objective function value (if needed) is best handled elsewhere, and is not required here.The required behaviour here depends on how
build(Optimisation.Model)is implemented, and is the reverse mapping oftoModelState(Result, Optimisation.Model).
-
-