David W. Myers - 2001-03-12

The internal ranking used by this program.

The ranking used internally by this program is as follows:

best player   (round 1 )           N + 1
.
in-between player (r 1 )           N + a fraction
.
.
player     (beginning of round 2)  N
next player   (round 2 )           N - 1 + a fraction
.
.
.
worst player  (round N)            1.0 + a fraction

The fraction = relative position in the round with respect to the first
               player in the round.

In a 5 round draft, the highest ranked player would have a rating of
6.0, the first player ranked into the second round would have a ranking
of 5.0, and the very worst player would have a ranking that is a
ittle greater than 1.0. A person in the middle of the first round
would be ranked 5.5. A person in the first quarter of the second
round would have a rating of 4.75.

A practical example is given here. The first round has 4 players,
the second has 3 players, and the third round has 3 players.

Player1   1st player rnd 1  4.0
Player2   2nd player rnd 1  3.75
Player3   3rd player rnd 1  3.50
Player4   4th player rnd 1  3.25
Player5   1st player rnd 2  3.00
Player6   2nd player rnd 2  2.67
Player7   3rd player rnd 2  2.33
Player8   1st player rnd 3  2.00
Player9   2nd player rnd 3  1.67
Player10  3rd player rnd 3  1.33

So, where N is the number of rounds in the draft, and Y is the number
of players to be drafted in this round, the xth player to be drafted
will have the ranking:

Player(x) = (N-n+1)+(1+Y-y)/Y

where n is the round the xth player is drafted in and y is the rank
within that round in which the player is drafted.

This ranking scheme has a very nice feature:

* The difference between players ranked one round apart is 1.0

This ranking scheme has an 'almost' nice feature:

* the difference between the first and last player drafted is just
  about equal to the number of rounds in the draft.

We are eventually going to allow you to load your own ranking systems,
as we internally use the ranking as described here. Your rankings will
not be used directly to implement the draft, but may be used to do
value calculations after the fact.