# Hill climbing levy flight

Hill climbing is a simple enhancement to levy flights that only takes a step if the fitness of the new solution is better than the current solution. This means that we definitely get better and better solutions, but there is also a high probability of getting stuck at a small peak. By using a levy flight, we can theoretically reach any point in the search space from any other point, so unlike hill climbing we won't [i]definitely[/i] get stuck on the first peak we find; however, since we never take a step that's less fit than the current location, we are forced to jump between peaks in one move, which is highly unlikely. The better the peak we're on, the smaller the acceptable area of better peaks is, and thus the harder it is to jump to them.

In this example, like with the other random walks, the fitness of a particular location is shown by how light the grey colour is. This is randomly generated when the page loads.

Each (x, y) point in the square is a solution, and our goal is to find the best (lightest). We start at a random location (otherwise multiple searches would be too similar to be interesting) and we move a random (Pareto-distributed) distance at a random angle at each step. If the new location has a lower fitness than our current location, we don't bother moving; otherwise we finish the move to the new location. Like the standard Levy flight example, the edges wrap around an arbitrary number of times.

Current fitness: