Introduce Simulated Annealing or Threshold Accepting
(the latter is an improvement to Sim. Ann.), meaning: At
the beginning, allow bigger changes than at the end
when close to an optimal solution
1. Define a threshold
2. Determine random initial solution
3. Create follow-up solution by modifying the previous solution
4. Calculate the fitness value of both solutions
5. Accept the new solution if it is at most not more worse
then the previous one by the given threshold
6. Reduce the threshold slowly up to zero, if there is no
progress in the solution's fitness value for a longer period of
time
7. Loop to 3 until a stop criterion (time, fitness) is true
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
For Sim. Ann and Thresh. Acc. it could be senseful installing
an entity being responsible for spilling out (defining) the
NaturalSelector's and GeneticOperator's to be used for the
evolution of the actual generation/population. The NS's and
GO's itself would not vary in most cases, but their parameters
could (mutation rate, crossing over rate, percentage of
chromosomes randomly selected for the next generation...)!
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Logged In: YES
user_id=722855
Threshold Accepting:
1. Define a threshold
2. Determine random initial solution
3. Create follow-up solution by modifying the previous solution
4. Calculate the fitness value of both solutions
5. Accept the new solution if it is at most not more worse
then the previous one by the given threshold
6. Reduce the threshold slowly up to zero, if there is no
progress in the solution's fitness value for a longer period of
time
7. Loop to 3 until a stop criterion (time, fitness) is true
Logged In: YES
user_id=722855
For Sim. Ann and Thresh. Acc. it could be senseful installing
an entity being responsible for spilling out (defining) the
NaturalSelector's and GeneticOperator's to be used for the
evolution of the actual generation/population. The NS's and
GO's itself would not vary in most cases, but their parameters
could (mutation rate, crossing over rate, percentage of
chromosomes randomly selected for the next generation...)!
Logged In: YES
user_id=722855
Maybe we could interface JSIMUL (a Java simulated annealing
package hosted at
http://www.theblueplanet.org/JSimul_readme.html\).