METSlib 0.6

- Main Page
- Modules
- Classes

Classes | Functions
Model

## Classes
class | mets::feasible_solution
| interface of a feasible solution space to be searched with tabu search. More...
class | mets::evaluable_solution
| A copyable and evaluable solution implementation,. More...
class | mets::permutation_problem
| An abstract permutation problem. More...
class | mets::move
| Move to be operated on a feasible solution. More...
class | mets::mana_move
| A Mana Move is a move that can be automatically made tabu by the mets::simple_tabu_list. More...
class | mets::swap_neighborhood< rndgen >
| Generates a stochastic subset of the neighborhood. More...
class | mets::swap_elements
| A mets::mana_move that swaps two elements in a mets::permutation_problem. More...
class | mets::invert_subsequence
| A mets::mana_move that swaps a subsequence of elements in a mets::permutation_problem. More...
class | mets::move_manager
| A neighborhood generator. More...
class | mets::swap_full_neighborhood
| Generates a the full swap neighborhood. More...
class | mets::invert_full_neighborhood
| Generates a the full subsequence inversion neighborhood. More...

## Functions
template<typename random_generator >
void | mets::random_shuffle (permutation_problem &p, random_generator &rng)
| Shuffle a permutation problem (generates a random starting point). More...
template<typename random_generator >
void | mets::perturbate (permutation_problem &p, unsigned int n, random_generator &rng)
| Perturbate a problem with n swap moves. More...
| mets::swap_neighborhood< rndgen >::swap_neighborhood (random_generator &r, unsigned int moves)
| A neighborhood exploration strategy for mets::swap_elements. More...
| mets::swap_neighborhood< rndgen >::~swap_neighborhood ()
| Dtor.
void | mets::swap_neighborhood< rndgen >::refresh (const mets::feasible_solution &s)
| Selects a different set of moves at each iteration.
void | mets::swap_neighborhood< rndgen >::randomize_move (swap_elements &m, unsigned int size)

## Detailed Description

## Function Documentation

template<typename random_generator >

void mets::perturbate | ( | permutation_problem & | p,
|  | unsigned int | n,
|  | random_generator & | rng
| ) |  |

Perturbate a problem with n swap moves.

See Also
  mets::permutation_problem

template<typename random_generator >

void mets::random_shuffle | ( | permutation_problem & | p,
|  | random_generator & | rng
| ) |  |

Shuffle a permutation problem (generates a random starting point).

See Also
  mets::permutation_problem

template<typename random_generator >

mets::swap_neighborhood< random_generator >::swap_neighborhood | ( | random_generator & | r,
|  | unsigned int | moves
| ) |  |

A neighborhood exploration strategy for mets::swap_elements.

This strategy selects moves random swaps

Parameters

  r | a random number generator (e.g. an instance of std::tr1::minstd_rand0 or std::tr1::mt19936)
  moves | the number of swaps to add to the exploration

Return to METSlib home page