public class OptimizationRequestHandler extends Object
Modifier and Type | Field and Description |
---|---|
protected int |
dim
dimension
|
static double |
MAX_ITERATIONS
Maximum number of iterations
|
protected int |
meq
number of equalities
|
protected int |
mieq
number of inequalities
|
protected OptimizationRequest |
request
optimization request
|
protected OptimizationResponse |
response
optimization response
|
static double |
SCALAR
Scalar
|
protected OptimizationRequestHandler |
successor
optimization request handler
|
Modifier | Constructor and Description |
---|---|
protected |
OptimizationRequestHandler()
Protected constructor
|
Modifier and Type | Method and Description |
---|---|
protected boolean |
checkCustomExitConditions(RealVector y)
Overriding this, a subclass can define some extra condition for exiting the iteration loop.
|
protected RealVector |
findEqFeasiblePoint(RealMatrix aMatrix,
RealVector bVector)
Find a solution of the linear (equalities) system A.x = b.
|
protected RealVector |
findEqFeasiblePoint2(RealMatrix aMatrix,
RealVector bVector)
Find a solution of the linear (equalities) system A.x = b.
|
protected int |
forwardOptimizationRequest()
Forward optimization request
|
protected RealMatrix |
getA()
Get the equalities constraints matrix
|
protected double |
getAlpha()
Get the calibration parameter for line search
|
protected RealMatrix |
getAT()
Get the equalities constraints matrix transposed
|
protected RealVector |
getB()
Get the equalities constraints vector
|
protected double |
getBeta()
Get the calibration parameter for line search
|
protected int |
getDim()
Get the number of variables.
|
protected ConvexMultivariateRealFunction |
getF0()
Objective function.
|
protected double |
getF0(RealVector x)
Objective function value at X.
|
protected ConvexMultivariateRealFunction[] |
getFi()
Inequality functions.
|
protected RealVector |
getFi(RealVector vecX)
Inequality functions values at X.
|
protected RealVector |
getGradF0(RealVector x)
Objective function gradient at X.
|
protected RealMatrix |
getGradFi(RealVector vecX)
Inequality functions gradients values at X.
|
protected RealMatrix |
getHessF0(RealVector x)
Objective function hessian at X.
|
protected RealMatrix[] |
getHessFi(RealVector vecX)
Inequality functions hessians values at X.
|
protected RealVector |
getInitialLagrangian()
Get the initial Lagrangian
|
protected RealVector |
getInitialPoint()
Get the initial point
|
protected String |
getInteriorPointMethod()
Get the chosen interior point method.
|
protected int |
getMaxIteration()
Get the maximum number of iteration in the search algorithm
|
protected int |
getMeq()
Get the number of equalities.
|
protected int |
getMieq()
Get the number of inequalities.
|
protected double |
getMu()
Get the calibration parameter for line search
|
protected RealVector |
getNotFeasibleInitialPoint()
Get the not feasible initial point
|
protected OptimizationRequest |
getOptimizationRequest()
Get the optimization request
|
OptimizationResponse |
getOptimizationResponse()
Get the optimization response
|
protected double |
getTolerance()
Get the tolerance for the minimum value
|
protected double |
getToleranceFeas()
Get the tolerance for the constraints satisfaction
|
protected double |
getToleranceInnerStep()
Get the tolerance for inner iterations in the barrier-method.
|
protected double |
getToleranceKKT()
Get the acceptable tolerance for KKT system resolution
|
protected boolean |
isCheckKKTSolutionAccuracy()
Check the accuracy of the solution of KKT system during
iterations.
|
protected boolean |
isCheckProgressConditions()
If true, a progress in the relevant algorithm norms
is required during iterations, otherwise the iteration
will be exited with a warning
|
protected boolean |
isInDomainF0(RealVector x)
Objective function domain.
|
int |
optimize()
Optimizer
|
protected RealVector |
rPri(RealVector x)
rPri := Ax - b
|
void |
setOptimizationRequest(OptimizationRequest req)
Set the optimization request
|
protected void |
setOptimizationResponse(OptimizationResponse res)
Set the optimization response
|
public static final double SCALAR
public static final double MAX_ITERATIONS
protected OptimizationRequestHandler successor
protected OptimizationRequest request
protected OptimizationResponse response
protected int dim
protected int meq
protected int mieq
protected OptimizationRequestHandler()
public void setOptimizationRequest(OptimizationRequest req)
req
- requestprotected OptimizationRequest getOptimizationRequest()
protected void setOptimizationResponse(OptimizationResponse res)
res
- responsepublic OptimizationResponse getOptimizationResponse()
public int optimize() throws PatriusException
PatriusException
- if an error occursprotected int forwardOptimizationRequest() throws PatriusException
PatriusException
- if an error occursprotected final int getDim()
protected final int getMeq()
protected final int getMieq()
protected RealVector getInitialPoint()
protected RealVector getNotFeasibleInitialPoint()
protected RealVector getInitialLagrangian()
protected final RealMatrix getA()
protected final RealMatrix getAT()
protected final RealVector getB()
protected final int getMaxIteration()
protected final double getTolerance()
protected final double getToleranceFeas()
protected final double getToleranceInnerStep()
protected final double getAlpha()
protected final double getBeta()
protected final double getMu()
protected final boolean isCheckProgressConditions()
protected final boolean isCheckKKTSolutionAccuracy()
protected final double getToleranceKKT()
protected final String getInteriorPointMethod()
protected final ConvexMultivariateRealFunction getF0()
protected boolean isInDomainF0(RealVector x)
x
- vector Xprotected double getF0(RealVector x)
x
- value Xprotected RealVector getGradF0(RealVector x)
x
- gradient Xprotected RealMatrix getHessF0(RealVector x)
x
- hessian Xprotected ConvexMultivariateRealFunction[] getFi()
protected RealVector getFi(RealVector vecX)
vecX
- values Xprotected RealMatrix getGradFi(RealVector vecX)
vecX
- gradients Xprotected RealMatrix[] getHessFi(RealVector vecX)
vecX
- hessians Xprotected boolean checkCustomExitConditions(RealVector y)
y
- vectorprotected RealVector findEqFeasiblePoint(RealMatrix aMatrix, RealVector bVector) throws PatriusRuntimeException
aMatrix
- matrix AbVector
- vector BPatriusRuntimeException
- if an error occursprotected RealVector findEqFeasiblePoint2(RealMatrix aMatrix, RealVector bVector) throws PatriusRuntimeException
aMatrix
- matrix AbVector
- vector BPatriusRuntimeException
- if an error occursprotected RealVector rPri(RealVector x)
x
- vectorCopyright © 2023 CNES. All rights reserved.