  The prevalence of e-learning systems and on-line courses has made educational
material widely accessible to students of varying abilities and backgrounds.
There is thus a growing need to accommodate for individual differences in
e-learning systems. This paper presents an algorithm called EduRank for
personalizing educational content to students that combines a collaborative
filtering algorithm with voting methods. EduRank constructs a difficulty
ranking for each student by aggregating the rankings of similar students using
different aspects of their performance on common questions. These aspects
include grades, number of retries, and time spent solving questions. It infers
a difficulty ranking directly over the questions for each student, rather than
ordering them according to the student's predicted score. The EduRank algorithm
was tested on two data sets containing thousands of students and a million
records. It was able to outperform the state-of-the-art ranking approaches as
well as a domain expert. EduRank was used by students in a classroom activity,
where a prior model was incorporated to predict the difficulty rankings of
students with no prior history in the system. It was shown to lead students to
solve more difficult questions than an ordering by a domain expert, without
reducing their performance.
