|
| basic_scontainer (int n_particles, int group_size) |
|
int | n_particles () const |
|
int | group_size () const |
|
int | n_groups () const |
|
void | reset_values () |
|
void | allocate () |
|
T_e * | particle (int p) |
| get the starting address of a specific particle More...
|
|
int | particle_group (int p) |
| get the group of a particle More...
|
|
T_e * | group (int g) |
| get the address to the starting point of a group More...
|
|
std::pair< int, int > | group_range (int g) const |
| starting and endind point of a group More...
|
|
T_e * | value (int p) |
| pointer to the value of a particle More...
|
|
void | sample_n_particles (int *indices, int n=1) |
| sample n distinct particles from a group efficient when n is small More...
|
|
std::pair< int, int > | sample_pair (int group) |
| sample a pair of distinct particles More...
|
|
int | sample_particle (int group) |
| sample a single particle from a group More...
|
|
int | sample_dim () |
| choose a dimension randomly More...
|
|
size_t | space () const |
| amount of allocated memory in bytes More...
|
|
T_e | best_min () |
| find the best solution in the container More...
|
|
std::pair< T_e, int > | best_min_index () |
| find the best solution and the corresponding index in the container More...
|
|
void | evaluate_and_update (system< T_e > *problem, int rng_start, int rng_end) |
| evaluate and update the particles within a range More...
|
|
void | evaluate_and_update (system< T_e > *problem, int p) |
| evaluate and update a single particle More...
|
|
void | evaluate_and_update (system< T_e > *problem) |
| evaluate and update all particles More...
|
|
void | best_k (int *indices, int k) |
| find top-k solutions and fill the indices More...
|
|
void | worst_k (int *indices, int k) |
| find worst-k solutions and fill the indices More...
|
|
void | replace_with (basic_scontainer< T_e, T_dim > *cnt) |
| replace the best values from another container More...
|
|
std::discrete_distribution< int > | weighted_sampler () |
| weighted particle sampling More...
|
|
template<typename T_e, int T_dim>
class rocky::zagros::basic_scontainer< T_e, T_dim >
a data container representing a scontainer