1. A method for creating a dynamic course, the method comprising: determining a budget of a learner; determining a target element; determining a set of elements related to the target element; and adding the target element and one or more of the related elements together to create the dynamic course based on the budget.