Private tutoring can be an effective but expensive way to improve educational outcomes for students. In recent years, a variety of computational techniques have been proposed to design so-called Intelligent Tutoring Systems (ITS) that can enhance a student’s learning environment. An ITS interacts with a student to determine the kinds of challenges being faced, and provides customized content and feedback on practice problems.
As part of an ITS, it is often useful to be able to automatically generate problems of varying degrees of difficulty. Automatic Problem Generation entails constructing template-based problems and heuristics to measure hardness. Problems can then be created whenever the ITS demands, and can be personalized to the student’s perceived skill-levels.