A mets::mana_move that swaps a subsequence of elements in a mets::permutation_problem. More...
#include <model.hh>
Public Member Functions | |
void | apply (mets::feasible_solution &s) const |
Virtual method that applies the move on a point. | |
void | change (int from, int to) |
clonable * | clone () const |
gol_type | evaluate (const mets::feasible_solution &s) const |
Virtual method that applies the move on a point. | |
size_t | hash () const |
An hash function used by the tabu list (the hash value is used to insert the move in an hash set). | |
invert_subsequence (int from, int to) | |
A move that swaps from and to. | |
bool | operator== (const mets::mana_move &o) const |
Comparison operator used to tell if this move is equal to a move in the tabu list. | |
Protected Attributes | |
int | p1 |
the first element to swap | |
int | p2 |
the second element to swap |
A mets::mana_move that swaps a subsequence of elements in a mets::permutation_problem.
mets::invert_subsequence::invert_subsequence | ( | int | from, |
int | to | ||
) | [inline] |
void mets::invert_subsequence::apply | ( | mets::feasible_solution & | s | ) | const [inline, virtual] |
Virtual method that applies the move on a point.
Implements mets::move.
void mets::invert_subsequence::change | ( | int | from, |
int | to | ||
) | [inline] |
clonable* mets::invert_subsequence::clone | ( | ) | const [inline, virtual] |
Implements mets::clonable.
mets::gol_type mets::invert_subsequence::evaluate | ( | const mets::feasible_solution & | s | ) | const [inline, virtual] |
Virtual method that applies the move on a point.
Implements mets::move.
size_t mets::invert_subsequence::hash | ( | ) | const [inline, virtual] |
An hash function used by the tabu list (the hash value is used to insert the move in an hash set).
Implements mets::hashable.
bool mets::invert_subsequence::operator== | ( | const mets::mana_move & | o | ) | const [inline, virtual] |
Comparison operator used to tell if this move is equal to a move in the tabu list.
Implements mets::mana_move.
int mets::invert_subsequence::p1 [protected] |
int mets::invert_subsequence::p2 [protected] |