12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- ///
- /// @file SimpleSimpleOptimizer.h: interface of the SimpleOptimizer class.
- /// @author Matthias Wacker, Esther Platzer
- ///
- #ifndef _SIMPLEOPTIMIZER_H_
- #define _SIMPLEOPTIMIZER_H_
- #include "optimization/Optimizer.h"
- #include "optimization/SimpleOptProblem.h"
- #include "optimization/Opt_Namespace.h"
- namespace opt=optimization;
- /*!
- Abstract base class of all optimizers.
- */
- class SimpleOptimizer : public Optimizer
- {
- public:
- /// the SuperClass is Optimizer
- typedef Optimizer SuperClass;
-
- ///
- /// Constructor (also the default constructor)
- /// @param loger OptLogBase * to existing log class or NULL
- ///
- SimpleOptimizer(OptLogBase *loger=NULL);
- ///
- /// Copy constructor
- /// @param opt .. optimizer to copy
- ///
- SimpleOptimizer( const SimpleOptimizer &opt);
- ///
- /// assignment opterator
- /// @param opt optimizer to "copy"
- /// @return self-reference
- ///
- SimpleOptimizer &operator=(const SimpleOptimizer &opt);
- ///
- /// Destructor.
- ///
- virtual ~SimpleOptimizer();
- ///
- /// start the optimization for the simple optimization problem
- /// @param optProb the optimization problem to solve
- ///
- virtual int optimizeProb(SimpleOptProblem &optProb);
- protected:
- ///
- /// redeclaring the interface of opt
- ///
- virtual int optimize() = 0;
- ///
- /// do initializations (this is called from child class and calls superclass::init)
- ///
- void init();
- ///
- /// call after optimization to store the result in the optProblem
- ///
- /// @param optProb the optimization problem
- ///
- void setResult(SimpleOptProblem &optProb);
- ///
- /// get all settings from the optimization problem
- ///
- /// @param optProb the optimization problem
- ///
- void getSettings(SimpleOptProblem &optProb);
- };
- #endif
|