IMP Reference Guide
develop.d97d4ead1f,2024/11/21
The Integrative Modeling Platform
|
A simplex optimizer taken from GSL. More...
#include <IMP/gsl/Simplex.h>
A simplex optimizer taken from GSL.
Simplex works by modifying a simplex in the space of the optimized attributes. The algorithm may not behave well when using score states, such as those involved in rigid bodies, which significantly change the values of the attributes. Then, again, it may work just fine. But be aware that it is not understood.
The main advantage of Simplex is that it is a local optimizer that does not require derivatives.
Public Member Functions | |
Simplex (Model *m) | |
virtual Float | do_optimize (unsigned int max_steps) override |
override this function to do actual optimization More... | |
virtual std::string | get_type_name () const override |
virtual ::IMP::VersionInfo | get_version_info () const override |
Get information about the module and version of the object. More... | |
Public Member Functions inherited from IMP::gsl::GSLOptimizer | |
GSLOptimizer (Model *m) | |
void | set_stop_score (double d) |
Stop the optimization if the score falls below this value. More... | |
Public Member Functions inherited from IMP::AttributeOptimizer | |
AttributeOptimizer (Model *m, std::string name="Optimizer %1%") | |
Public Member Functions inherited from IMP::Optimizer | |
Optimizer (Model *m, std::string name="Optimizer %1%") | |
double | get_last_score () const |
Return the score found in the last evaluate. More... | |
ScoringFunction * | get_scoring_function () const |
Return the scoring function that is being used. More... | |
bool | get_stop_on_good_score () const |
double | optimize (unsigned int max_steps) |
Optimize the model for up to max_steps iterations. More... | |
virtual void | set_scoring_function (ScoringFunctionAdaptor sf) |
Set the scoring function to use. More... | |
void | set_stop_on_good_score (bool tf) |
void | remove_optimizer_state (OptimizerState *d) |
void | remove_optimizer_states (const OptimizerStates &d) |
void | set_optimizer_states (const OptimizerStates &ps) |
void | set_optimizer_states_order (const OptimizerStates &objs) |
unsigned int | add_optimizer_state (OptimizerState *obj) |
void | add_optimizer_states (const OptimizerStates &objs) |
void | clear_optimizer_states () |
unsigned int | get_number_of_optimizer_states () const |
bool | get_has_optimizer_states () |
OptimizerState * | get_optimizer_state (unsigned int i) const |
OptimizerStates | get_optimizer_states () const |
void | erase_optimizer_state (unsigned int i) |
void | reserve_optimizer_states (unsigned int sz) |
Public Member Functions inherited from IMP::ModelObject | |
ModelObject (Model *m, std::string name) | |
bool | get_has_dependencies () const |
Return whether this object has dependencies computed. More... | |
bool | get_has_required_score_states () const |
Return whether score states are computed. More... | |
ModelObjectsTemp | get_inputs () const |
ModelObjectsTemps | get_interactions () const |
Get the interacting sets induced by this ModelObject. More... | |
Model * | get_model () const |
ModelObjectsTemp | get_outputs () const |
const ScoreStatesTemp & | get_required_score_states () const |
Get the score states that are ancestors of this in the dependency graph. More... | |
void | set_has_dependencies (bool tf) |
Either invalidate the dependencies or ensure they are correct. More... | |
void | set_has_required_score_states (bool tf) |
Compute the required score states. More... | |
Public Member Functions inherited from IMP::Object | |
virtual void | clear_caches () |
CheckLevel | get_check_level () const |
LogLevel | get_log_level () const |
void | set_check_level (CheckLevel l) |
void | set_log_level (LogLevel l) |
Set the logging level used in this object. More... | |
void | set_was_used (bool tf) const |
void | show (std::ostream &out=std::cout) const |
const std::string & | get_name () const |
void | set_name (std::string name) |
Additional Inherited Members | |
Public Attributes inherited from IMP::Optimizer | |
list | optimizer_states |
A Python list of OptimizerStates More... | |
Protected Member Functions inherited from IMP::AttributeOptimizer | |
double | get_width (FloatKey k) const |
FloatIndexes | get_optimized_attributes () const |
void | set_value (FloatIndex fi, double v) const |
Float | get_value (FloatIndex fi) const |
Float | get_derivative (FloatIndex fi) const |
void | set_scaled_value (FloatIndex fi, Float v) const |
double | get_scaled_value (FloatIndex fi) const |
double | get_scaled_derivative (FloatIndex fi) const |
void | clear_range_cache () |
Clear the cache of range information. Do this at the start of. More... | |
Protected Member Functions inherited from IMP::Optimizer | |
virtual ModelObjectsTemp | do_get_inputs () const override |
virtual ModelObjectsTemp | do_get_outputs () const override |
don't return anything here to avoid pointless dependencies More... | |
ModelObjectsTemp | get_optimizer_state_inputs () const |
void | update_states () const |
Update optimizer states, should be called at each successful step. More... | |
Protected Member Functions inherited from IMP::ModelObject | |
virtual ModelObjectsTemps | do_get_interactions () const |
virtual void | handle_set_has_required_score_states (bool) |
Protected Member Functions inherited from IMP::Object | |
Object (std::string name) | |
Construct an object with the given name. More... | |
virtual void | do_destroy () |
|
overridevirtual |
override this function to do actual optimization
Implements IMP::Optimizer.
|
overridevirtual |
Get information about the module and version of the object.
Reimplemented from IMP::Object.