Hill climbingΒΆ

Another simple predictor is based on an optimization technique called hill climbing (see Wikipedia). As any resolver, it respects the current beam size and always picks the best solution found so far. The relative ordering in the beam has a tendency to preserve package release ordering based on Python package version specifier.

The figure bellow shows hill climbing performed during resolution of a software stack. The score gradually increases, taking always the top rated state from the beam, finding a local optima (most probably, as hill climbing is a local search algorithm).

An example of a history during hill climbing in adviser.