bound_handling.h
Go to the documentation of this file.
1 
40 #ifndef HIGH_PRECISION_PSO_BOUND_HANDLING_BOUND_HANDLING_H_
41 #define HIGH_PRECISION_PSO_BOUND_HANDLING_BOUND_HANDLING_H_
42 
43 #include <gmp.h>
44 #include <string>
45 #include <vector>
46 
47 #include "general/particle.h"
48 
49 namespace highprecisionpso {
50 
55 public:
59  virtual ~BoundHandling(){};
71  virtual void SetParticleUpdate(Particle * p) = 0;
77  virtual std::string GetName() = 0;
89  virtual std::vector<mpf_t*> GetDirectionVector(const std::vector<mpf_t*> & position, const std::vector<mpf_t*> & aim);
90 };
91 
92 } // namespace highprecisionpso
93 
94 #endif /* HIGH_PRECISION_PSO_BOUND_HANDLING_BOUND_HANDLING_H_ */
virtual std::vector< mpf_t * > GetDirectionVector(const std::vector< mpf_t * > &position, const std::vector< mpf_t * > &aim)
Calculates the difference vector between the position and the aim.
The particles for the particle swarm optimization algorithm.
Definition: particle.h:54
virtual ~BoundHandling()
The destructor.
Definition: bound_handling.h:59
virtual void SetParticleUpdate(Particle *p)=0
Updates the position of the particle p according to the current position and the new (already calcula...
This class is an abstract class. It supplies the interface for bound handling strategies of the parti...
Definition: bound_handling.h:54
virtual std::string GetName()=0
Returns a string representation of this object.
This file contains information about the particles of the swarm.
base namespace for this project.
Definition: absorption.h:45