00001 /** 00002 class optim_driver 00003 00004 File: optim_driver.h 00005 00006 Description: this class controls optimization computations 00007 00008 Author: Matej Leps, leps@cml.fsv.cvut.cz 00009 00010 $Id: optim_driver.h,v 1.4 2004/02/18 10:13:51 leps Exp $ 00011 */ 00012 00013 # ifndef __optim_driver_h__ 00014 # define __optim_driver_h__ 00015 00016 # include "obj_funct.h" 00017 # include "sade.h" 00018 # include "grade.h" 00019 00020 enum algorithm_type { alg_sade=1, 00021 alg_grade=2 } ; 00022 00023 class optim_driver 00024 { 00025 public: 00026 optim_driver ( algorithm_type &oat, 00027 obj_funct *oF ); ///< constructor 00028 ~optim_driver( void ); ///< destructor 00029 00030 void run ( long calls_limit ); ///< optimization cycle 00031 00032 private: 00033 /// Type of algorithm 00034 algorithm_type at ; 00035 /// Individual optimization algorithms 00036 sade *Sade ; 00037 grade *Grade ; 00038 }; 00039 00040 # endif // __optim_driver_h__