#include <moSimpleSolutionTabuList.h>
Inheritance diagram for moSimpleSolutionTabuList< M >:

Public Types | |
| typedef M::EOType | EOT |
| Alias for the type. | |
Public Member Functions | |
| moSimpleSolutionTabuList (unsigned int __size) | |
| Constructor. | |
| bool | operator() (const M &__move, const EOT &__sol) |
| Function that indicates if, in a given state, the _move is tabu or not. | |
| void | add (const M &__move, const EOT &__sol) |
| 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 &__sol) |
| Procedure that removes a given solution from the tabu list (if it is into, else does nothing). | |
Private Attributes | |
| unsigned int | maxSize |
| The maximum size of the tabu list. | |
| unsigned int | currentSize |
| The current size of the tabu list. | |
| std::list< EOT > | tabuList |
| The solution tabu list. | |
Definition at line 22 of file moSimpleSolutionTabuList.h.
| moSimpleSolutionTabuList< M >::moSimpleSolutionTabuList | ( | unsigned int | __size | ) | [inline] |
Constructor.
| __size | The maximum size of the solution tabu list. |
Definition at line 34 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::currentSize.
| bool moSimpleSolutionTabuList< M >::operator() | ( | const M & | __move, | |
| const EOT & | __sol | |||
| ) | [inline, virtual] |
Function that indicates if, in a given state, the _move is tabu or not.
| __move | A given moMove. | |
| __sol | A solution. |
Implements eoBF< const M &, const M::EOType &, bool >.
Definition at line 45 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::tabuList.
| void moSimpleSolutionTabuList< M >::add | ( | const M & | __move, | |
| const EOT & | __sol | |||
| ) | [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. | |
| __sol | the origianl solution associated to this move. |
Implements moTabuList< M >.
Definition at line 64 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::currentSize, moSimpleSolutionTabuList< M >::maxSize, 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 91 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 97 of file moSimpleSolutionTabuList.h.
| void moSimpleSolutionTabuList< M >::removeSolution | ( | const EOT & | __sol | ) | [inline, private] |
Procedure that removes a given solution from the tabu list (if it is into, else does nothing).
| __sol | A given solution. |
Definition at line 109 of file moSimpleSolutionTabuList.h.
References moSimpleSolutionTabuList< M >::tabuList.
Referenced by moSimpleSolutionTabuList< M >::add().
1.5.2