Package org.ojalgo.optimisation.convex
Class IterativeASS
- 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 class
The equation system body is the (negated) Schur complement (of the Q-matrix in the full KKT-system).(package private) static final class
Nested classes/interfaces inherited from class org.ojalgo.optimisation.convex.ConvexSolver
ConvexSolver.Builder, ConvexSolver.Configuration, ConvexSolver.ModelIntegration
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 -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final PhysicalStore
<Double> private final IterativeASS.SchurComplementSolver
Equation system solver corresponding to the (negated) Schur complement.Fields inherited from class org.ojalgo.optimisation.convex.BasePrimitiveSolver
MATRIX_FACTORY
Fields inherited from class org.ojalgo.optimisation.convex.ConvexSolver
INTEGRATION
Fields inherited from class org.ojalgo.optimisation.GenericSolver
options
-
Constructor Summary
ConstructorsConstructorDescriptionIterativeASS
(ConvexData<Double> convexData, Optimisation.Options optimisationOptions) -
Method Summary
Modifier and TypeMethodDescription(package private) void
addConstraint
(int constrIndex, SparseArray<Double> constrBody, double constrRHS) protected void
exclude
(int toExclude) protected void
(package private) void
Methods inherited from class org.ojalgo.optimisation.convex.ActiveSetSolver
checkFeasibility, countExcluded, countIncluded, countIterationConstraints, extractSolution, getConstraintToInclude, getExcluded, getExcluded, getIncluded, getIncluded, getInvQC, getIterationA, getIterationB, getIterationC, getIterationX, getLastExcluded, getLastIncluded, getSlackI, getSlackI, handleIterationResults, include, initialise, isIteratingPossible, needsAnotherIteration, setConstraintToInclude, suggestConstraintToExclude, suggestConstraintToInclude, toActivatorString
Methods inherited from class org.ojalgo.optimisation.convex.ConstrainedSolver
buildResult, getIterationKKT, getIterationL, getIterationQ, getIterationRHS, getSlackE, getSolutionL
Methods 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
Methods inherited from class org.ojalgo.optimisation.convex.ConvexSolver
copy, newBuilder, newBuilder, newBuilder, newSolver
Methods inherited from class org.ojalgo.optimisation.GenericSolver
countIterations, countTime, error, getClassSimpleName, getDuration, getState, incrementIterationsCount, isIterationAllowed, isLogDebug, isLogOff, isLogProgress, log, log, log, log, logProgress, resetIterationsCount, setState, setValidator, validate, validate
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.ojalgo.optimisation.Optimisation.Solver
solve
Methods 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:
exclude
in classActiveSetSolver
-
performIteration
protected void performIteration()- Specified by:
performIteration
in classBasePrimitiveSolver
-
addConstraint
-
resetActivator
void resetActivator()- Overrides:
resetActivator
in classActiveSetSolver
-