org.ojalgo.optimisation
Interface OptimisationModel

All Known Implementing Classes:
CombinationModel, ConstraintsBasedModel, ExpressionsBasedModel, JAMPL, LinearExpressionsModel, MathProgSysModel, QuadraticExpressionsModel

public interface OptimisationModel

An OptimisationModel implementation represents a problem category. Typically there is a group of solvers that match (can solve) each problem category.

A model internally works with BigDecimal.

Author:
apete

Method Summary
 OptimisationSolver getDefaultSolver()
          No need to implement an OptimisationModel if there is not at least one matching OptimisationSolver.
 BigDecimal maximise()
           
 BigDecimal minimise()
           
 boolean validateComposition()
          OptimisationModel is meant to be implemented in parallel with OptimisationSolver.
 boolean validateSolution(BasicMatrix aSolution, NumberContext aContext)
           
 boolean validateSolution(NumberContext aContext)
           
 

Method Detail

getDefaultSolver

OptimisationSolver getDefaultSolver()
No need to implement an OptimisationModel if there is not at least one matching OptimisationSolver.


maximise

BigDecimal maximise()

minimise

BigDecimal minimise()

validateComposition

boolean validateComposition()
                            throws ModelValidationException
OptimisationModel is meant to be implemented in parallel with OptimisationSolver. This method indicates if the model is built in a way the solver can handle or not.

Throws:
ModelValidationException

validateSolution

boolean validateSolution(BasicMatrix aSolution,
                         NumberContext aContext)

validateSolution

boolean validateSolution(NumberContext aContext)