Aspiration criteria implementation. More...
#include <tabu-search.hh>
Public Member Functions | |
void | accept (feasible_solution &fs, move &mov, gol_type evaluation) |
This is a callback function from the algorithm that tells us that a move was accepted. | |
best_ever_criteria (double min_improvement=1e-6) | |
best_ever_criteria (aspiration_criteria_chain *next, double min_improvement=1e-6) | |
bool | operator() (feasible_solution &fs, move &mov, gol_type evaluation) const |
The function that decides if we shoud accept a tabu move. | |
void | reset () |
A method to reset this aspiration criteria chain to its original state. | |
Protected Attributes | |
gol_type | best_m |
gol_type | tolerance_m |
Aspiration criteria implementation.
This is one of the best known aspiration criteria ready to be used in your tabu-search implementation.
This aspiration criteria is met when a tabu move would result in a global improvement.
Definition at line 359 of file tabu-search.hh.
mets::best_ever_criteria::best_ever_criteria | ( | double | min_improvement = 1e-6 | ) | [inline, explicit] |
Definition at line 601 of file tabu-search.hh.
mets::best_ever_criteria::best_ever_criteria | ( | aspiration_criteria_chain * | next, |
double | min_improvement = 1e-6 |
||
) | [inline, explicit] |
Definition at line 607 of file tabu-search.hh.
void mets::best_ever_criteria::accept | ( | feasible_solution & | fs, |
move & | mov, | ||
gol_type | evaluation | ||
) | [inline, virtual] |
This is a callback function from the algorithm that tells us that a move was accepted.
You can use this function to update the aspiration criteria based on the current search status. (e.g. record the best cost for a best ever criteria)
fs | The current working solution (after applying move). |
mov | The accepted move (the move just made). |
Reimplemented from mets::aspiration_criteria_chain.
Definition at line 621 of file tabu-search.hh.
bool mets::best_ever_criteria::operator() | ( | feasible_solution & | fs, |
move & | mov, | ||
gol_type | evaluation | ||
) | const [inline, virtual] |
The function that decides if we shoud accept a tabu move.
fs | The current working solution (before applying move). |
mov | The move to be made (the move that is being evaluated). |
the solution is the solution before applying mov.
Reimplemented from mets::aspiration_criteria_chain.
Definition at line 630 of file tabu-search.hh.
void mets::best_ever_criteria::reset | ( | ) | [inline, virtual] |
A method to reset this aspiration criteria chain to its original state.
Reimplemented from mets::aspiration_criteria_chain.
Definition at line 614 of file tabu-search.hh.
gol_type mets::best_ever_criteria::best_m [protected] |
Definition at line 379 of file tabu-search.hh.
gol_type mets::best_ever_criteria::tolerance_m [protected] |
Definition at line 380 of file tabu-search.hh.