00001 //----------------------------------------------------------------------------- 00002 // Author: Jim Holmström 00003 // Date: 2002-02-13 00004 //----------------------------------------------------------------------------- 00005 00006 #ifndef __GNGUALGORITHM_H 00007 #define __GNGUALGORITHM_H 00008 00009 #include "GNGAlgorithm.hpp" 00010 00015 class GNGUAlgorithm : public GNGAlgorithm 00016 { 00017 public: 00021 GNGUAlgorithm(unsigned int MSEBackLog) : GNGAlgorithm(MSEBackLog) {}; 00022 00027 virtual void Iterate(Vector const & input); 00028 00033 void SetParamUtility(double d) { m_paramUtility = d; } 00034 00040 void SetParamUtilityDecay(double d) { m_paramUtilityDecay = d; } 00041 00042 protected: 00046 virtual void PurgeNodes(); 00047 00051 virtual void UpdateUtility(GNGNode & s, GNGNode & t); 00052 00056 virtual void DecreaseNodeUtiliy(); 00057 00058 protected: 00059 double m_paramUtility; 00060 double m_paramUtilityDecay; 00061 }; 00062 00063 00064 #endif