摘要:本文主要討論如何利用機器自動批改微積分作業(yè)。使用若干個特殊符號來拆分以LaTeX語言格式編寫的微積分計算題答案,并通過手機軟件以拼湊的方式完成做題過程。同時,將利用拆分時形成的信息和標(biāo)準(zhǔn)答案中各項之間的依賴關(guān)系數(shù)據(jù)來判斷答案的正確性,從而實現(xiàn)自動批改的目的。
關(guān)鍵詞:數(shù)學(xué)公式;拆分LaTeX公式;拼湊答案;自動批改
ASolutionforAutomatedGradingofCalculusComputationalProblems
IslamTursunAblimitZikiria
SchoolofMathematicsandScience,XinjiangAgriculturalUniversityXinjiangUrumqi830052
Abstract:Thispaperdiscusseshowtousemachinestoautomaticallycorrectcalculushomework.AnumberofspecialsymbolsareusedtosplittheanswerstocalculuscalculationquestionswritteninLaTeXlanguageformat,andtheprocessofdoingthequestionsiscompletedinapatchworkmannerthroughcellphonesoftware.Atthesametime,wewillusetheinformationformedduringthesplittingandthedependencydatabetweentheitemsinthestandardanswertodeterminethecorrectnessoftheanswer,thusrealizingthepurposeofautomaticcorrection.
Keywords:mathformulas;splitLaTeXformulas;piecingtogetheranswers;automatedcorrections
1概述
目前,隨著計算技術(shù)的發(fā)展,出現(xiàn)了各種自動批改作業(yè)的軟件。這些軟件能夠自動批改各類課程的客觀題和一部分主觀題。然而,由于大部分微積分課程的計算題和填空題答案涉及到數(shù)學(xué)公式,用機器批改微積分課程的填空題和計算題帶來很大的困難。
目前大學(xué)教學(xué)以合班形式進(jìn)行,由于學(xué)生人數(shù)過多,導(dǎo)致課堂師生互動、作業(yè)布置與批改等方面存在一定的挑戰(zhàn)。主要有以下幾點:一是在作業(yè)方面,由于學(xué)生人數(shù)眾多,很難有效避免答案被抄襲。一些同學(xué)因為懶惰或不愿意寫作業(yè),導(dǎo)致作業(yè)完成率較低。同時,老師需要花費大量時間批改作業(yè)。
當(dāng)前大學(xué)教學(xué)大多以合班形式開展,因?qū)W生人數(shù)太多,課堂師生互動、作業(yè)布置與批改等產(chǎn)生一定的挑戰(zhàn)。主要有以下幾點:一是師生互動方面,因時間緊任務(wù)重,老師不能掌握每一位同學(xué)的隨堂練習(xí)的正確性,二是學(xué)生作業(yè)方面,解題過程較多雷同,有抄襲現(xiàn)象;三是批閱作業(yè)方面,涉及較多人數(shù),老師須花費大量的時間批改作業(yè),這些因素都會直接影響教學(xué)效率和教學(xué)效果。為了在教學(xué)中避免上述問題,于是開發(fā)此自動批改作業(yè)系統(tǒng)幫助教師達(dá)到事半功倍的效果,通過此系統(tǒng)可以給學(xué)生隨機發(fā)布作業(yè)內(nèi)容,或給不同的同學(xué)布置不同題型的作業(yè),從而在某種程度上可以減少作業(yè)抄襲的現(xiàn)象。另外,在提高學(xué)生課堂互動方面、豐富作業(yè)題型方面,降低教師的工作量的同時,教師還可根據(jù)作業(yè)完成情況和平時互動的數(shù)據(jù)了解學(xué)生對教學(xué)重點的掌握情況。
為了促進(jìn)這方面的研究,本文研究和討論用機器如何自動批改高等數(shù)學(xué)作業(yè)和隨堂練習(xí)的問題。
2實現(xiàn)自動批改微積分計算題的解決方案
2.1所要解決的技術(shù)問題
用LaTeX語言格式輸入微積分課程的計算題以及幾種答案,對數(shù)學(xué)題答案按照特定方式進(jìn)行處理并放置網(wǎng)站。編寫一個Android軟件,通過互聯(lián)網(wǎng)根據(jù)學(xué)生的學(xué)號隨機地下載到手機里。學(xué)生用自己的手機軟件完成本次作業(yè)并提交。Android軟件根據(jù)答題的情況自動打分,然后通過網(wǎng)絡(luò)將分?jǐn)?shù)提交給網(wǎng)絡(luò)服務(wù)器,網(wǎng)絡(luò)服務(wù)器根據(jù)學(xué)號登記該生的成績。實現(xiàn)自動批改微積分課程的作業(yè)(除了證明題)。
在電腦或者手機寫數(shù)學(xué)題時專門用一些工具軟件來實現(xiàn),由于顯示數(shù)學(xué)公式的符號比較特殊而且數(shù)學(xué)題的答案具有多樣性,判斷數(shù)學(xué)題的答案時往往遇到困難。目前,各種文字識別軟件不能準(zhǔn)確地識別手寫公式,況且,學(xué)生們不太熟悉用LaTeX語言寫數(shù)學(xué)公式,為了克服這種困境,本文提出一種方法,按照此方法,用戶軟件將每一頁作業(yè)分兩部分:第一部分是題目組成,第二部分由若干個被拆開的答案碎片和干擾題組成,這些答案的碎片和干擾題作為被點擊選項提供給學(xué)生們,學(xué)生們按照某種順序點擊這些選項,可以拼湊出想要的答案。用軟件判斷答案的正確性,從而達(dá)到自動批改的目的。目前,能夠判斷比較簡單的極限、導(dǎo)數(shù)、不定積分、定積分等數(shù)學(xué)題答案的正確性。
2.2實現(xiàn)自動批改的具體方案
本文提出的方法第一次打破了多年機器判斷不了數(shù)學(xué)題答案正確性的僵局,除了證明題以外,在指定的范圍內(nèi),完全能夠判斷填空題和計算題。通過一些算法降低了運算量,有效擺脫了答案的多樣性造成的困擾。
2.2.1作業(yè)的準(zhǔn)備工作
拆答案。用LaTeX語言格式輸入某一道數(shù)學(xué)題及其所有可能答案,輸入過程中,需要拆開的部分插入“,,”、“?”或“?”等符號。規(guī)定:“?”符號前后因子或者字符不能交換位置,而“?”符號前后的因子或者字符可以交換位置。
用計算機程序代碼拆開以LaTeX語言格式編寫的數(shù)學(xué)題答案,這個答案是一個字符數(shù)組,拆開答案時采用多層次拆開和定位方式。
每一道作業(yè)題的題目和答案用“=.”號來拆分,數(shù)學(xué)題的計算過程由若干個步驟組成,各個步驟用“=”號來拆分,每一個步驟由若干項組成,每一個步驟里的各項用“,,”來拆分,每一頁作業(yè)包含干擾題,作業(yè)題和干擾題用“,,,”來拆分。比如:
第一步:用“=.”號拆分題目和答案;
第二步:用“=”號拆分各個步驟;
第三步:用“,,”號拆分同一個步驟里的各項;
第四步:用“;;”號拆分同一道題不同的答案;
第五步:用";;;"號拆分?jǐn)?shù)學(xué)題答案和干擾項,為了過于簡單適當(dāng)?shù)靥砑痈蓴_項來考驗學(xué)生。
按照上述提案,考慮到手機屏幕大小,每一頁作業(yè)由3到5道(或更多)數(shù)學(xué)題組成,每一道數(shù)學(xué)題的答案可能2至3種,每一種答案由若干個步驟組成,每一個步驟由若干項組成,每一項處于不同的位置。要存放每一個細(xì)節(jié),存放這些信息需要建立四維字符數(shù)組,第一維數(shù)組中,存放某一頁的題目數(shù)。第二維數(shù)組中的數(shù)據(jù)表示某一道題有多少種做法。第三維數(shù)組中,存放步驟數(shù),第四維數(shù)組中,存放某一步驟包含的項數(shù)。
例如:String[][][][][]item=newString[題目數(shù)][做法數(shù)][步驟數(shù)][項數(shù)];
第六步:
按照上述方式拆答案以后,整理和去掉相同的字符,將字符數(shù)據(jù)存放到叫item的四維字符數(shù)組。這個四維字符數(shù)組的每一個成員由被拆開數(shù)學(xué)公式、符號以及它所在的位置信息組成。
根據(jù)本文采取這種方法:將手機屏幕分上下兩部分,在屏幕上方,顯示幾個數(shù)學(xué)題目,在屏幕下方,顯示若干個選項。學(xué)生做數(shù)學(xué)題時,按照自己想法,點擊屏幕下方的選項拼湊出答案。只按照“=”、“,,”號拆開答案時,屏幕下方出現(xiàn)的選項與標(biāo)準(zhǔn)答案非常相似,所以需要進(jìn)一步拆開答案。
被拆開的某一項由若干個因子、極限號、積分號等組成。拆開時,有些項按順序拆開,比如:極限號、積分號、求和符號等必須放在第一位。這時,要考慮這些符號的順序,輸入數(shù)學(xué)公式的時候插入“?”號。拆開有些項與順序無關(guān),輸入時插入“?”號。
第七步:
用“?”“?”號進(jìn)一步拆開在item里存放的字符串,拆開的同時記錄拆開以前每一個字符串的相對位置,整理完這些信息,重新存放在item字符串里。
做題時,需要點擊屏幕下方的選項,經(jīng)過計算根據(jù)這些項所帶的位置信息,判斷被點擊的選項與前面的點擊的選項可不可以拼湊成原始的字符串。
有些數(shù)學(xué)題答案的前后兩個步驟的有些項保持不變,而且有的數(shù)學(xué)題最后一個步驟的答案由若干項組成。而且,數(shù)學(xué)題答案的步驟數(shù)不是固定,有的只寫答案,有的寫兩三個步驟甚至好幾十個步驟??紤]到這些因素建立一個數(shù)組,按照這個數(shù)組的數(shù)據(jù)來判斷被點擊的選項是不是包含答案所需要的信息。
第七步:寫完每一頁作業(yè)的標(biāo)準(zhǔn)答案以后,為了減少運算量和判斷各項之間的依賴關(guān)系,利用一個輔助程序顯示每一道數(shù)學(xué)題的答案,以手動方式連接答案里前后兩個步驟相互依賴的各項。連接過程中,輔助程序建立一個叫“NOS”的類。這個類有兩個成員,一個是NOD類型的數(shù)組,另一個成員是字符串類型。NOD類也有兩個成員,一個是字符串,另一個是NOD類型數(shù)組。
連接答案里相互依賴的各項時,輔助程序自動形成一種關(guān)聯(lián)數(shù)據(jù),這些數(shù)據(jù)表示后一個步驟的某一項是從前一個步驟的某一項推導(dǎo)而來的。
2.2.2作業(yè)的準(zhǔn)備工作存放作業(yè)數(shù)據(jù)
經(jīng)過上述過程將準(zhǔn)備好的作業(yè)存放在網(wǎng)絡(luò)服務(wù)器指定的位置,學(xué)生點擊“獲取作業(yè)”時,服務(wù)器根據(jù)學(xué)號向指定的手機隨機地發(fā)送作業(yè),從而達(dá)到給不同的學(xué)生布置不同作業(yè)的目的。
2.3軟件執(zhí)行過程
(1)Android系統(tǒng)軟件下載作業(yè)內(nèi)容,并保存到AndroidSQLite數(shù)據(jù)庫里。數(shù)據(jù)庫,數(shù)據(jù)庫各字段分別命名為:ID,Student_ID,HomeIndex,HomeItem,HomeText,HomeAnswer,Time,Type.
數(shù)據(jù)庫中:ID是數(shù)據(jù)庫記錄索引器;Student_ID表示學(xué)號;HomeIndex表示作業(yè)的頁碼;HomeItem表示作業(yè)的題號;HomeText表示作業(yè)內(nèi)容;HomeAnswer表示作業(yè)的答案;Time表示作業(yè)布置時間;Type表示作業(yè)、課堂練習(xí)、單元測試的標(biāo)志。
Android軟件根據(jù)數(shù)據(jù)庫內(nèi)容,在軟件的主頁面上顯示若干條信息。每條信息占一行,每一行由作業(yè)布置的時間和下載作業(yè)的時間組成。
(2)在主頁面上,當(dāng)學(xué)生點擊某一行,就顯示對應(yīng)的作業(yè)內(nèi)容,每一頁作業(yè)包含3至5道(或更多)數(shù)學(xué)題。這時,作業(yè)內(nèi)容完全按照上面所講方法重新拆開一次,分成兩部分,作業(yè)題目和答案項。作業(yè)頁面由上下兩部分組成,上面部分顯示題目,下面部分顯示若干個項,包含等號“=”“+”“-”和干擾項。
顯示作業(yè)之前,軟件根據(jù)當(dāng)前頁所包含的題目數(shù),建立一個二維整型數(shù)組,該數(shù)組存儲題號和選項號。做題過程中,軟件將學(xué)生每次點擊所對應(yīng)的數(shù)據(jù)保存到數(shù)據(jù)庫的HomeAnswer字段里。
(3)當(dāng)學(xué)生完成作業(yè)點擊“提交作業(yè)”時,Android軟件打開數(shù)據(jù)庫,從HomeAnswer中提取答案。接下來,軟件調(diào)用若干個函數(shù),這時利用item數(shù)組所包含的定位數(shù)據(jù),判斷被學(xué)生拼湊出來的選項是否合理,也就是被拆開的答案與被點擊的各項對應(yīng)的位置信息是否匹配,這是判斷的第一關(guān)。如果被學(xué)生點擊的各選項能匹配,則程序執(zhí)行整理數(shù)據(jù),進(jìn)入下一個階段。
軟件建立三維NOD類型數(shù)組,提取HomeText里存放的關(guān)聯(lián)數(shù)據(jù),根據(jù)這些數(shù)據(jù)構(gòu)造NOD類成員;軟件按照整理好的答案和NOD數(shù)組與標(biāo)準(zhǔn)答案進(jìn)行比較,這個時候主要檢查每一步驟是否包含應(yīng)有的項和不應(yīng)該出現(xiàn)的項,步驟數(shù)是否達(dá)到預(yù)定的要求。
(4)判斷題和填空題一般只有一個步驟,只寫答案就給滿分。做計算題時,需要若干個步驟,軟件清楚重復(fù)的步驟以后按照每一個步驟自動打分。
3用戶界面和具體做法
3.1用戶登錄方式
安裝此軟件以后,軟件會提示:輸入班級和學(xué)號,學(xué)生們輸入相關(guān)信息時,軟件連接服務(wù)器,下載該生的信息,并顯示如圖1的畫面。
打開菜單,點擊本次作業(yè),軟件下載作業(yè)內(nèi)容,屏幕下方顯示作業(yè)清單如圖2所示。點擊在圖2所示的畫面中作業(yè)清單里某一項,軟件顯示作業(yè)內(nèi)容如圖3所示。
3.2做作業(yè)和提交作業(yè)過程
學(xué)生們做作業(yè)時,連續(xù)點擊如圖3中下方的若干選項,可以拼湊出想要的答案。比如:做第三題時,先點擊題目3,這時,題目3變成藍(lán)色,然后,分別點擊如圖3所示的選項
可以拼湊出如圖5所示的答案。
在導(dǎo)數(shù)的應(yīng)用中,做一些數(shù)學(xué)題需要列表解釋。此時,用點擊選項里的特殊符號來實現(xiàn)畫表格。
解決T/494fywy5oHd8y5z8HDGQDmXm09je21WFdNbU+zQug=上述問題時,先點擊“列數(shù):”和“5”,這時形成如圖6的表格,
然后分別點擊如圖7所示的選項,
可以拼湊出如圖8所示的答案。
按照以上的方法一步一步拼湊所有作業(yè)題的答案,最后點擊“提交”按鈕,就這樣完成本次作業(yè)。做作業(yè)難度主要取決于出題時插入的分割符號的數(shù)量,分的越細(xì)難度就越大。用這種方法做作業(yè)與傳統(tǒng)的做法有很大差異,剛開始大部分同學(xué)適應(yīng)不了,經(jīng)過給學(xué)生們做幾次演示,一部分同學(xué)很樂意用此軟件完成作業(yè)。
4在教學(xué)過程中的效果
經(jīng)過一學(xué)期關(guān)于高等數(shù)學(xué)課程教學(xué)的實施,共布置7次作業(yè)。因考慮盡量避免抄襲現(xiàn)象,每次將設(shè)置5至6組或更多的作業(yè)內(nèi)容,每一組作業(yè)的內(nèi)容也比較多。因一道題可能有多種答案,則準(zhǔn)備一次作業(yè)大概需要十天的時間。題目的多樣性為同學(xué)們提出了更高的要求,雖作業(yè)的難度基本一致,但是不容易找到相同答案的作業(yè)題目,這有利于督促學(xué)生努力學(xué)習(xí)。實施了一個月后,大部分的同學(xué)課后都會積極找老師問一些難題,不僅提高了教學(xué)效果,還提升了學(xué)生們的學(xué)習(xí)積極性。
在高校的高等數(shù)學(xué)授課過程中,我們的軟件可以為每位同學(xué)布置不同內(nèi)容的作業(yè),初步實現(xiàn)了用機器自動批改作業(yè)的功能。這一創(chuàng)新成果在某種程度上可以減少作業(yè)被抄襲的行為,為教學(xué)效果和學(xué)生學(xué)習(xí)積極性的提高做出了巨大貢獻(xiàn)。
特別是在大合班授課的情況下,如果學(xué)生采用手寫方式完成答案,老師在短時間內(nèi)不可能檢查每一位學(xué)生的作業(yè),這導(dǎo)致老師無法實時掌握學(xué)生的學(xué)習(xí)情況。然而,通過我們的軟件,學(xué)生可以使用手機完成隨堂練習(xí),系統(tǒng)會自動批改練習(xí)題并將得分情況發(fā)送給老師,從而使老師能夠及時掌握學(xué)生們的學(xué)習(xí)情況。
這一創(chuàng)新不僅提高了教學(xué)效果,還激發(fā)了學(xué)生的學(xué)習(xí)積極性。通過個性化布置作業(yè)和自動批改的功能,我們能夠更好地滿足學(xué)生的學(xué)習(xí)需求,激發(fā)他們的學(xué)習(xí)興趣和動力。
總之,我們的軟件在高校的高等數(shù)學(xué)授課中具有重要意義。它不僅可以減少作業(yè)抄襲行為,還能提高教學(xué)效果和學(xué)生學(xué)習(xí)積極性。通過手機完成隨堂練習(xí)并自動批改,老師能夠及時了解學(xué)生的學(xué)習(xí)情況,從而更好地指導(dǎo)和輔導(dǎo)學(xué)生。這一創(chuàng)新將為高等數(shù)學(xué)教育帶來巨大的變革和進(jìn)步。
參考文獻(xiàn):
[1]何佳穎,熊峰,潘永平,等.基于程序題的自動批改系統(tǒng)設(shè)計[J].信息技術(shù)與信息化,2022(04):54-57.
[2]楊勤民,江志松.大學(xué)數(shù)學(xué)作業(yè)自動批改系統(tǒng)的設(shè)計與實踐[J].華東師范大學(xué)學(xué)報(自然科學(xué)版),2022(02):76-83.
作者簡介:伊斯拉木·吐爾遜(1969—),男,維吾爾族,新疆喀什人,本科,講師,研究方向:應(yīng)用數(shù)學(xué)。