自动批改微积分计算题的一种解决方法

2024-07-15 00:00:00伊斯拉木·吐尔逊阿布力米提·孜克力亚
科技风 2024年18期

摘要:本文主要讨论如何利用机器自动批改微积分作业。使用若干个特殊符号来拆分以LaTeX语言格式编写的微积分计算题答案,并通过手机软件以拼凑的方式完成做题过程。同时,将利用拆分时形成的信息和标准答案中各项之间的依赖关系数据来判断答案的正确性,从而实现自动批改的目的。

关键词:数学公式;拆分LaTeX公式;拼凑答案;自动批改

ASolutionforAutomatedGradingofCalculusComputationalProblems

IslamTursunAblimitZikiria

SchoolofMathematicsandScience,XinjiangAgriculturalUniversityXinjiangUrumqi830052

Abstract:Thispaperdiscusseshowtousemachinestoautomaticallycorrectcalculushomework.AnumberofspecialsymbolsareusedtosplittheanswerstocalculuscalculationquestionswritteninLaTeXlanguageformat,andtheprocessofdoingthequestionsiscompletedinapatchworkmannerthroughcellphonesoftware.Atthesametime,wewillusetheinformationformedduringthesplittingandthedependencydatabetweentheitemsinthestandardanswertodeterminethecorrectnessoftheanswer,thusrealizingthepurposeofautomaticcorrection.

Keywords:mathformulas;splitLaTeXformulas;piecingtogetheranswers;automatedcorrections

1概述

目前,随着计算技术的发展,出现了各种自动批改作业的软件。这些软件能够自动批改各类课程的客观题和一部分主观题。然而,由于大部分微积分课程的计算题和填空题答案涉及到数学公式,用机器批改微积分课程的填空题和计算题带来很大的困难。

目前大学教学以合班形式进行,由于学生人数过多,导致课堂师生互动、作业布置与批改等方面存在一定的挑战。主要有以下几点:一是在作业方面,由于学生人数众多,很难有效避免答案被抄袭。一些同学因为懒惰或不愿意写作业,导致作业完成率较低。同时,老师需要花费大量时间批改作业。

当前大学教学大多以合班形式开展,因学生人数太多,课堂师生互动、作业布置与批改等产生一定的挑战。主要有以下几点:一是师生互动方面,因时间紧任务重,老师不能掌握每一位同学的随堂练习的正确性,二是学生作业方面,解题过程较多雷同,有抄袭现象;三是批阅作业方面,涉及较多人数,老师须花费大量的时间批改作业,这些因素都会直接影响教学效率和教学效果。为了在教学中避免上述问题,于是开发此自动批改作业系统帮助教师达到事半功倍的效果,通过此系统可以给学生随机发布作业内容,或给不同的同学布置不同题型的作业,从而在某种程度上可以减少作业抄袭的现象。另外,在提高学生课堂互动方面、丰富作业题型方面,降低教师的工作量的同时,教师还可根据作业完成情况和平时互动的数据了解学生对教学重点的掌握情况。

为了促进这方面的研究,本文研究和讨论用机器如何自动批改高等数学作业和随堂练习的问题。

2实现自动批改微积分计算题的解决方案

2.1所要解决的技术问题

用LaTeX语言格式输入微积分课程的计算题以及几种答案,对数学题答案按照特定方式进行处理并放置网站。编写一个Android软件,通过互联网根据学生的学号随机地下载到手机里。学生用自己的手机软件完成本次作业并提交。Android软件根据答题的情况自动打分,然后通过网络将分数提交给网络服务器,网络服务器根据学号登记该生的成绩。实现自动批改微积分课程的作业(除了证明题)。

在电脑或者手机写数学题时专门用一些工具软件来实现,由于显示数学公式的符号比较特殊而且数学题的答案具有多样性,判断数学题的答案时往往遇到困难。目前,各种文字识别软件不能准确地识别手写公式,况且,学生们不太熟悉用LaTeX语言写数学公式,为了克服这种困境,本文提出一种方法,按照此方法,用户软件将每一页作业分两部分:第一部分是题目组成,第二部分由若干个被拆开的答案碎片和干扰题组成,这些答案的碎片和干扰题作为被点击选项提供给学生们,学生们按照某种顺序点击这些选项,可以拼凑出想要的答案。用软件判断答案的正确性,从而达到自动批改的目的。目前,能够判断比较简单的极限、导数、不定积分、定积分等数学题答案的正确性。

2.2实现自动批改的具体方案

本文提出的方法第一次打破了多年机器判断不了数学题答案正确性的僵局,除了证明题以外,在指定的范围内,完全能够判断填空题和计算题。通过一些算法降低了运算量,有效摆脱了答案的多样性造成的困扰。

2.2.1作业的准备工作

拆答案。用LaTeX语言格式输入某一道数学题及其所有可能答案,输入过程中,需要拆开的部分插入“,,”、“∎”或“∙”等符号。规定:“∎”符号前后因子或者字符不能交换位置,而“∙”符号前后的因子或者字符可以交换位置。

用计算机程序代码拆开以LaTeX语言格式编写的数学题答案,这个答案是一个字符数组,拆开答案时采用多层次拆开和定位方式。

每一道作业题的题目和答案用“=.”号来拆分,数学题的计算过程由若干个步骤组成,各个步骤用“=”号来拆分,每一个步骤由若干项组成,每一个步骤里的各项用“,,”来拆分,每一页作业包含干扰题,作业题和干扰题用“,,,”来拆分。比如:

第一步:用“=.”号拆分题目和答案;

第二步:用“=”号拆分各个步骤;

第三步:用“,,”号拆分同一个步骤里的各项;

第四步:用“;;”号拆分同一道题不同的答案;

第五步:用";;;"号拆分数学题答案和干扰项,为了过于简单适当地添加干扰项来考验学生。

按照上述提案,考虑到手机屏幕大小,每一页作业由3到5道(或更多)数学题组成,每一道数学题的答案可能2至3种,每一种答案由若干个步骤组成,每一个步骤由若干项组成,每一项处于不同的位置。要存放每一个细节,存放这些信息需要建立四维字符数组,第一维数组中,存放某一页的题目数。第二维数组中的数据表示某一道题有多少种做法。第三维数组中,存放步骤数,第四维数组中,存放某一步骤包含的项数。

例如:String[][][][][]item=newString[题目数][做法数][步骤数][项数];

第六步:

按照上述方式拆答案以后,整理和去掉相同的字符,将字符数据存放到叫item的四维字符数组。这个四维字符数组的每一个成员由被拆开数学公式、符号以及它所在的位置信息组成。

根据本文采取这种方法:将手机屏幕分上下两部分,在屏幕上方,显示几个数学题目,在屏幕下方,显示若干个选项。学生做数学题时,按照自己想法,点击屏幕下方的选项拼凑出答案。只按照“=”、“,,”号拆开答案时,屏幕下方出现的选项与标准答案非常相似,所以需要进一步拆开答案。

被拆开的某一项由若干个因子、极限号、积分号等组成。拆开时,有些项按顺序拆开,比如:极限号、积分号、求和符号等必须放在第一位。这时,要考虑这些符号的顺序,输入数学公式的时候插入“∎”号。拆开有些项与顺序无关,输入时插入“∙”号。

第七步:

用“∎”“∙”号进一步拆开在item里存放的字符串,拆开的同时记录拆开以前每一个字符串的相对位置,整理完这些信息,重新存放在item字符串里。

做题时,需要点击屏幕下方的选项,经过计算根据这些项所带的位置信息,判断被点击的选项与前面的点击的选项可不可以拼凑成原始的字符串。

有些数学题答案的前后两个步骤的有些项保持不变,而且有的数学题最后一个步骤的答案由若干项组成。而且,数学题答案的步骤数不是固定,有的只写答案,有的写两三个步骤甚至好几十个步骤。考虑到这些因素建立一个数组,按照这个数组的数据来判断被点击的选项是不是包含答案所需要的信息。

第七步:写完每一页作业的标准答案以后,为了减少运算量和判断各项之间的依赖关系,利用一个辅助程序显示每一道数学题的答案,以手动方式连接答案里前后两个步骤相互依赖的各项。连接过程中,辅助程序建立一个叫“NOS”的类。这个类有两个成员,一个是NOD类型的数组,另一个成员是字符串类型。NOD类也有两个成员,一个是字符串,另一个是NOD类型数组。

连接答案里相互依赖的各项时,辅助程序自动形成一种关联数据,这些数据表示后一个步骤的某一项是从前一个步骤的某一项推导而来的。

2.2.2作业的准备工作存放作业数据

经过上述过程将准备好的作业存放在网络服务器指定的位置,学生点击“获取作业”时,服务器根据学号向指定的手机随机地发送作业,从而达到给不同的学生布置不同作业的目的。

2.3软件执行过程

(1)Android系统软件下载作业内容,并保存到AndroidSQLite数据库里。数据库,数据库各字段分别命名为:ID,Student_ID,HomeIndex,HomeItem,HomeText,HomeAnswer,Time,Type.

数据库中:ID是数据库记录索引器;Student_ID表示学号;HomeIndex表示作业的页码;HomeItem表示作业的题号;HomeText表示作业内容;HomeAnswer表示作业的答案;Time表示作业布置时间;Type表示作业、课堂练习、单元测试的标志。

Android软件根据数据库内容,在软件的主页面上显示若干条信息。每条信息占一行,每一行由作业布置的时间和下载作业的时间组成。

(2)在主页面上,当学生点击某一行,就显示对应的作业内容,每一页作业包含3至5道(或更多)数学题。这时,作业内容完全按照上面所讲方法重新拆开一次,分成两部分,作业题目和答案项。作业页面由上下两部分组成,上面部分显示题目,下面部分显示若干个项,包含等号“=”“+”“-”和干扰项。

显示作业之前,软件根据当前页所包含的题目数,建立一个二维整型数组,该数组存储题号和选项号。做题过程中,软件将学生每次点击所对应的数据保存到数据库的HomeAnswer字段里。

(3)当学生完成作业点击“提交作业”时,Android软件打开数据库,从HomeAnswer中提取答案。接下来,软件调用若干个函数,这时利用item数组所包含的定位数据,判断被学生拼凑出来的选项是否合理,也就是被拆开的答案与被点击的各项对应的位置信息是否匹配,这是判断的第一关。如果被学生点击的各选项能匹配,则程序执行整理数据,进入下一个阶段。

软件建立三维NOD类型数组,提取HomeText里存放的关联数据,根据这些数据构造NOD类成员;软件按照整理好的答案和NOD数组与标准答案进行比较,这个时候主要检查每一步骤是否包含应有的项和不应该出现的项,步骤数是否达到预定的要求。

(4)判断题和填空题一般只有一个步骤,只写答案就给满分。做计算题时,需要若干个步骤,软件清楚重复的步骤以后按照每一个步骤自动打分。

3用户界面和具体做法

3.1用户登录方式

安装此软件以后,软件会提示:输入班级和学号,学生们输入相关信息时,软件连接服务器,下载该生的信息,并显示如图1的画面。

打开菜单,点击本次作业,软件下载作业内容,屏幕下方显示作业清单如图2所示。点击在图2所示的画面中作业清单里某一项,软件显示作业内容如图3所示。

3.2做作业和提交作业过程

学生们做作业时,连续点击如图3中下方的若干选项,可以拼凑出想要的答案。比如:做第三题时,先点击题目3,这时,题目3变成蓝色,然后,分别点击如图3所示的选项

可以拼凑出如图5所示的答案。

在导数的应用中,做一些数学题需要列表解释。此时,用点击选项里的特殊符号来实现画表格。

解决T/494fywy5oHd8y5z8HDGQDmXm09je21WFdNbU+zQug=上述问题时,先点击“列数:”和“5”,这时形成如图6的表格,

然后分别点击如图7所示的选项,

可以拼凑出如图8所示的答案。

按照以上的方法一步一步拼凑所有作业题的答案,最后点击“提交”按钮,就这样完成本次作业。做作业难度主要取决于出题时插入的分割符号的数量,分的越细难度就越大。用这种方法做作业与传统的做法有很大差异,刚开始大部分同学适应不了,经过给学生们做几次演示,一部分同学很乐意用此软件完成作业。

4在教学过程中的效果

经过一学期关于高等数学课程教学的实施,共布置7次作业。因考虑尽量避免抄袭现象,每次将设置5至6组或更多的作业内容,每一组作业的内容也比较多。因一道题可能有多种答案,则准备一次作业大概需要十天的时间。题目的多样性为同学们提出了更高的要求,虽作业的难度基本一致,但是不容易找到相同答案的作业题目,这有利于督促学生努力学习。实施了一个月后,大部分的同学课后都会积极找老师问一些难题,不仅提高了教学效果,还提升了学生们的学习积极性。

在高校的高等数学授课过程中,我们的软件可以为每位同学布置不同内容的作业,初步实现了用机器自动批改作业的功能。这一创新成果在某种程度上可以减少作业被抄袭的行为,为教学效果和学生学习积极性的提高做出了巨大贡献。

特别是在大合班授课的情况下,如果学生采用手写方式完成答案,老师在短时间内不可能检查每一位学生的作业,这导致老师无法实时掌握学生的学习情况。然而,通过我们的软件,学生可以使用手机完成随堂练习,系统会自动批改练习题并将得分情况发送给老师,从而使老师能够及时掌握学生们的学习情况。

这一创新不仅提高了教学效果,还激发了学生的学习积极性。通过个性化布置作业和自动批改的功能,我们能够更好地满足学生的学习需求,激发他们的学习兴趣和动力。

总之,我们的软件在高校的高等数学授课中具有重要意义。它不仅可以减少作业抄袭行为,还能提高教学效果和学生学习积极性。通过手机完成随堂练习并自动批改,老师能够及时了解学生的学习情况,从而更好地指导和辅导学生。这一创新将为高等数学教育带来巨大的变革和进步。

参考文献:

[1]何佳颖,熊峰,潘永平,等.基于程序题的自动批改系统设计[J].信息技术与信息化,2022(04):54-57.

[2]杨勤民,江志松.大学数学作业自动批改系统的设计与实践[J].华东师范大学学报(自然科学版),2022(02):76-83.

作者简介:伊斯拉木·吐尔逊(1969—),男,维吾尔族,新疆喀什人,本科,讲师,研究方向:应用数学。