RockyML  0.0.1
A High-Performance Scientific Computing Framework
rocky::zagros::basic_pso< T_e, T_dim > Class Template Referenceabstract

Base class for Tribes PSO. More...

#include <pso.h>

Inheritance diagram for rocky::zagros::basic_pso< T_e, T_dim >:
Collaboration diagram for rocky::zagros::basic_pso< T_e, T_dim >:

Public Types

enum  update_mode { use_particles, use_groups }
 
typedef Eigen::Map< Eigen::Matrix< T_e, 1, T_dim, Eigen::RowMajor > > eigen_particle
 

Public Member Functions

 basic_pso (system< T_e > *problem, basic_scontainer< T_e, T_dim > *main_container, basic_scontainer< T_e, T_dim > *particles_v, basic_scontainer< T_e, T_dim > *particles_best, basic_scontainer< T_e, T_dim > *groups_best, basic_scontainer< T_e, T_dim > *node_best, basic_scontainer< T_e, T_dim > *cluster_best)
 
T_e rand_uniform ()
 
virtual void initialize_velocity ()
 
virtual void reset ()
 
virtual void update_particles_best (int rng_start, int rng_end)
 
virtual void update_particles_best (int rng_start=0)
 
virtual void update_groups_best (int rng_start, int rng_end)
 
virtual void update_groups_best ()
 
template<update_mode T_um = use_groups>
void update_node_best ()
 
void update_cluster_best ()
 
virtual void update_particles_v ()=0
 update particles velocity in parallel More...
 
virtual void update_particles_x ()
 update particles position in parallel More...
 
- Public Member Functions inherited from rocky::zagros::search_strategy< T_e, T_dim >
virtual void apply ()=0
 

Protected Attributes

system< T_e > * problem_
 
basic_scontainer< T_e, T_dim > * main_container_
 
basic_scontainer< T_e, T_dim > * particles_v_
 
basic_scontainer< T_e, T_dim > * particles_best_
 
basic_scontainer< T_e, T_dim > * groups_best_
 
basic_scontainer< T_e, T_dim > * node_best_
 
basic_scontainer< T_e, T_dim > * cluster_best_
 
T_e hyper_w_
 

Detailed Description

template<typename T_e, int T_dim>
class rocky::zagros::basic_pso< T_e, T_dim >

Base class for Tribes PSO.

Member Function Documentation

◆ update_particles_v()

template<typename T_e , int T_dim>
virtual void rocky::zagros::basic_pso< T_e, T_dim >::update_particles_v ( )
pure virtual

◆ update_particles_x()

template<typename T_e , int T_dim>
virtual void rocky::zagros::basic_pso< T_e, T_dim >::update_particles_x ( )
inlinevirtual

update particles position in parallel

Returns
** void

The documentation for this class was generated from the following file: