|
ConstrainedOptPack: C++ Tools for Constrained (and Unconstrained) Optimization
Version of the Day
|
The modified L1 merit function using different penatly parameters for each constriant. More...
#include <ConstrainedOptPack_MeritFuncNLPModL1.hpp>

Public Member Functions | |
| MeritFuncNLPModL1 () | |
| Initializes deriv() = 0 and mu() = 0. | |
Overridden from MeritFuncNLP | |
| value_type | value (value_type f, const Vector *c, const Vector *h, const Vector *hl, const Vector *hu) const |
| | |
| value_type | deriv () const |
| | |
| void | print_merit_func (std::ostream &out, const std::string &leading_str) const |
| | |
Overridden from MeritFuncNLPDirecDeriv | |
| value_type | calc_deriv (const Vector &Gf_k, const Vector *c_k, const Vector *h_k, const Vector *hl, const Vector *hu, const Vector &d_k) |
| If the value n passed to resize(n) does not equal the size of the vector parameters then an exception #MeritFuncNLP::InvalidInitialization# will be thrown. | |
Overridden from MeritFuncPenaltyParams | |
| void | set_space_c (const VectorSpace::space_ptr_t &space_c) |
| | |
| VectorMutable & | set_mu () |
| | |
| const Vector & | get_mu () const |
| | |
The modified L1 merit function using different penatly parameters for each constriant.
phi(x) = f) + sum( mu(j) * abs(c(j)), j = 1,...,m )
Dphi(x_k,d_k) = Gf_k' * d_k - sum( mu(j) * abs(c(j)), j = 1,...,m )
Note that the definition of Dphi(x_k,d_k) assumes that Gc_k'*d_k + c_k = 0. In otherwords, d_k must satisfiy the linearized equality constraints at at x_k.
Implicit copy constructor and assignment operators are allowed.
Definition at line 65 of file ConstrainedOptPack_MeritFuncNLPModL1.hpp.
Initializes deriv() = 0 and mu() = 0.
Definition at line 49 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| value_type ConstrainedOptPack::MeritFuncNLPModL1::value | ( | value_type | f, |
| const Vector * | c, | ||
| const Vector * | h, | ||
| const Vector * | hl, | ||
| const Vector * | hu | ||
| ) | const [virtual] |
Implements ConstrainedOptPack::MeritFuncNLP.
Definition at line 55 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| value_type ConstrainedOptPack::MeritFuncNLPModL1::deriv | ( | ) | const [virtual] |
Implements ConstrainedOptPack::MeritFuncNLP.
Definition at line 74 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| void ConstrainedOptPack::MeritFuncNLPModL1::print_merit_func | ( | std::ostream & | out, |
| const std::string & | leading_str | ||
| ) | const [virtual] |
Implements ConstrainedOptPack::MeritFuncNLP.
Definition at line 79 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| value_type ConstrainedOptPack::MeritFuncNLPModL1::calc_deriv | ( | const Vector & | Gf_k, |
| const Vector * | c_k, | ||
| const Vector * | h_k, | ||
| const Vector * | hl, | ||
| const Vector * | hu, | ||
| const Vector & | d_k | ||
| ) | [virtual] |
If the value n passed to resize(n) does not equal the size of the vector parameters then an exception #MeritFuncNLP::InvalidInitialization# will be thrown.
Implements ConstrainedOptPack::MeritFuncNLPDirecDeriv.
Definition at line 93 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| void ConstrainedOptPack::MeritFuncNLPModL1::set_space_c | ( | const VectorSpace::space_ptr_t & | space_c | ) | [virtual] |
Implements ConstrainedOptPack::MeritFuncPenaltyParams.
Definition at line 115 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| VectorMutable & ConstrainedOptPack::MeritFuncNLPModL1::set_mu | ( | ) | [virtual] |
Implements ConstrainedOptPack::MeritFuncPenaltyParams.
Definition at line 121 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
| const Vector & ConstrainedOptPack::MeritFuncNLPModL1::get_mu | ( | ) | const [virtual] |
Implements ConstrainedOptPack::MeritFuncPenaltyParams.
Definition at line 126 of file ConstrainedOptPack_MeritFuncNLPModL1.cpp.
1.7.6.1