- All Implemented Interfaces:
Optimisation,Optimisation.Solver,UpdatableSolver
Solves optimisation problems of the form:
min 1/2 [X]T[Q][X] - [C]T[X]
when [AE][X] == [BE]
and [AI][X] invalid input: '<'= [BI]
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) final classThe equation system body is the (negated) Schur complement (of the Q-matrix in the full KKT-system).(package private) static final classNested classes/interfaces inherited from class org.ojalgo.optimisation.convex.ConvexSolver
ConvexSolver.Builder, ConvexSolver.Configuration, ConvexSolver.ModelIntegrationNested 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 -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final PhysicalStore<Double> private final IterativeASS.SchurComplementSolverEquation system solver corresponding to the (negated) Schur complement.Fields inherited from class org.ojalgo.optimisation.convex.BasePrimitiveSolver
MATRIX_FACTORYFields inherited from class org.ojalgo.optimisation.convex.ConvexSolver
INTEGRATIONFields inherited from class org.ojalgo.optimisation.GenericSolver
options -
Constructor Summary
ConstructorsConstructorDescriptionIterativeASS(ConvexData<Double> convexData, Optimisation.Options optimisationOptions) -
Method Summary
Modifier and TypeMethodDescription(package private) voidaddConstraint(int constrIndex, SparseArray<Double> constrBody, double constrRHS) protected voidexclude(int toExclude) protected void(package private) voidMethods inherited from class org.ojalgo.optimisation.convex.ActiveSetSolver
checkFeasibility, countExcluded, countIncluded, countIterationConstraints, extractSolution, getConstraintToInclude, getExcluded, getIncluded, getInvQC, getIterationA, getIterationB, getIterationC, getIterationX, getLastExcluded, getLastIncluded, getSlackI, getSlackI, handleIterationResults, include, initialise, isIteratingPossible, needsAnotherIteration, setConstraintToInclude, suggestConstraintToExclude, suggestConstraintToInclude, toActivatorStringMethods inherited from class org.ojalgo.optimisation.convex.ConstrainedSolver
buildResult, getIterationKKT, getIterationL, getIterationQ, getIterationRHS, getSlackE, getSolutionLMethods inherited from class org.ojalgo.optimisation.convex.BasePrimitiveSolver
builder, computeGeneral, countEqualityConstraints, countInequalityConstraints, countVariables, dispose, evaluateFunction, getEntityMap, getMatrixAE, getMatrixAE, getMatrixAE, getMatrixAI, getMatrixAI, getMatrixAI, getMatrixBE, getMatrixBI, getMatrixBI, getMatrixBI, getMatrixC, getMatrixQ, getRankGeneral, getSolutionGeneral, getSolutionGeneral, getSolutionQ, getSolutionQ, getSolutionX, hasEqualityConstraints, hasInequalityConstraints, isPatchedQ, isSolvableGeneral, isSolvableQ, isZeroQ, newSolver, of, solve, solveFullKKT, solveLP, toObjectiveFunction, toString, updateMethods inherited from class org.ojalgo.optimisation.convex.ConvexSolver
copy, newBuilder, newBuilder, newBuilder, newSolverMethods inherited from class org.ojalgo.optimisation.GenericSolver
countIterations, countTime, error, getClassSimpleName, getDuration, getState, incrementIterationsCount, isIterationAllowed, isLogDebug, isLogOff, isLogProgress, log, log, log, log, logProgress, printf, resetIterationsCount, setState, setValidator, validate, validateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.ojalgo.optimisation.Optimisation.Solver
solveMethods inherited from interface org.ojalgo.optimisation.UpdatableSolver
fixVariable, generateCutCandidates, integers, isMapped, updateRange
-
Field Details
-
myColumnInvQAt
-
myS
Equation system solver corresponding to the (negated) Schur complement. Used to solve for the Lagrange multipliers.
-
-
Constructor Details
-
IterativeASS
IterativeASS(ConvexData<Double> convexData, Optimisation.Options optimisationOptions)
-
-
Method Details
-
exclude
protected void exclude(int toExclude) - Overrides:
excludein classActiveSetSolver
-
performIteration
protected void performIteration()- Specified by:
performIterationin classBasePrimitiveSolver
-
addConstraint
-
resetActivator
void resetActivator()- Overrides:
resetActivatorin classActiveSetSolver
-