#include <moSimpleSolutionTabuList.h>

Public Types | |
| typedef M::EOType | EOT |
| Alias for the type. | |
| typedef std::list< EOT >::iterator | solutionIterator |
| Alias for an iterator of a solution list. | |
Public Member Functions | |
| moSimpleSolutionTabuList (unsigned int _memory_maximum_size) | |
| Constructor. | |
| bool | operator() (const M &_move, const EOT &_solution) |
| Function that indicates if, in a given state, the _move is tabu or not. | |
| void | add (const M &_move, const EOT &_solution) |
| Procedure to add a move in the tabu list. | |
| void | update () |
| Procedure that updates the tabu list content. | |
| void | init () |
| Procedure which initialises the tabu list. | |
Private Member Functions | |
| void | removeSolution (const EOT &_solution) |
| Procedure that removes a given solution from the tabu list (if it is into, else does nothing). | |
Private Attributes | |
| unsigned int | memory_maximum_size |
| The maximum size of the tabu list. | |
| unsigned int | memory_size |
| The current size of the tabu list. | |
| std::list< EOT > | tabuList |
| The solution tabu list. | |
Definition at line 46 of file moSimpleSolutionTabuList.h.
| moSimpleSolutionTabuList< M >::moSimpleSolutionTabuList | ( | unsigned int | _memory_maximum_size | ) | [inline] |
Constructor.
| _memory_maximum_size | The maximum size of the solution tabu list. |
Definition at line 60 of file moSimpleSolutionTabuList.h.
| bool moSimpleSolutionTabuList< M >::operator() | ( | const M & | _move, | |
| const EOT & | _solution | |||
| ) | [inline] |
Function that indicates if, in a given state, the _move is tabu or not.
| _move | A given moMove. | |
| _solution | A solution. |
Definition at line 69 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::tabuList.
| void moSimpleSolutionTabuList< M >::add | ( | const M & | _move, | |
| const EOT & | _solution | |||
| ) | [inline, virtual] |
Procedure to add a move in the tabu list.
The two parameters have not to be modified so they are constant parameters.
| _move | a new tabu move. | |
| _solution | the origianl solution associated to this move. |
Implements moTabuList< M >.
Definition at line 89 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::memory_maximum_size, moSimpleSolutionTabuList< M >::memory_size, moSimpleSolutionTabuList< M >::removeSolution(), and moSimpleSolutionTabuList< M >::tabuList.
| void moSimpleSolutionTabuList< M >::update | ( | ) | [inline, virtual] |
Procedure that updates the tabu list content.
Generally, a counter associated to each saved move is decreased by one.
Implements moTabuList< M >.
Definition at line 115 of file moSimpleSolutionTabuList.h.
| void moSimpleSolutionTabuList< M >::init | ( | ) | [inline, virtual] |
Procedure which initialises the tabu list.
Can be useful if the data structure needs to be allocated before being used.
Implements moTabuList< M >.
Definition at line 120 of file moSimpleSolutionTabuList.h.
| void moSimpleSolutionTabuList< M >::removeSolution | ( | const EOT & | _solution | ) | [inline, private] |
Procedure that removes a given solution from the tabu list (if it is into, else does nothing).
| _solution | A given solution. |
Definition at line 131 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::tabuList.
Referenced by moSimpleSolutionTabuList< M >::add().
1.5.4