|
void | clone (std::unique_ptr< UnconstrainedOptimizer > &clone) const override |
|
double | getConstraintTolerance () const |
|
const std::vector< size_t > & | getHistoryOfInnerIterationNumbers () const |
|
const base::DataMatrix & | getHistoryOfInnerIterationPoints () const |
|
double | getPenaltyIncreaseFactor () const |
|
double | getPenaltyStartValue () const |
|
double | getXTolerance () const |
|
void | optimize () override |
| Pure virtual method for optimization of the objective function.
|
|
void | setConstraintTolerance (double constraintTolerance) |
|
void | setPenaltyIncreaseFactor (double penaltyIncreaseFactor) |
|
void | setPenaltyStartValue (double penaltyStartValue) |
|
void | setXTolerance (double xTolerance) |
|
| SquaredPenalty (const base::ScalarFunction &f, const base::ScalarFunctionGradient &fGradient, const base::VectorFunction &g, const base::VectorFunctionGradient &gGradient, const base::VectorFunction &h, const base::VectorFunctionGradient &hGradient, size_t maxItCount=DEFAULT_N, double xTolerance=DEFAULT_X_TOLERANCE, double constraintTolerance=DEFAULT_CONSTRAINT_TOLERANCE, double penaltyStartValue=DEFAULT_PENALTY_START_VALUE, double penaltyIncreaseFactor=DEFAULT_PENALTY_INCREASE_FACTOR) |
| Constructor with adaptive gradient descent as optimization algorithm (gradient-based).
|
|
| SquaredPenalty (const base::ScalarFunction &f, const base::VectorFunction &g, const base::VectorFunction &h, size_t maxItCount=DEFAULT_N, double xTolerance=DEFAULT_X_TOLERANCE, double constraintTolerance=DEFAULT_CONSTRAINT_TOLERANCE, double penaltyStartValue=DEFAULT_PENALTY_START_VALUE, double penaltyIncreaseFactor=DEFAULT_PENALTY_INCREASE_FACTOR) |
| Constructor with Nelder-Mead as optimization algorithm (gradient-free).
|
|
| SquaredPenalty (const SquaredPenalty &other) |
| Copy constructor.
|
|
| SquaredPenalty (const UnconstrainedOptimizer &unconstrainedOptimizer, const base::VectorFunction &g, const base::VectorFunctionGradient *gGradient, const base::VectorFunction &h, const base::VectorFunctionGradient *hGradient, size_t maxItCount=DEFAULT_N, double xTolerance=DEFAULT_X_TOLERANCE, double constraintTolerance=DEFAULT_CONSTRAINT_TOLERANCE, double penaltyStartValue=DEFAULT_PENALTY_START_VALUE, double penaltyIncreaseFactor=DEFAULT_PENALTY_INCREASE_FACTOR) |
| Constructor with custom unconstrained optimization algorithm (gradient-free or gradient-based).
|
|
| ~SquaredPenalty () override |
| Destructor.
|
|
| ConstrainedOptimizer (const base::ScalarFunction &f, const base::ScalarFunctionGradient &fGradient, const base::VectorFunction &g, const base::VectorFunctionGradient &gGradient, const base::VectorFunction &h, const base::VectorFunctionGradient &hGradient, size_t N=DEFAULT_N) |
| Constructor.
|
|
| ConstrainedOptimizer (const base::ScalarFunction &f, const base::VectorFunction &g, const base::VectorFunction &h, size_t N=DEFAULT_N) |
| Constructor.
|
|
| ConstrainedOptimizer (const ConstrainedOptimizer &other) |
| Copy constructor.
|
|
| ConstrainedOptimizer (const UnconstrainedOptimizer &unconstrainedOptimizer, const base::VectorFunction &g, const base::VectorFunctionGradient *gGradient, const base::VectorFunction &h, const base::VectorFunctionGradient *hGradient, size_t N=DEFAULT_N) |
| Constructor with custom unconstrained optimization algorithm (gradient-free or gradient-based).
|
|
base::VectorFunction & | getEqualityConstraintFunction () const |
|
base::VectorFunctionGradient * | getEqualityConstraintGradient () const |
|
base::VectorFunction & | getInequalityConstraintFunction () const |
|
base::VectorFunctionGradient * | getInequalityConstraintGradient () const |
|
void | setEqualityConstraintFunction (const base::VectorFunction &h) |
|
void | setEqualityConstraintGradient (const base::VectorFunctionGradient *hGradient) |
|
void | setInequalityConstraintFunction (const base::VectorFunction &g) |
|
void | setInequalityConstraintGradient (const base::VectorFunctionGradient *gGradient) |
|
| ~ConstrainedOptimizer () override |
| Destructor.
|
|
const base::DataMatrix & | getHistoryOfOptimalPoints () const |
|
const base::DataVector & | getHistoryOfOptimalValues () const |
|
size_t | getN () const |
|
base::ScalarFunction & | getObjectiveFunction () const |
|
base::ScalarFunctionGradient * | getObjectiveGradient () const |
|
base::ScalarFunctionHessian * | getObjectiveHessian () const |
|
const base::DataVector & | getOptimalPoint () const |
|
double | getOptimalValue () const |
|
const base::DataVector & | getStartingPoint () const |
|
void | setN (size_t N) |
|
virtual void | setObjectiveFunction (const base::ScalarFunction &f) |
|
virtual void | setObjectiveGradient (const base::ScalarFunctionGradient *fGradient) |
|
virtual void | setObjectiveHessian (const base::ScalarFunctionHessian *fHessian) |
|
void | setStartingPoint (const base::DataVector &startingPoint) |
|
| UnconstrainedOptimizer (const base::ScalarFunction &f, const base::ScalarFunctionGradient *fGradient, const base::ScalarFunctionHessian *fHessian, size_t N=DEFAULT_N) |
| Constructor.
|
|
| UnconstrainedOptimizer (const UnconstrainedOptimizer &other) |
| Copy constructor.
|
|
virtual | ~UnconstrainedOptimizer () |
| Destructor.
|
|
Squared Penalty method for constrained optimization.