Great deluge algorithm: Difference between revisions

Content deleted Content added
rv linkspam
No edit summary
Line 3:
The algorithm is clearly inspired by the [[simulated annealing]] idea in other optimization algorithms. The name comes from the analogy that in a great deluge a person climbing a hill will try to move up the hill in any direction that does not get his/her feet wet as the water level rises.
 
In a typical implementation of the GD, the algorithm usually start with a poor approximation, ''S'', of the optimum solution. A numerical value called the ''badness'' that measures how undesirable the initial approximation is is calculated. The higher the value of ''badness'', the more undesirable is the approximate solution. Another numerical value called the ''tolerance'' is calculated based on a number of factors, often including the initial badness.
 
A new approximate solution '' S' '', called a neighbour of ''S'', is calculated based on ''S''. The badness of '' S' '', '' b' '', is computed and compared with the tolerance. If '' b' '' is better than tolerance, then the algorithm is recursively restarted with ''S'' : = '' S' '', and ''tolerance'' := ''decay(tolerance)'' where ''decay'' is a function that lowers the tolerance (representing a rise in water levels). If '' b' '' is worse than tolerance, a different neighbour '' S* '' of ''S'' is chosen and the process repeated. If all the neighbours of ''S'' produce worse approximate solutions, then the algorithm is terminated and ''S'' is put forward as the best approximate solution obtained.