The Heuristic Wiki

Hill Climbing

Hill-climbing is a heuristic in which one searches for an optimum combination of a set of variables by varying each variable one at a time as long as the result increases and then stopping when the result decreases.

For example, you are using hill-climbing to search for the optimal setting of volume, treble, and bass on your boom box if you adjust each knob in turn, finding the optimal setting for each knob on its own without regard for the others.

Hill-climbing gets its name from the fact that it assumes that the function space is "hill-shaped". If you start at the peak of the hill (the optimum), if you move in any direction, you move down. Anywhere else, you can pick any axis and as long as you are moving up, you are moving closer to the optimum.

Hill-climbing fails to find the optimum when the function space contains "local maxima". A local maximum is a tiny hill-let on the surface whose peak is not as high as the main peak. If you find a local maximum by hill-climbing, you're stuck there. Any small move in any direction makes things worse even though going in some direction gets you closer to the optimum.

If you want to play around with heuristics using Hill Climbing, Genetic Algorithms, or heterogeneous searches constructed of both, you can find an Open Source implementation at [http://dgpf.sourceforge.net/ DGPF].

Version 9 2008-Nov-10 14:19 UTC

Last edit by 82.234.176.43