|
Rosetta 3.5
|
Particle Swarm Optimization engine. More...
#include <ParticleSwarmMinimizer.hh>


Public Member Functions | |
| ParticleSwarmMinimizer (Multivec p_min, Multivec p_max) | |
| virtual | ~ParticleSwarmMinimizer () |
| ParticleOPs | run (Size num_cycles, Multifunc &f_fitness, Size num_part=50) |
| ParticleOPs | run (Size num_cycles, Multifunc &f_fitness, Size num_part, Multivec init_values) |
| void | run (Size num_cycles, Multifunc &f_fitness, ParticleOPs &particles) |
| void | print_particles (ParticleOPs &particles, std::string header) |
| helper function for displaying current particle information; calls the output operator on each particle More... | |
Protected Member Functions | |
| virtual void | score_all_particles (Multifunc &f_fitness, ParticleOPs &particles) |
Private Attributes | |
| Size | size_ |
| Real | C_inertia_start_ |
| Real | C_inertia_end_ |
| Real | C_pbest_ |
| Real | C_lbest_ |
| Real | C_gbest_ |
| int | first_nbr_ |
| int | last_nbr_ |
| Multivec | p_min_ |
| Multivec | p_max_ |
| Multivec | p_range_ |
| Multivec | v_max_ |
Particle Swarm Optimization engine.
Algorithm details based heavily on
Chen, Liu, Huang, Hwang, Ho (2006). "SODOCK: Swarm Optimization for Highly Flexible Protein-Ligand Docking" J Comput Chem 28: 612-623, 2007
Also on http://en.wikipedia.org/wiki/Particle_swarm_optimization http://www.swarmintelligence.org/
One can imagine writing another version that distributed the work via MPI...
Definition at line 133 of file ParticleSwarmMinimizer.hh.
|
virtual |
Definition at line 79 of file ParticleSwarmMinimizer.cc.
| void core::optimization::ParticleSwarmMinimizer::print_particles | ( | ParticleOPs & | particles, |
| std::string | header | ||
| ) |
helper function for displaying current particle information; calls the output operator on each particle
Definition at line 255 of file ParticleSwarmMinimizer.cc.
| ParticleOPs core::optimization::ParticleSwarmMinimizer::run | ( | Size | num_cycles, |
| Multifunc & | f_fitness, | ||
| Size | num_part = 50 |
||
| ) |
Definition at line 82 of file ParticleSwarmMinimizer.cc.
References my_RG(), p_min_, p_range_, and size_.
Referenced by protocols::optimize_weights::IterativeOptEDriver::optimize_weights(), and run().
| ParticleOPs core::optimization::ParticleSwarmMinimizer::run | ( | Size | num_cycles, |
| Multifunc & | f_fitness, | ||
| Size | num_part, | ||
| Multivec | init_values | ||
| ) |
| void core::optimization::ParticleSwarmMinimizer::run | ( | Size | num_cycles, |
| Multifunc & | f_fitness, | ||
| ParticleOPs & | particles | ||
| ) |
Definition at line 128 of file ParticleSwarmMinimizer.cc.
References C_gbest_, C_inertia_end_, C_inertia_start_, C_lbest_, C_pbest_, core::optimization::cmp_particles(), first_nbr_, last_nbr_, my_RG(), protocols::forge::build::SegmentInsertConnectionScheme::N, p_max_, p_min_, score_all_particles(), size_, and v_max_.
|
protectedvirtual |
Reimplemented in protocols::pockets::DarcParticleSwarmMinimizer.
Definition at line 246 of file ParticleSwarmMinimizer.cc.
References protocols::forge::build::SegmentInsertConnectionScheme::N.
Referenced by run().
|
private |
Definition at line 156 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 153 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 152 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 155 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 154 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 157 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 158 of file ParticleSwarmMinimizer.hh.
Referenced by run().
|
private |
Definition at line 160 of file ParticleSwarmMinimizer.hh.
Referenced by ParticleSwarmMinimizer(), and run().
|
private |
Definition at line 159 of file ParticleSwarmMinimizer.hh.
Referenced by ParticleSwarmMinimizer(), and run().
|
private |
Definition at line 161 of file ParticleSwarmMinimizer.hh.
Referenced by ParticleSwarmMinimizer(), and run().
|
private |
Definition at line 151 of file ParticleSwarmMinimizer.hh.
Referenced by ParticleSwarmMinimizer(), and run().
|
private |
Definition at line 162 of file ParticleSwarmMinimizer.hh.
Referenced by ParticleSwarmMinimizer(), and run().
1.8.4