$extrastylesheet
|
Dakota
Version 6.2
|
Public Member Functions | |
| NonlinearCGOptimizer (ProblemDescDB &problem_db, Model &model) | |
| standard constructor | |
| ~NonlinearCGOptimizer () | |
| destructor | |
| Real | linesearch_eval (const Real &trial_step, short req_val=1) |
| evaluate the objective function given a particular step size (public for use in boost_ls_eval functor; could use friend) | |
Protected Member Functions | |
| void | find_optimum () |
| Used within the optimizer branch for computing the optimal solution. Redefines the run virtual function for the optimizer branch. | |
Private Member Functions | |
| void | parse_options () |
| constructor helper function to parse misc_options from ProblemDescDB | |
| void | compute_direction () |
| compute next direction via choice of method | |
| bool | compute_step () |
| compute step: fixed, simple decrease, sufficient decrease | |
| void | bracket_min (Real &xa, Real &xb, Real &xc, Real &fa, Real &fb, Real &fc) |
| bracket the 1-D minimum in the linesearch | |
| Real | brent_minimize (Real a, Real b, Real tol) |
| Perform 1-D minimization for the stepLength using Brent's method. | |
Private Attributes | |
| Real | initialStep |
| initial step length | |
| Real | linesearchTolerance |
| approximate accuracy of absissca in LS | |
| unsigned | linesearchType |
| type of line search (if any) | |
| unsigned | maxLinesearchIters |
| maximum evaluations in line search | |
| Real | relFunctionTol |
| stopping criterion for rel change in fn | |
| Real | relGradientTol |
| stopping criterion for rel reduction in g | |
| bool | resetStep |
| whether to reset step with each linesearch | |
| unsigned | restartIter |
| iter at which to reset to steepest descent | |
| unsigned | updateType |
| type of CG direction update | |
| unsigned | iterCurr |
| current iteration number | |
| RealVector | designVars |
| current decision variables in the major iteration | |
| RealVector | trialVars |
| decision variables in the linesearch | |
| Real | functionCurr |
| current function value | |
| Real | functionPrev |
| previous function value | |
| RealVector | gradCurr |
| current gradient | |
| RealVector | gradPrev |
| previous gradient | |
| RealVector | gradDiff |
| temporary for gradient difference (gradCurr - gradPrev) | |
| RealVector | searchDirection |
| current aggregate search direction | |
| Real | stepLength |
| current step length parameter alpha | |
| Real | gradDotGrad_init |
| initial gradient norm squared | |
| Real | gradDotGrad_curr |
| gradCurr dot gradCurr | |
| Real | gradDotGrad_prev |
| gradPrev dot gradPrev | |
Experimental implementation of nonlinear CG optimization
| Real brent_minimize | ( | Real | a, |
| Real | b, | ||
| Real | tol | ||
| ) | [private] |
Perform 1-D minimization for the stepLength using Brent's method.
Perform 1-D minimization for the stepLength using Brent's method. This is a C translation of fmin.f from Netlib.
References NonlinearCGOptimizer::linesearch_eval(), NonlinearCGOptimizer::maxLinesearchIters, and Iterator::outputLevel.
Referenced by NonlinearCGOptimizer::compute_step().
1.7.6.1