Font Size: a A A

The Research And Application Of Automatic Scoring System Based On Abstract Syntax Tree

Posted on:2012-04-05Degree:MasterType:Thesis
Country:ChinaCandidate:Y Y ChenFull Text:PDF
GTID:2178330335455423Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
In recent years, with the promotion and popularity of the online examination system, the applied research about automatic scoring technology has rapidly developed and become mature. However, at present, most of the online examination systems, which are unable to give a good score on the subjective items, confines the types of examination questions in the objective items, while overlooking the test of subjective items and programming question in particular, which can truly reflect students' programming skills. Therefore, the research about automatic scoring on programming question has become the research hotspot in the field of automatic scoring, and it has theoretical and practical significance.Currently, in the majority of the study, researchers select the system dependence graph as the intermediate representation of the program, and translate the students' program and answer program into this intermediate form, and then to grade on this basis. However, the abstract syntax tree has higher storage efficiency than the system dependence graph, and it's easier to traverse and operate, and more suitable for the representation of expression, this paper uses the abstract syntax tree as the intermediate representation of the program. And this thesis puts forward a solution to automatic scoring programming question based on abstract syntax tree, by which we analysis the student's program on the basis of abstract syntax tree, and simulate the idea of artificial rating.Based on the abstract syntax tree, this method uses the standardized rules of expression and control structures, which has laid down in this thesis, standardize expressions and control structures in the procedure, to eliminate the diversity of the code and reduce the number of the answer template. At the same time, this paper applies the tree edit distance algorithm based on node weights to match the expression and control structure in the standardized abstract syntax trees of the student's program and the answer program and calculate the similarity between the student's program and the answer program. It uses the similarity between the two programs as an important basis for the students'final score. Furthermore, this paper detects the lexical error and syntax error of the student's procedure by the lexical analysis and syntax analysis in the compiler principle, which is made as one of the bases for the score of the student's program.Finally, the scoring method has been verified by the experiment. The correctness and feasibility of the method is verified in this experiment, which uses this method in the programming question module of the C language examination system.
Keywords/Search Tags:Automatic Scoring, Abstract Syntax Tree, Expression Standardization, Control Structure Standardization, Tree Edit Distance
PDF Full Text Request
Related items