Varun Shenoy, Ullas Aparanji, K. Sripradha, Viraj Kumar
{"title":"Generating DFA Construction Problems Automatically","authors":"Varun Shenoy, Ullas Aparanji, K. Sripradha, Viraj Kumar","doi":"10.1109/LaTiCE.2016.8","DOIUrl":null,"url":null,"abstract":"Given a particular problem in some domain, an instructor may wish to generate new problems that are \"similar\" for several reasons: (a) to create personalized workflows for each student (i.e., by offering a harder or easier problem depending on how effectively the student has solved a given problem), (b) to create unique questions for each student on assignments and examinations (in order to minimize the risk of plagiarism), and (c) to avoid legal issues when the original problem is copyrighted material. Manual problem generation is infeasible, particularly in cases (a) and (b) when the number of students is large (e.g., in massive open online courses). Our contributions in this paper are: (1) a method for automatically generating problems in a core area of the undergraduate Computer Science curriculum: the construction of deterministic finite automata (DFA), (2) a measure of \"difficulty\" for such problems that instructors can easily tune to match the skills of students at their particular institutions, and (3) a tool that takes a given DFA construction problem P as input and generates an arbitrary number of distinct problems P1, P2, ⋯ in decreasing order of similarity to P (in terms of difficulty). The tool's output can be restricted to problems that are easier than, harder than, or about as hard as P. We also describe experimental evidence to validate the quality of problems generated by our tool.","PeriodicalId":281941,"journal":{"name":"2016 International Conference on Learning and Teaching in Computing and Engineering (LaTICE)","volume":"51 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2016-03-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2016 International Conference on Learning and Teaching in Computing and Engineering (LaTICE)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/LaTiCE.2016.8","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5
Abstract
Given a particular problem in some domain, an instructor may wish to generate new problems that are "similar" for several reasons: (a) to create personalized workflows for each student (i.e., by offering a harder or easier problem depending on how effectively the student has solved a given problem), (b) to create unique questions for each student on assignments and examinations (in order to minimize the risk of plagiarism), and (c) to avoid legal issues when the original problem is copyrighted material. Manual problem generation is infeasible, particularly in cases (a) and (b) when the number of students is large (e.g., in massive open online courses). Our contributions in this paper are: (1) a method for automatically generating problems in a core area of the undergraduate Computer Science curriculum: the construction of deterministic finite automata (DFA), (2) a measure of "difficulty" for such problems that instructors can easily tune to match the skills of students at their particular institutions, and (3) a tool that takes a given DFA construction problem P as input and generates an arbitrary number of distinct problems P1, P2, ⋯ in decreasing order of similarity to P (in terms of difficulty). The tool's output can be restricted to problems that are easier than, harder than, or about as hard as P. We also describe experimental evidence to validate the quality of problems generated by our tool.