Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members  

SIG_GPFitnessFunction.h

00001 #ifndef SIGEL_GP_SIG_GPFITNESSFUNCTION_H
00002 #define SIGEL_GP_SIG_GPFITNESSFUNCTION_H
00003 
00004 
00005 
00006 #include "SIGEL_Program/SIG_Program.h"
00007 #include "SIGEL_Robot/SIG_Robot.h"
00008 #include "SIGEL_Environment/SIG_Environment.h"
00009 #include "SIGEL_Simulation/SIG_SimulationParameters.h"
00010 
00011 
00012 #include <qstring.h>
00013 
00014 namespace SIGEL_GP
00015 {
00016 
00022 class SIG_GPFitnessFunction{
00023 
00028  protected:
00029 SIGEL_Program::SIG_Program & program;
00030 
00035  protected:
00036 SIGEL_Robot::SIG_Robot & rob;
00037 
00042  protected:
00043 SIGEL_Environment::SIG_Environment & environment;
00044 
00049  protected:
00050 SIGEL_Simulation::SIG_SimulationParameters & simparameter;
00051 
00056  public:
00057 QString const name;
00058 
00059 
00078  public: 
00079  SIG_GPFitnessFunction(SIGEL_Program::SIG_Program & program,
00080                        SIGEL_Robot::SIG_Robot & rob,
00081                        SIGEL_Environment::SIG_Environment &   environment,
00082                        SIGEL_Simulation::SIG_SimulationParameters & simparameter,
00083                        QString name);
00084 
00092  public:
00093  virtual ~SIG_GPFitnessFunction();
00094 
00095 
00107  public:
00108  virtual double evalFitness()=0;
00109 
00110  protected:
00111  bool isValid( double value );
00112 
00113  protected:
00114  DL_vector normalizeRobotPosition( DL_vector originalPosition,
00115                                    DL_matrix actualRobotRotation );
00116 
00117 };
00118 }
00119 
00120 #endif // SIGEL_GP_SIG_GPFITNESSFUNCTION_H

Generated at Mon Sep 3 01:32:22 2001 for PG 368 - SIGEL by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000