{"title":"Automatic Generation of Fill-in-the-Blank Programming Problems","authors":"Kenta Terada, Y. Watanobe","doi":"10.1109/MCSoC.2019.00034","DOIUrl":null,"url":null,"abstract":"In solving programming problems, it is difficult for beginners to create program code from scratch. One way to navigate this difficulty is to provide a programming problem to them which takes a fill-in-the-blank format. In this work, we propose a method to automatically generate programming problems that has two key constituents, selection of exemplary source code and selection of places to be blanks. In terms of selecting exemplary source code, k-means clustering with silhouette analysis in the Online Judge System (OJ) is proposed. Regarding the selection of places to be blanks, a model based on a bidirectional Long Short-Term Memory Network (Bi-LSTM) with a sequential Conditional Random Field (CRF) is proposed. We discuss evaluation of the proposed approach in the context of how fill-in-the-blank programming problems are generated.","PeriodicalId":104240,"journal":{"name":"2019 IEEE 13th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC)","volume":"202 ","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2019-10-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2019 IEEE 13th International Symposium on Embedded Multicore/Many-core Systems-on-Chip (MCSoC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/MCSoC.2019.00034","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10
Abstract
In solving programming problems, it is difficult for beginners to create program code from scratch. One way to navigate this difficulty is to provide a programming problem to them which takes a fill-in-the-blank format. In this work, we propose a method to automatically generate programming problems that has two key constituents, selection of exemplary source code and selection of places to be blanks. In terms of selecting exemplary source code, k-means clustering with silhouette analysis in the Online Judge System (OJ) is proposed. Regarding the selection of places to be blanks, a model based on a bidirectional Long Short-Term Memory Network (Bi-LSTM) with a sequential Conditional Random Field (CRF) is proposed. We discuss evaluation of the proposed approach in the context of how fill-in-the-blank programming problems are generated.