Sistemas de Controle  0.5
Biblioteca matematica de Controle
pso.h
Vá para a documentação deste arquivo.
1 #ifndef __PSO_H_INCLUDED
2 #define __PSO_H_INCLUDED
3 
4 #include "..\simulationLibs\lsim.h"
5 
7 
26 template <class UsedType>
27 class PSO
28 {
29 private:
31  Lsim<UsedType> Model;
32 
34 
55 
57 
79  void ParticleUpdate();
80 
82 
103  void ParticleEvaluation();
104 
106 
127  void VelocityUpdate();
128 
130 
151  void initAlgorithm();
152 
154 
176  void FitnessUpdate();
177 
179 
200  void FitnessUpdateMin();
201 
203 
224  void FitnessUpdateMax();
225 
226 public:
227 
229 
255  PSO();
256 
258 
284  PSO(int varNum, int PopSize, int GenSize);
285 
287 
313  PSO(int varNum, int PopSize, int GenSize, double phi1, double phi2);
314 
316 
342  PSO(int varNum, int PopSize, int GenSize, double phi1, double phi2, double omega, bool MinMax);
343 
345 
355  ~PSO();
356 
358 
377  void Run();
378 
380 
401  void Run(int nTimes);
402  void setData(Matrix<UsedType> dataIn, Matrix<UsedType> dataOut);
403 
404  double getTime();
405 };
406 
407 #endif // PSO_H
void initAlgorithm()
Inicializa os parâmetros do PSO.
void setData(Matrix< UsedType > dataIn, Matrix< UsedType > dataOut)
Matrix< UsedType > GGen
Definition: pso.h:30
void FitnessUpdateMax()
Realiza a verificação da existencia de melhores partículas locais e globais para uma função que deve ...
Matrix< UsedType > V
Definition: pso.h:30
double getTime()
Matrix< UsedType > GfitnessnTime
Definition: pso.h:30
Matrix< UsedType > P
Definition: pso.h:30
Matrix< UsedType > Pfitness
Definition: pso.h:30
Matrix< UsedType > X
Definition: pso.h:30
PSO()
Construtor padrão da biblioteca.
Matrix< UsedType > Evaluation(Matrix< UsedType > Matrix2Evaluate)
Recebe uma matriz e devolve uma matriz simbolizando a avaliação das partículas inseridas.
Matrix< UsedType > GnTimes
Definition: pso.h:30
void Run()
Função que inicializa a otimização do problema.
Matrix< UsedType > G
Definition: pso.h:30
Classe Matriz, com o intuito de realizar operações entre matrizes entre outras funções.
Definition: matrix.h:23
void FitnessUpdateMin()
Realiza a verificação da existencia de melhores partículas locais e globais para uma função que deve ...
Classe de otimização por nuvem de partículas.
Definition: pso.h:27
Lsim< UsedType > Model
Definition: pso.h:31
void ParticleEvaluation()
Avalia as partículas X.
void FitnessUpdate()
Realiza a verificação da existencia de melhores partículas locais e globais.
Matrix< UsedType > Xfitness
Definition: pso.h:30
void VelocityUpdate()
Atualiza as velocidades (V) das partículas (X).
Matrix< UsedType > RunTime
Definition: pso.h:30
Matrix< UsedType > Gfitness
Definition: pso.h:30
~PSO()
Destrutor padrão do PSO.
void ParticleUpdate()
Atualiza as partículas X.
Matrix< UsedType > GfitnessGen
Definition: pso.h:30