itpp::Newton_Search Class Reference
Numerical Optimization Module

Newton Search. More...

`#include <itpp/optim/newton_search.h>`

## Public Member Functions

| Newton_Search ()
| Default constructor.
| ~Newton_Search ()
| Destructor.
void | set_function (double(*function)(const vec &))
| Set function pointer.
void | set_gradient (vec(*gradient)(const vec &))
| Set gradient function pointer.
void | set_functions (double(*function)(const vec &), vec(*gradient)(const vec &))
| Set both function and gradient function pointers.
void | set_start_point (const vec &x, const mat &D)
| Set start point `x` for search and approx inverse Hessian at `x`.
void | set_start_point (const vec &x)
| Set start point `x` for search.
vec | get_solution ()
| Get solution, function value and gradient at solution point.
bool | search ()
| Do the line search.
bool | search (vec &xn)
| Do the line search and return solution.
bool | search (const vec &x0, vec &xn)
| Set starting point, do the Newton search, and return the solution.
void | set_stop_values (double epsilon_1, double epsilon_2)
| Set stop criterion values.
double | get_epsilon_1 ()
| Return stop value rho.
double | get_epsilon_2 ()
| Return stop value beta.
void | set_max_evaluations (int value)
| Set max number of function evaluations.
int | get_max_evaluations ()
| Return max number of function evaluations.
void | set_initial_stepsize (double value)
| Set max stepsize.
double | get_initial_stepsize ()
| Return max number of iterations.
void | set_method (const Newton_Search_Method &method)
| Set Line search method.
double | get_function_value ()
| get function value at solution point
double | get_stop_1 ()
| get value of stop criterion 1 at solution point
double | get_stop_2 ()
| get value of stop criterion 2 at solution point
int | get_no_iterations ()
| get number of iterations used to reach solution
int | get_no_function_evaluations ()
| get number of function evaluations used to reach solution
void | enable_trace ()
| enable trace mode
void | disable_trace ()
| disable trace
void | get_trace (Array< vec > &xvalues, vec &Fvalues, vec &ngvalues, vec &dvalues)

## Detailed Description

Newton Search.

Newton or Quasi-Newton optimization method that try to minimize the objective function given an initial guess .

The search is stopped when either criterion 1:

or criterion 2:

is fulfilled. Another possibility is that the search is stopped when the number of function evaluations exceeds a threshold (100 per default).

The default update rule for the inverse of the Hessian matrix is the BFGS algorithm with an .

Definition at line 72 of file newton_search.h.

## Member Function Documentation

void itpp::Newton_Search::get_trace | ( | Array< vec > & | xvalues,
|  | vec & | Fvalues,
|  | vec & | ngvalues,
|  | vec & | dvalues
| ) |  |

get trace outputs `xvalues` are the solutions of every iteration `Fvalues` are the function values `ngvalues` are the norm(gradient,inf) values `dvalues` are the delta values

Definition at line 311 of file newton_search.cpp.

References it_warning.

The documentation for this class was generated from the following files:

- itpp/optim/newton_search.h
- itpp/optim/newton_search.cpp

Generated on Thu Aug 20 2015 21:02:53 for IT++ by Doxygen 1.8.9.1