METSlib 0.5
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
mets::swap_neighborhood< random_generator > Class Template Reference

Generates a stochastic subset of the neighborhood. More...

#include <model.hh>

Inheritance diagram for mets::swap_neighborhood< random_generator >:
Inheritance graph
Collaboration diagram for mets::swap_neighborhood< random_generator >:
Collaboration graph

Public Member Functions

 swap_neighborhood (random_generator &r, unsigned int moves)
 A neighborhood exploration strategy for mets::swap_elements. More...
 
 ~swap_neighborhood ()
 Dtor.
 
void refresh (mets::feasible_solution &s)
 Selects a different set of moves at each iteration. More...
 
- Public Member Functions inherited from mets::move_manager
 move_manager ()
 Initialize the move manager with an empty list of moves.
 
virtual ~move_manager ()
 Virtual destructor.
 
virtual void refresh (mets::feasible_solution &s)=0
 Selects a different set of moves at each iteration. More...
 
iterator begin ()
 Begin iterator of available moves queue.
 
iterator end ()
 End iterator of available moves queue.
 
size_type size () const
 Size of the neighborhood.
 

Protected Member Functions

void randomize_move (swap_elements &m, unsigned int size)
 
- Protected Member Functions inherited from mets::move_manager
 move_manager (const move_manager &)
 

Protected Attributes

random_generator & rng
 
std::tr1::uniform_int int_range
 
unsigned int n
 
- Protected Attributes inherited from mets::move_manager
std::deque< move * > moves_m
 The moves queue.
 

Additional Inherited Members

- Public Types inherited from mets::move_manager
typedef std::deque< move * >::iterator iterator
 Iterator type to iterate over moves of the neighborhood.
 
typedef std::deque< move * >::size_type size_type
 Size type.
 

Detailed Description

template<typename random_generator = std::tr1::minstd_rand0>
class mets::swap_neighborhood< random_generator >

Generates a stochastic subset of the neighborhood.


The documentation for this class was generated from the following file:

Return to METSlib home page