#include <simulated-annealing.hh>
Inheritance diagram for mets::simulated_annealing< move_manager_type >:


Public Types | |
|
typedef simulated_annealing< move_manager_type > | search_type |
Public Member Functions | |
| simulated_annealing (feasible_solution &starting_point, solution_recorder &recorder, move_manager_type &moveman, termination_criteria_chain &tc, abstract_cooling_schedule &cs, double starting_temp, double K=1.0) | |
| Creates a search by simulated annealing instance. | |
| simulated_annealing (const simulated_annealing &) | |
| purposely not implemented (see Effective C++) | |
| simulated_annealing & | operator= (const simulated_annealing &) |
| virtual void | search () throw (no_moves_error) |
| This method starts the simulated annealing search process. | |
| double | current_temp () const |
| The current annealing temperature. | |
| const abstract_cooling_schedule & | cooling_schedule () const |
| The annealing schedule instance. | |
Protected Attributes | |
| termination_criteria_chain & | termination_criteria_m |
| abstract_cooling_schedule & | cooling_schedule_m |
| double | starting_temp_m |
| double | current_temp_m |
| double | K_m |
| std::tr1::uniform_real | ureal |
| std::tr1::mt19937 | rng |
|
std::tr1::variate_generator< std::tr1::mt19937, std::tr1::uniform_real< double > > | gen |
| mets::simulated_annealing< move_manager_t >::simulated_annealing | ( | feasible_solution & | starting_point, | |
| solution_recorder & | recorder, | |||
| move_manager_type & | moveman, | |||
| termination_criteria_chain & | tc, | |||
| abstract_cooling_schedule & | cs, | |||
| double | starting_temp, | |||
| double | K = 1.0 | |||
| ) |
Creates a search by simulated annealing instance.
| working | The working solution (this will be modified during search). | |
| best_so_far | A different solution instance used to store the best solution found. | |
| moveman | A problem specific implementation of the move_manager_type used to generate the neighborhood. | |
| tc | The termination criteria used to terminate the search process, this is an extension to the standard Simulated Annealing: you can give a termination criteria that termiantes when temperature reaches 0. | |
| cs | The annealing schedule that decorates this SA instance. | |
| starting_temp | The starting SA temperature. |
| const abstract_cooling_schedule& mets::simulated_annealing< move_manager_type >::cooling_schedule | ( | ) | const [inline] |
The annealing schedule instance.
| double mets::simulated_annealing< move_manager_type >::current_temp | ( | ) | const [inline] |
The current annealing temperature.
| void mets::simulated_annealing< move_manager_t >::search | ( | ) | throw (no_moves_error) [virtual] |
This method starts the simulated annealing search process.
Remember that this is a minimization process.
Implements mets::abstract_search< move_manager_type >.
Return to METSlib home page