This class implements the bound handling strategy absorption for the particle swarm optimization. More...
#include <absorption.h>
Public Member Functions | |
BoundHandlingAbsorption (AbsorptionMarkDimensions absorption_mark_dimensions) | |
The constructor. More... | |
std::string | GetName () |
Returns a string representation of this object. More... | |
void | SetParticleUpdate (Particle *p) |
Updates the position of the particle p according to the current position and the new (already calculated) velocity. More... | |
Public Member Functions inherited from highprecisionpso::BoundHandling | |
virtual | ~BoundHandling () |
The destructor. More... | |
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. More... | |
Detailed Description
This class implements the bound handling strategy absorption for the particle swarm optimization.
If a particle would leave the search space, the new position is set to the intersection of the search space bound and the line from the old position to the new position.
Constructor & Destructor Documentation
highprecisionpso::BoundHandlingAbsorption::BoundHandlingAbsorption | ( | AbsorptionMarkDimensions | absorption_mark_dimensions | ) |
The constructor.
- Parameters
-
absorption_mark_dimensions Specifies on which dimensions the velocity adjustment is applied.
Member Function Documentation
|
virtual |
Returns a string representation of this object.
- Returns
- The name of the object.
Implements highprecisionpso::BoundHandling.
|
virtual |
Updates the position of the particle p according to the current position and the new (already calculated) velocity.
The new position is calculated by adding the velocity to the position. If the new position would be outside of the search space bounds then the bound handling strategy absorption is activated. Afterwards the specified velocity adjustment is activated with suitable parameters.
- Parameters
-
p The particle, which should be updated.
Implements highprecisionpso::BoundHandling.
The documentation for this class was generated from the following file:
- src/bound_handling/absorption.h