Package org.ojalgo.optimisation.convex
Class IterativeASS
- java.lang.Object
-
- All Implemented Interfaces:
Optimisation
,Optimisation.Solver
,UpdatableSolver
final class IterativeASS extends ActiveSetSolver
Solves optimisation problems of the form:min 1/2 [X]T[Q][X] - [C]T[X]
Where [AE] and [BE] are optinal.
when [AE][X] == [BE]
and [AI][X] <= [BI]
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) class
IterativeASS.SchurComplementSolver
The equation system body is the (negated) Schur complement (of the Q-matrix in the full KKT-system).(package private) static class
IterativeASS.SparseArrayPool
-
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
Fields Modifier and Type Field Description private PhysicalStore<java.lang.Double>
myColumnInvQAt
private IterativeASS.SchurComplementSolver
myS
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
Constructors Constructor Description IterativeASS(ConvexData<java.lang.Double> convexData, Optimisation.Options optimisationOptions)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
addConstraint(int constrIndex, SparseArray<java.lang.Double> constrBody, double constrRHS)
protected void
exclude(int toExclude)
protected void
performIteration()
(package private) void
resetActivator()
-
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 Detail
-
myColumnInvQAt
private final PhysicalStore<java.lang.Double> myColumnInvQAt
-
myS
private final IterativeASS.SchurComplementSolver myS
Equation system solver corresponding to the (negated) Schur complement. Used to solve for the Lagrange multipliers.
-
-
Constructor Detail
-
IterativeASS
IterativeASS(ConvexData<java.lang.Double> convexData, Optimisation.Options optimisationOptions)
-
-
Method Detail
-
exclude
protected void exclude(int toExclude)
- Overrides:
exclude
in classActiveSetSolver
-
performIteration
protected void performIteration()
- Specified by:
performIteration
in classBasePrimitiveSolver
-
addConstraint
void addConstraint(int constrIndex, SparseArray<java.lang.Double> constrBody, double constrRHS)
-
resetActivator
void resetActivator()
- Overrides:
resetActivator
in classActiveSetSolver
-
-