Algorithm.h

00001 #ifndef _ALGORITHM_H__
00002 #define _ALGORITHM_H__
00003 
00004 #include <assert.h>
00005 #include <stdio.h>
00006 #include <stdlib.h>
00007 //#include <iostream>
00008 #include <fstream>
00009 #include <string>
00010 #include <math.h>
00011 #include <vector>
00012 #include <map>
00013 #include <dirent.h>
00014 #include <algorithm>
00015 #include <sstream>
00016 
00017 using namespace std;
00018 
00019 #include "StreamOutput.h"
00020 #include "Data.h"
00021 #include "Framework.h"
00022 
00030 class Algorithm : public Framework, public Data
00031 {
00032     friend class BlendStopping;
00033 
00034 public:
00035     Algorithm();
00036     virtual ~Algorithm();
00037 
00038     REAL clipValue ( REAL input, REAL low, REAL high );
00039 
00040     // these methods need to be implemented in the specific algorithm
00041     virtual double calcRMSEonProbe() = 0;
00042     virtual double calcRMSEonBlend() = 0;
00043     virtual double train() = 0;
00044     virtual void setPredictionMode ( int cross ) = 0;
00045     virtual void predictMultipleOutputs ( REAL* rawInput, REAL* effect, REAL* output, int* label, int nSamples, int crossRun ) = 0;
00046 
00047     // indicates the retraining status (with all data)
00048     bool m_inRetraining;
00049 
00050 };
00051 
00052 
00053 #endif

Generated on Tue Jan 26 09:20:58 2010 for ELF by  doxygen 1.5.8