public class SQPASEVariation1 extends Object implements SQPASEVariation
Modifier and Type | Field and Description |
---|---|
protected List<RealScalarFunction> |
a |
protected int |
discretization |
protected double |
epsilon |
protected RealScalarFunction |
f |
protected boolean |
foundPositiveDefiniteHessian |
protected double |
lower |
protected int |
p |
protected double |
r |
Constructor and Description |
---|
SQPASEVariation1()
Construct a variation.
|
SQPASEVariation1(double r,
double lower,
int discretization)
Construct a variation.
|
Modifier and Type | Method and Description |
---|---|
double |
alpha(Vector x,
Vector d,
Vector v)
Get the percentage increment along the minimizer increment direction.
|
Matrix |
getInitialHessian(Vector x0,
Vector v0)
Get the initial Hessian matrix.
|
void |
set(RealScalarFunction f,
EqualityConstraints equal)
Associate this variation to a particular general constrained minimization problem with only equality constraints.
|
Matrix |
updateHessian(Vector x1,
Vector v1,
Vector d,
Vector g0,
Matrix A0,
Matrix W0)
Update the Hessian matrix using the latest iterates.
|
protected Matrix |
W(Vector x,
Vector u)
Compute W.
|
protected RealScalarFunction f
protected List<RealScalarFunction> a
protected int p
protected final double r
protected final double lower
protected final int discretization
protected boolean foundPositiveDefiniteHessian
protected final double epsilon
public SQPASEVariation1(double r, double lower, int discretization)
r
- Han's exact penalty function coefficient, the bigger the better, e.g., eq. 15.20lower
- the lower bound of alpha; the smaller the better but cannot be zerodiscretization
- the number of points between [lower, 1] to search for alpha; the bigger the betterpublic SQPASEVariation1()
public void set(RealScalarFunction f, EqualityConstraints equal)
f
- the objective function to be minimizedequal
- the equality constraintspublic Matrix getInitialHessian(Vector x0, Vector v0)
SQPASEVariation
getInitialHessian
in interface SQPASEVariation
x0
- the initial minimizerv0
- the initial Lagrange multipliers for inequality constraints (mu)protected Matrix W(Vector x, Vector u)
x
- the current minimizeru
- the Lagrange multipliers for inequality constraints (mu)public Matrix updateHessian(Vector x1, Vector v1, Vector d, Vector g0, Matrix A0, Matrix W0)
SQPASEVariation
updateHessian
in interface SQPASEVariation
x1
- the next minimizerv1
- the next Lagrange multipliers for inequality constraints (mu)d
- the minimizer incrementg0
- the gradientA0
- the set of active equality constraintsW0
- the current Hessian matrixpublic double alpha(Vector x, Vector d, Vector v)
SQPASEVariation
alpha
in interface SQPASEVariation
x
- the current minimizerd
- the minimizer incrementv
- the Lagrange multipliers for inequality constraints (mu)Copyright © 2010-2020 NM FinTech Ltd.. All Rights Reserved.