資源描述:
《基于示例演化的Java學(xué)生程序錯誤自動修正》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、碩士學(xué)?論文基于示例演化的Java學(xué)生程序錯誤自動修正AUTOMATICREPAIROFJAVAPROGRAMERRORBASEDONEXAMPLEEVOLUTION許家?哈爾濱工業(yè)大學(xué)2018?6??內(nèi)?書分類號?TP311學(xué)校?碼?10213?際?書分類號?681密???開?學(xué)碩士學(xué)?論文基于示例演化的Java學(xué)生程序錯誤自動修正碩士研究生?許家?導(dǎo)師?王甜甜申請學(xué)位??學(xué)碩士學(xué)科??算機科學(xué)о?術(shù)所在單位??算機科學(xué)о?術(shù)學(xué)院答辯日期?2018?6?授予學(xué)位單位?哈爾濱?業(yè)大學(xué)ClassifiedIndex:TP311U.D.C:681Diss
2、ertationfortheMasterDegreeinEngineeringAUTOMATICREPAIROFJAVAPROGRAMERRORBASEDONEXAMPLEEVOLUTIONCandidate:XuJiahuanSupervisor:AssociateProf.WangTiantianAcademicDegreeAppliedfor:MasterofEngineeringSpeciality:ComputerScienceAffiliation:SchoolofComputerScienceDateofDefence:June,201
3、8Degree-Conferring-Institution:HarbinInstituteofTechnology摘要摘要本文研ウ了程序自動修↓方法,并??了一個學(xué)生程序自動修↓系統(tǒng),針對高校Java語言課程的編程??,?學(xué)生提交的?缺陷的程序?碼提供修↓方案?由于學(xué)生程序??程序規(guī)模小?含?豐富的模板程序?程序中包含多個缺陷等??,教師人?檢查大量學(xué)生程序的錯誤會耗費大量的時間和精力?目前??的程序自動修↓方法多?針對?業(yè)程序,ф能夠修↓的錯誤??局限性,?決于??算子的??,????修↓方法大多只能修↓程序中的單個錯誤,對于包含多個缺陷的程序則
4、無法解決,ф程序修↓的準(zhǔn)確性一般依賴于錯誤定?的準(zhǔn)確性,故修↓的時間效率較?,?用空間較大?本文針對學(xué)生程序的?點研ウ?于示例演化的學(xué)生程序修↓方法,并完?系統(tǒng)??,??并實?了?于示例演化的Java學(xué)生程序自動修↓系統(tǒng),學(xué)生在本系統(tǒng)к??編程題,??對學(xué)生提交的程序?碼進行自動修復(fù),?學(xué)生用戶提供修↓方案作?參考,減少教師的?作量?針對к述問題,本文完?了如л?作?首先,使用遺傳編程算法中的??進化結(jié)構(gòu)作?系統(tǒng)的整體框架,?程序的??方法???體的?儲?種群的生?和??度的?算幾個方面改進傳統(tǒng)的遺傳編程方法,н斷迭?選擇淘汰н?合的??體,?中選擇
5、修↓程序???,采用?示例程序的語法樹中挖掘о學(xué)生程序的語法樹相似結(jié)構(gòu)的子樹并о之替換的方法進行程序的??,實?程序的自動修↓??了提高程序自動修↓的準(zhǔn)確性,采用語法樹子樹挖掘?配的方法,選擇о學(xué)生程序的語法結(jié)構(gòu)最??似的教師模板程序作?標(biāo)準(zhǔn)示例程序,?相似度最大的標(biāo)準(zhǔn)示例程序中進行語法樹子樹?配挖掘和替換??了提高自動修↓的時間效率,本文采用了語法樹結(jié)構(gòu)相似度算法,?配學(xué)生程序的語法樹和示例程序的語法樹的語法結(jié)構(gòu)相似性,靜態(tài)的定?兩棵語法樹的在相?結(jié)構(gòu)л的相似但н完全相?的節(jié)點,提高?類節(jié)點被遺傳算法選擇的概率,避免盲目選擇錯誤?置?最?,本文使用
6、真實求職編程網(wǎng)站к的題目о學(xué)生提交的程序作?測試集,通過實驗分析驗證了程序自動修↓系統(tǒng)??準(zhǔn)確修復(fù)?在多個缺陷的學(xué)生程序并給出修↓方案?關(guān)鍵詞?自動修↓?示例演化?遺傳編程?錯誤定???量映射?語法樹-I-AbstractAbstractThethesisdesignsanautomaticcorrectionsystemforstudentprogramwhichaimsforprogrammingpracticeonprogrammingcourseintheuniversity.Itprovidesautomaticprogramcorrect
7、ionfordefectiveprogramsubmittedbystudent.Inhere,asexampleforstudentprogramfeatureswithsmallprogramsizeastemplateprogrammaycontainsmultipledefect.Ittakesalotoftimeandeffortforteachertomanuallycheckwhichmoredifficultforlargenumberofstudentprogram.Currently,existingautomaticcorrec
8、tionprogramaremostlyaimedatindustrialprogramandhaslimi