Matthew West
Curving Exam Scores
We scale an old exam score S0 to a new exam score S1 by:
S1 = 100 - (100 - S0) × (100 - M1) / (100 - M0), if S0 > M0
S1 = Z1 + S0 × (M1 - Z1) / M0, if S0 ≤ M0
Here M0 is the median of the old score distribution, which should be computed from the set of all old scores. We assume scores are in the range 0 to 100.
The two parameters that need to be chosen are:
- M1 = the new median score (80 is a good choice for this)
- Z1 = the new score for an old score of zero (a good default for this is Z1 = M1 - M0)
As an example, if the old median was M0 = 60 and we choose a new median of M1 = 80 and a new base of Z1 = 20 (from 80 - 60), then the curving function is:
The advantages of this curving function are:
- It's simple to implement.
- Assuming that the new median is higher than the old median, it's guaranteed that every student's score increases, but cannot go over 100, and the ordering between scores is strictly maintained.
- A perfect score of 100 maps to 100.
- Using the median as the specification point makes this function insensitive to outliers. We generally want M1 ≈ 80, putting half the class in the A/B range (more when high-scoring items like homeworks are included).
- If we don't want to choose the second free parameter Z1 then choosing the default of Z1 = M1 - M0 results in all below-median students getting the same score boost, which is a reasonable default.