Program representation for automatic hint generation for a data-driven novice programming tutor
Intelligent Tutoring Systems: 11th International Conference, ITS 2012, Chania …, 2012•Springer
We describe a new technique to represent, classify, and use programs written by novices as
a base for automatic hint generation for programming tutors. The proposed linkage graph
representation is used to record and reuse student work as a domain model, and we use an
overlay comparison to compare in-progress work with complete solutions in a twist on the
classic approach to hint generation. Hint annotation is a time consuming component of
developing intelligent tutoring systems. Our approach uses educational data mining and …
a base for automatic hint generation for programming tutors. The proposed linkage graph
representation is used to record and reuse student work as a domain model, and we use an
overlay comparison to compare in-progress work with complete solutions in a twist on the
classic approach to hint generation. Hint annotation is a time consuming component of
developing intelligent tutoring systems. Our approach uses educational data mining and …
Abstract
We describe a new technique to represent, classify, and use programs written by novices as a base for automatic hint generation for programming tutors. The proposed linkage graph representation is used to record and reuse student work as a domain model, and we use an overlay comparison to compare in-progress work with complete solutions in a twist on the classic approach to hint generation. Hint annotation is a time consuming component of developing intelligent tutoring systems. Our approach uses educational data mining and machine learning techniques to automate the creation of a domain model and hints from student problem-solving data. We evaluate the approach with a sample of partial and complete, novice programs and show that our algorithms can be used to generate hints over 80 percent of the time. This promising rate shows that the approach has potential to be a source for automatically generated hints for novice programmers.
Springer