Log the optimization process (values, Jacobians, time taken etc.). More...
#include <roboptim/core/optimization-logger.hh>
Public Types | |
| typedef SolverCallback< S > | parent_t |
| typedef S | solver_t |
| Solver type. | |
| typedef solver_t::problem_t | problem_t |
| Solver problem type. | |
| typedef solver_t::problem_t::value_type | value_type |
| typedef solver_t::problem_t::size_type | size_type |
| typedef solver_t::problem_t::vector_t | vector_t |
| typedef solver_t::solverState_t | solverState_t |
| State of the solver. | |
| typedef solver_t::callback_t | callback_t |
| Per-iteration callback type. | |
| typedef solver_t::problem_t::function_t::traits_t | traits_t |
| typedef solver_t::problem_t::function_t | function_t |
| typedef function_t::matrix_t | jacobian_t |
| typedef function_t::const_argument_ref | const_argument_ref |
| typedef GenericDifferentiableFunction < traits_t > | differentiableFunction_t |
Public Member Functions | |
| OptimizationLogger (solver_t &solver, const boost::filesystem::path &path, bool selfRegister=true) | |
| Constructor. | |
| virtual | ~OptimizationLogger () |
| Destructor. | |
| void | append (const std::string &text) |
| Append extra information to the log file. | |
| OptimizationLogger< S > & | operator<< (const std::string &text) |
| Append extra information to the log file. | |
| template<typename U > | |
| OptimizationLogger< S > & | operator<< (const U &u) |
| Append extra information to the log file. | |
| const boost::filesystem::path & | logPath () const |
| Return the path of the log directory. | |
| virtual std::ostream & | print (std::ostream &o) const |
| Display the logger on the specified output stream. | |
Protected Member Functions | |
| void | perIterationCallback (const problem_t &pb, solverState_t &state) |
| Wrapper around the callback function that catch exceptions. | |
| virtual void | perIterationCallbackUnsafe (const typename solver_t::problem_t &pb, typename solver_t::solverState_t &state) |
| const boost::filesystem::path & | path () const |
| Return the path of the log directory. | |
| boost::filesystem::path & | path () |
| Return the path of the log directory. | |
| const solver_t & | solver () const |
| Return the solver associated with the logger. | |
| solver_t & | solver () |
| Return the solver associated with the logger. | |
| unsigned | callbackCallId () const |
| Return the callback iteration index. | |
Log the optimization process (values, Jacobians, time taken etc.).
| S | solver type. |
| typedef solver_t::callback_t roboptim::OptimizationLogger< S >::callback_t |
Per-iteration callback type.
Callback parameters:
Reimplemented from roboptim::SolverCallback< S >.
| typedef function_t::const_argument_ref roboptim::OptimizationLogger< S >::const_argument_ref |
| typedef GenericDifferentiableFunction<traits_t> roboptim::OptimizationLogger< S >::differentiableFunction_t |
| typedef solver_t::problem_t::function_t roboptim::OptimizationLogger< S >::function_t |
| typedef function_t::matrix_t roboptim::OptimizationLogger< S >::jacobian_t |
| typedef SolverCallback<S> roboptim::OptimizationLogger< S >::parent_t |
| typedef solver_t::problem_t roboptim::OptimizationLogger< S >::problem_t |
Solver problem type.
Reimplemented from roboptim::SolverCallback< S >.
| typedef solver_t::problem_t::size_type roboptim::OptimizationLogger< S >::size_type |
| typedef S roboptim::OptimizationLogger< S >::solver_t |
Solver type.
Reimplemented from roboptim::SolverCallback< S >.
| typedef solver_t::solverState_t roboptim::OptimizationLogger< S >::solverState_t |
State of the solver.
Reimplemented from roboptim::SolverCallback< S >.
| typedef solver_t::problem_t::function_t::traits_t roboptim::OptimizationLogger< S >::traits_t |
| typedef solver_t::problem_t::value_type roboptim::OptimizationLogger< S >::value_type |
| typedef solver_t::problem_t::vector_t roboptim::OptimizationLogger< S >::vector_t |
| roboptim::OptimizationLogger< T >::OptimizationLogger | ( | solver_t & | solver, |
| const boost::filesystem::path & | path, | ||
| bool | selfRegister = true |
||
| ) | [explicit] |
Constructor.
| solver | solver that will be logged. |
| path | path to the log directory. |
| selfRegister | whether the logger will register itself as a callback with the solver. Set this to false if you use it with a multiplexer. |
References roboptim::iendl().
| roboptim::OptimizationLogger< T >::~OptimizationLogger | ( | ) | [virtual] |
| void roboptim::OptimizationLogger< T >::append | ( | const std::string & | text | ) |
Append extra information to the log file.
| text | text to append. |
References roboptim::iendl().
| unsigned roboptim::OptimizationLogger< T >::callbackCallId | ( | ) | const [protected] |
Return the callback iteration index.
| const boost::filesystem::path & roboptim::OptimizationLogger< T >::logPath | ( | ) | const |
Return the path of the log directory.
| OptimizationLogger< T > & roboptim::OptimizationLogger< T >::operator<< | ( | const std::string & | text | ) |
Append extra information to the log file.
| text | text to append. |
| OptimizationLogger< T > & roboptim::OptimizationLogger< T >::operator<< | ( | const U & | u | ) |
Append extra information to the log file.
| u | object to print. |
| const boost::filesystem::path & roboptim::OptimizationLogger< T >::path | ( | ) | const [protected] |
Return the path of the log directory.
| boost::filesystem::path & roboptim::OptimizationLogger< T >::path | ( | ) | [protected] |
Return the path of the log directory.
This method is protected since streams would need to be updated, and files that were already written moved to the new location.
| void roboptim::OptimizationLogger< T >::perIterationCallback | ( | const problem_t & | pb, |
| solverState_t & | state | ||
| ) | [protected, virtual] |
Wrapper around the callback function that catch exceptions.
| pb | optimization problem. |
| state | state of the solver after an iteration. |
Reimplemented from roboptim::SolverCallback< S >.
| void roboptim::OptimizationLogger< T >::perIterationCallbackUnsafe | ( | const typename solver_t::problem_t & | pb, |
| typename solver_t::solverState_t & | state | ||
| ) | [protected, virtual] |
References roboptim::decindent(), roboptim::iendl(), roboptim::incindent(), and x_.
| std::ostream & roboptim::OptimizationLogger< T >::print | ( | std::ostream & | o | ) | const [virtual] |
Display the logger on the specified output stream.
| o | output stream used for display. |
Reimplemented from roboptim::SolverCallback< S >.
References roboptim::decindent(), roboptim::iendl(), and roboptim::incindent().
| const OptimizationLogger< T >::solver_t & roboptim::OptimizationLogger< T >::solver | ( | ) | const [protected] |
Return the solver associated with the logger.
| OptimizationLogger< T >::solver_t & roboptim::OptimizationLogger< T >::solver | ( | ) | [protected] |
Return the solver associated with the logger.