The IOTA whitepaper describes the tip selection algorithm in the Section 4.1. The idea there is to select
N starting points in the tangle randomly (subject to some conditions) and then to do a random walk from each of those starting points.
However, the IRI code seems to be doing something else. Only two starting points are used. There is a
numWalks parameter, but the function of this parameter is to repeat the random walk
numWalks times for each of the two starting points. For each starting point, the tips then appear to be ranked by the number of times they were reached from that starting point, and the tip reached the most times returned as the result.
This code was introduced in this commit: https://github.com/iotaledger/iri/commit/17e45ec213678bc9e690307a66a2c0d0844e0ff9
I wonder what is the idea behind this algorithm and if it has anything to do with
N in the whitepaper?