摘要
Faced with a large number of exercises on the programming OJ (Online Judge) platform, students are usually mindless when choosing exercises, which is not conducive to helping students quickly improve their programming ability. Existing exercise recommendation methods often ignore the relationship between cognitive psychology and students' exercise answering behavior, pay little attention to the influence of factors that lead to differences in students' information cognitive processes on exercise answering. This paper proposes a personalized OJ exercise recommendation method with memory and cognition merging based on cognitive psychology, the method combines the related works of working memory, long term memory, external information and discontinuous cognitive development in cognitive psychology, and considers the influence of these four factors on students' exercise answering behavior in following ways: Firstly, taking four elements in OJ exercise that challenge students' working memory as part of exercise features to assist the recommendation method to estimate difficulty of exercise, including the number of words in exercise description, the number of words in input format, the number of words in output format and the type of language. Then, using four elements (the time interval between students' learning of same knowledge points, the number of repeated learning of same knowledge points, the time interval between sequential learning and the number of repeated learning) to model forgetting and learning behaviors of students' long term memory and fitting the changes of students' knowledge states caused by these two behaviors to help the recommendation method estimate students' mastery level of knowledge points and programming language more accurately. Thirdly, adding OJ exercises to the programming knowledge graph constructed in this paper and establishing relationships between exercises and knowledge points examined by the exercises. Applying knowledge graph embedding method to encode exercises into vectors incorporating external correlation information between knowledge points as the knowledge point representation of exercises, in order that the recommendation method is able to deal with complex and diverse relationships between knowledge points. Finally, proposing two strategies to guide the method to handle the situation of discontinuous cognitive development (discontinuous cognitive development refers to the sudden great change of students' knowledge states at some time) and improve the accuracy of recommendation results. The first strategy applies reinforcement learning technology and utilizes the similarity between sequence of exercises answered by students in the future and sequence generated by recommendation method as reward to support recommendation method to generate the sequence which is more consistent with sequence of exercises answered by students in the future, so that sudden changes of students' knowledge states in the future can be well considered when recommending the next exercise. The second strategy modifies the high utility itemsets mining algorithm to mine implicit postorder relationships between knowledge points through students' behaviors and assist recommendation method to predict the knowledge points that students may suddenly master or pay attention to in the future. This paper conduct extensive experiments on datasets of two well-known OJ platforms named Luogu and CodeForces, experimental results show that our approach can achieve higher performance than the state-of-the-art methods.
- 单位