SpectralProjectedGradient
class SpectralProjectedGradient[T](val projection: T => T, tolerance: Double, suffDec: Double, fvalMemory: Int, alphaMax: Double, alphaMin: Double, bbMemory: Int, maxIter: Int, val initFeas: Boolean, val curvilinear: Boolean, val bbType: Int, val maxSrcht: Int)(implicit space: MutableVectorField[T, Double]) extends FirstOrderMinimizer[T, DiffFunction[T]] with Projecting[T] with SerializableLogging
SPG is a Spectral Projected Gradient minimizer; it minimizes a differentiable function subject to the optimum being in some set, given by the projection operator projection
- Type parameters:
- T
vector type
- Value parameters:
- alphaMax
longest step
- alphaMin
shortest step
- bbMemory
number of history entries for linesearch
- curvilinear
if curvilinear true, do the projection inside line search in place of doing it in chooseDescentDirection
- initFeas
is the initial guess feasible, or should it be projected?
- maxIter
maximum number of iterations
- maxSrcht
maximum number of iterations inside line search
- projection
projection operations
- suffDec
sufficient decrease parameter
- tolerance
termination criterion: tolerance for norm of projected gradient