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

Public Types | |
| typedef M::EOType | EOT |
| Alias for the type. | |
Public Member Functions | |
| moSimpleMoveTabuList (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 | removeMove (const M &__move) |
| Procedure that removes a given move from the tabu list (if it is into, else do 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< M > | tabuList |
| The move tabu list. | |
Definition at line 47 of file moSimpleMoveTabuList.h.
| bool moSimpleMoveTabuList< 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 71 of file moSimpleMoveTabuList.h.
References moSimpleMoveTabuList< M >::tabuList.
| void moSimpleMoveTabuList< 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 85 of file moSimpleMoveTabuList.h.
References moSimpleMoveTabuList< M >::currentSize, moSimpleMoveTabuList< M >::maxSize, moSimpleMoveTabuList< M >::removeMove(), and moSimpleMoveTabuList< M >::tabuList.
| void moSimpleMoveTabuList< 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 107 of file moSimpleMoveTabuList.h.
| void moSimpleMoveTabuList< 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 113 of file moSimpleMoveTabuList.h.
| void moSimpleMoveTabuList< M >::removeMove | ( | const M & | __move | ) | [inline, private] |
Procedure that removes a given move from the tabu list (if it is into, else do nothing).
| __move | A given moMove. |
Definition at line 125 of file moSimpleMoveTabuList.h.
References moSimpleMoveTabuList< M >::tabuList.
Referenced by moSimpleMoveTabuList< M >::add().
1.5.2