1. A computer-implemented method for generating a sequence of learning objects, the method comprising: selecting a learning object from a plurality of learning objects to determine whether each predetermined learning prerequisite corresponding to the learning object is satisfied; if each predetermined learning prerequisite is satisfied, adding the selected learning object to a first sequence of learning objects; repeating said selecting and adding until each of a plurality of predetermined learning objectives are satisfied by the first sequence; computing a score for the first sequence based upon at least one among user relevancy and query relevancy of each learning object in the first sequence; generating a second sequence of learning objects and computing a score for the second sequence based upon computed measures of at least one among user relevancy and query relevancy of each learning object in the second sequence; and providing the second sequence to a user if the score of the second sequence exceeds the score of the first sequence, and otherwise presenting the first sequence to the user.