|
toulbar2
|


Public Member Functions | |
| virtual void | populationrandomwalk (OpProblem *problem, Configuration **population) |
| virtual int | nb_threshold_population (Configuration **population) |
| void | randomwalk (OpProblem *problem, Configuration *configuration) |
| void | initthreshold (Configuration **population, int popsize) |
| virtual void | thresholdupdate () |
| virtual void | thresholdcomputedelta (Configuration **population) |
| void | run (OpProblem *problem, Configuration **population) |
| virtual void | regrouping (Configuration **population) |
| void | populationkeepbest (OpProblem *problem, Configuration **population) |
| virtual void | thresholdchangesupdate () |
Public Attributes | |
| int | populationsize |
| int | regrouptest |
| int | lastmovedescent |
| int | elitism |
| int | nomovestop |
| Long | thresholddelta |
| int | nbiteration |
| int | thresholdchanges |
| int | total_nhtries |
| int | total_nbmoves |
| LSAlgorithm * | walkalgorithm |
Public Attributes inherited from IncompleteAlgorithm | |
| Long | threshold |
the GWW (Go with the winners) algorithms : the different subclasses differ by the way a threshold is managed and the particles are regrouped
|
virtual |
intialization of the threshold
Reimplemented from IncompleteAlgorithm.
References IncompleteAlgorithm::threshold, and walkalgorithm.
|
virtual |
the number of particles at the threshold (for statistics) , the population being yet sorted at the function call
Referenced by run().
| void GWWAlgorithm::populationkeepbest | ( | OpProblem * | problem, |
| Configuration ** | population | ||
| ) |
in case of elitism, the best particle is put into the population
References OpProblem::best_config, Configuration::copy_element(), populationsize, and Configuration::valuation.
Referenced by run().
|
virtual |
local search on the whole population
References OpProblem::lower_bound, LSAlgorithm::nbmoves, LSAlgorithm::nhtries, populationsize, randomwalk(), total_nbmoves, total_nhtries, and walkalgorithm.
Referenced by run().
|
virtual |
a local search for a particle
Reimplemented from IncompleteAlgorithm.
References LSAlgorithm::configurationmove(), lastmovedescent, OpProblem::lower_bound, nomovestop, Configuration::regrouped, IncompleteAlgorithm::threshold, thresholdupdate(), Configuration::valuation, walkalgorithm, and LSAlgorithm::walklength.
Referenced by populationrandomwalk().
|
virtual |
regrouping of the best particles on the good ones
Referenced by run().
|
virtual |
main function for running the algorithm
Reimplemented from IncompleteAlgorithm.
References elitism, OpProblem::lower_bound, nb_threshold_population(), nbiteration, populationkeepbest(), populationrandomwalk(), populationsize, Configuration::regrouped, regrouping(), regrouptest, IncompleteAlgorithm::threshold, thresholdchanges, thresholdchangesupdate(), thresholdcomputedelta(), thresholddelta, thresholdupdate(), total_nbmoves, total_nhtries, Configuration::valuation, and walkalgorithm.
|
virtual |
incrementing the threshold updates counter (for the statistics)
Referenced by run().
|
virtual |
method for computing the threshold decrement
Referenced by run().
|
virtual |
method for lowering the threshold( the delta has already been computed)
Referenced by randomwalk(), and run().
| int GWWAlgorithm::elitism |
elitism parameter : is the best particle put again in the population at each regroupment ( 1 yes, 0 no)
Referenced by run().
| int GWWAlgorithm::lastmovedescent |
parameter if the threshold is lowered at the last move of the walk (for trying to avoid the particle to be redistributed (1 yes, 0 no)
Referenced by randomwalk().
| int GWWAlgorithm::nbiteration |
the maximum number of iterations : useful when no threshold is managed (NothresholdGWWAlgorithm)
Referenced by run().
| int GWWAlgorithm::nomovestop |
parameter for stopping the walk in case of stagnation (1 yes, 0 no)
Referenced by randomwalk().
| int GWWAlgorithm::populationsize |
number of particles
Referenced by populationkeepbest(), populationrandomwalk(), and run().
| int GWWAlgorithm::regrouptest |
walk indicator : a walk is performed only is the particle has been regrouped : (1 yes, 0 no) (useful for a standard GWW with random walk (and no local search))
Referenced by run().
| int GWWAlgorithm::thresholdchanges |
number of threshold changes (for the statistics)
Referenced by run().
| Long GWWAlgorithm::thresholddelta |
the threshold decrement (compted by thresholdcomputedelta)
Referenced by run().
| int GWWAlgorithm::total_nbmoves |
total number of moves between 2 regroupments (for the statistics)
Referenced by populationrandomwalk(), and run().
| int GWWAlgorithm::total_nhtries |
total number of move tries between 2 regroupments (for the statistics)
Referenced by populationrandomwalk(), and run().
| LSAlgorithm* GWWAlgorithm::walkalgorithm |
the local search algorithm used
Referenced by initthreshold(), populationrandomwalk(), randomwalk(), and run().