00001
00002
00003
00004
00005 #ifndef OPTIMIZER_H
00006 #define OPTIMIZER_H
00007
00008 #include <vector>
00009 #include "psychometric.h"
00010 #include "data.h"
00011
00013 class PsiOptimizer
00014 {
00015 private:
00016
00017 int nparameters;
00018 std::vector< std::vector<double> > simplex;
00019 std::vector<double> fx;
00020 std::vector<double> x;
00021 std::vector<double> xx;
00022 std::vector<double> start;
00023 std::vector<bool> modified;
00024 public:
00025 PsiOptimizer (
00026 const PsiPsychometric * model,
00027 const PsiData * data
00028 );
00029 ~PsiOptimizer ( void );
00030 std::vector<double> optimize (
00031 const PsiPsychometric * model,
00032 const PsiData * data,
00033 const std::vector<double>* startingvalue=NULL
00034 );
00035 };
00036
00037 #endif