One embodiment of the invention is a method of identifying a set of paths
between a set of source routable elements of a net and a set of target
routable elements of the net. The set of paths has to have a minimum
acceptable number of paths. The method specifies a first total cost. It
then performs a first depth-first search to identify the set of paths,
where each path has a cost that does not exceed the first total cost, and
each path includes a set of expansions from the set of routable-element
sources to the set of routable-element targets. If the search cannot find
the acceptable number of paths, it increments the total cost and performs
a second depth-first search to identify the set of paths, where each path
has a cost that does not exceed the incremented total cost.