Preprint Open Access

Automatic Classification of Error Types in Solutions to Programming Assignments at Online Learning Platform

Artyom Lobanov; Timofey Bryksin; Alexey Shpilman

DataCite XML Export

<?xml version='1.0' encoding='utf-8'?>
<resource xmlns:xsi="" xmlns="" xsi:schemaLocation="">
  <identifier identifierType="DOI">10.5281/zenodo.2631872</identifier>
      <creatorName>Artyom Lobanov</creatorName>
      <affiliation>JetBrains Research, Higher School of Economics</affiliation>
      <creatorName>Timofey Bryksin</creatorName>
      <nameIdentifier nameIdentifierScheme="ORCID" schemeURI="">0000-0001-9022-3563</nameIdentifier>
      <affiliation>JetBrains Research, Saint Petersburg State University</affiliation>
      <creatorName>Alexey Shpilman</creatorName>
      <affiliation>JetBrains Research, Higher School of Economics</affiliation>
    <title>Automatic Classification of Error Types in Solutions to Programming Assignments at Online Learning Platform</title>
    <subject>MOOC, automatic evaluation, clustering, classification, program- ming</subject>
    <date dateType="Issued">2019-04-07</date>
  <resourceType resourceTypeGeneral="Text">Preprint</resourceType>
    <alternateIdentifier alternateIdentifierType="url"></alternateIdentifier>
    <relatedIdentifier relatedIdentifierType="DOI" relationType="IsVersionOf">10.5281/zenodo.2631871</relatedIdentifier>
    <rights rightsURI="">Creative Commons Attribution 4.0 International</rights>
    <rights rightsURI="info:eu-repo/semantics/openAccess">Open Access</rights>
    <description descriptionType="Abstract">&lt;p&gt;&amp;nbsp;Online programming courses are becoming more and more popular, but they still have significant drawbacks when compared to the&lt;br&gt;
traditional education system, e.g., the lack of feedback. In this study, we apply machine learning methods to improve the feedback of automated verification systems for programming assignments. We propose an approach that provides an insight on how to fix the code for a given incorrect submission. To achieve this, we detect frequent error types by clustering previously submitted incorrect solutions, label these clusters and use this labeled dataset to identify the type of an error in a new submission. We examine and compare several approaches to the detection of frequent error types and to the assignment of clusters to new submissions. The proposed method is evaluated on a dataset provided by a popular online learning platform.&lt;/p&gt;</description>
All versions This version
Views 158158
Downloads 131131
Data volume 22.8 MB22.8 MB
Unique views 149149
Unique downloads 122122


Cite as