版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于“一对一”教学模式下的评价系统的关键技术研究内容摘要:“一对一”的教学模式下教师通过各种信息技术手段达到良好的教学效果,但在平时的测试中很难进行实时的“一对一”的评价,学生不能适时地知道自身的薄弱知识点在哪里,为了使得学生在学习中能了解自身的认知水平,本人设计“一对一”评测的数学模型,在这个数学模型基础上通过C#语言实现核心技术,通过该核心技术构建的评价系统能很好的帮助学生认识自身的薄弱知识点的认知水,同时强化薄弱知识点的学习与评测,从而实现一对一式的评价系统的要求,同时能让教师掌握全体学生的认知水平因材施教。关键词:一对一评价数学模型“一对一”教学模式的优点是:一能让教师通过信息技术达到因材施教的目的,二能让教师可以应用不同的软硬件使得学生在自主学习中完成教师授课的教学目标,三能让学生在学习过程中根据自身的学习特点进行有目的的学习与探究。“一对一”教学模式的教学效果有目共睹,然而学生在学习完成后的评测中还是不能摆脱原来的束缚,在评测中基本都是同一套题目,评测之后教师根据系统的统计进行讲评,学生有很多薄弱的知识点讲得并不到位,或者教师所讲的并不是每个学生觉得难得地方。教师由于不能很好地进行一对一的讲评,又要让全体学生能更加好的掌握知识,有可能在复习的时候或者布置作业的时候题量就会相应增加。这样虽然课堂效率提升了,但是课后强化练习的效率并没有多大的改观。为了提高学生课后学习效率,首先要让学生认识到自身认知水平,哪些知识点是薄弱的,在平时就要加强,哪些知识点好的相应的是巩固,为此提出了“一对一”评测的数学模型。1.“一对一”评测的数学模型“一对一”评测系统的关键点在于薄弱知识点的查找、反馈,因此在组建数学模型的时候就是设计出题量的数学模型。1.1题分析问题一:找出知识点答错数量。每个学生在学习的时候都会有自己的强项,一般情况下,评价系统能给出学生在答题后本次答题错误率、正确略等信息,但在下一次的出题时,评价系统依然只按照设计者的思路进行出题,并没有根据学生对知识点的认知程度来进行出题,对于学生薄弱的知识点有可能题量太少而难以引起学生的重视,使得学生在今后的学习中掌握知识不够全面。问题二:平衡知识点全对和全错的出题量。学生有的时候在某些知识点的认知水平很高有可能每次做题都是全对,而有的知识点的认知水平很低有可能每次做题都是错误的,这时候我们不能简单只出每次都错误的知识点的题目,而要求每个知识点都要覆盖,本着“全对的出少点,全错的多出点”的原则,根据艾宾浩斯记忆曲线人们在久不刺激记忆后便会遗忘,所以即使全对的知识点也要提供相应的题目给学生练习。问题三:正确与错误趋势的判定范围。胡克定律指出:弹簧在发生弹性形变时,弹簧的弹力F和弹簧的伸长量(或压缩量)x成正比,即F=-k·x。k是物质的弹性系数,它由材料的性质所决定,负号表示弹簧所产生的弹力与其伸长(或压缩)的方向相反。也就是说当某一事物达到某一极限后,就是往回的趋势的起始之时。当学生错误达到一定程度后,经过学习,这一错误也就会逐步减少,反之,学生完全正确后有可能就会出现错误的情况,我们需要一个时间范围来限定这个正确和错误的趋势,结合艾宾浩斯的记忆曲线,我们把时间范围扩大到30日,这样容易让学生更加重视错误的方面。问题四:减少数学模型的误差。在建立数学模型的时候,我们通过数值计算需要取到整数部分,小数部分就会被人为地舍去,我们在建立模型的时候要充分考虑到数值差异,保证题目总量的正确性。1.2模型建立1.2.1模型假设(1)学生在做完练习后所有的题目都是正确的,也就是说知识点没有错误的情况下,题目平均分配。(2)已分配的试题数之和仍小于试卷题数,则余下的试题数补至最后一个知识下。(3)知识点的题目有错误,要统计用户指定天数下,各知识点错误的题目数量。(4)统计用户指定天数(默认30天,下同)下,各知识点没有错误的题目数量。(6)统计用户指定天数下,所有知识点错误的题目数量。(7)根据所有知识点错误的题目数量和各知识点错误的题目数量,计算出各知识点错误题目比率。(8)根据试卷题目总数、未错知识点数量和知识点错误题目比率,计算出各知识点出题量。1.2.2定义符号说明R----所有未错知识点数量总和Li----一个未错知识点A----30日内一个知识点错误题目数量Kt---1日内一个知识点错误题目数量S----30日内所有知识点错误题目数量总和B----一个知识点的错误题目比率F----一个知识点的出题数量C----试卷题目数量n----知识点数量i-----时间(日)是是否否是计算所有知识点的出题数量试卷题目数量是否大于各个知识点题目数量之和多出来的题目添加到最后一个知识点统计未错知识点数量是否第一次测试平均分配各知识点题目数量统计各个知识点错误题目数量统计各个知识点错误题目比率图1.12.实现数学模型的代码建立B/S的应用程序有很多语言可以实现,现在通过C#实现,它的优点是效率高,可靠性好,可以在手机终端上使用。2.1获得各知识点中的试题数量接口IEnumerable<ProblemsCountInKP>getNeedProblemsCountInEachKP(intuserId,intdays,inttotalProblemCountInPaper)获取各知识点下要抽取的试题数。IEnumerable<int>getAllKpIds()获取所有知识点编号,创建int型的kpIds链表,用来记录符合条件的考试编号。通过执行sql="selectidfromkpInfo"语句获得OleDbDataReaderreader,再添加到kpIds中。其返回值赋值给allKpids就可以统计所有知识点的个数。其代码如下:IEnumerable<int>getAllKpIds(){List<int>kpIds=newList<int>();stringsql="selectidfromkpInfo";using(OleDbDataReaderreader=SqlHelper.ExecuteReader(Conn.ConnString,sql)){while(reader.Read()){kpIds.Add(int.Parse(reader["id"].ToString()));//记录符合条件的考试编号}}returnkpIds;}通过intgetErrorsInfoInDays(intuserId,intdays,outErrorsInKP[]errorsInKp)方法获取指定用户指定天数下各知识点错误情况,返回值noErrorsKPsCount为未出错的知识点个数,这个方法找出数学模型中的R,A,S,B,遍历allKpids各知识点出题情况。通过intgetErrorsCountInKPAndDays(intuserId,intdays,intkpId)方法找出各个知识点指定天数内错误题目数量。IEnumerable<int>getAllExamIdsInDays(intuserId,intdays)接口获取某一用户指定天数内所有考试场次编号,stringdeadDate=DateTime.Now.AddDays(-1*days).ToString("yyyy-MM-dd")可以获取最早需要开始统计的日期,之后在对数据表中examTime字段进行比较,只要大于最早要开始统计的日期就都是符合要求的考试场次编号。具体实现代码如下:IEnumerable<int>getAllExamIdsInDays(intuserId,intdays){stringdeadDate=DateTime.Now.AddDays(-1*days).ToString("yyyy-MM-dd");//获取最早需要开始统计的日期List<int>examIds=newList<int>();stringsql="selectidfromexamInfowhereexamTime>=cdate('"+deadDate+"')";using(OleDbDataReaderreader=SqlHelper.ExecuteReader(Conn.ConnString,sql)){while(reader.Read()){examIds.Add(int.Parse(reader["id"].ToString()));//记录符合条件的考试场次编号}}returnexamIds;}找出错题总数就要对examProbsInfo和probInfo两个数据表中考试场次编号、知识点编号和题目答案进行比对,就可以统计出错题总数S,其代码如下:sql="selectcount(*)aserrorsCountfromexamProbsInfoaleftjoinprobInfobonbId=b.idwherea.examidin("+string.Join(",",examIds)+")andb.kpid="+kpId+"anda.userAnswer<>b.answer";各知识点的错误数A信息就保存在类ErrorsInKP声明的对象errorsInKp中。通过对errorsInKp的遍历,各知识点的错题数除以总错误数就可以得到各知识点的错误率B了。未错知识点R的统计就可以使用errorsInKp.Count(errorInfo=>errorInfo.ErrorsCount==0)实现。实现数组(1)在getErrorsInfoInDays()方法中的返回值noErrorsKPsCount与知识点总数相同时也就是说知识点都没有错误的时候题目平均分配,得到单个知识点的题目数量后再统计实际出题的数量,如果实际出题的数量小于试卷题目数量就把剩余的题目数量加到最后一个知识点当中。实现数组(2)在getErrorsInfoInDays()方法中的返回值noErrorsKPsCount与知识点总数不相同时各个知识点的出题量就通过错误率乘以试题总数减去未错知识点数量,对各个知识点的出题量求和,如果少于试卷题目总数就把剩余的题目数量加到最后一个知识点当中。实现数据模型的关键代码如下:inti=0;if(noErrorsKPsCount==kpsCount){//知识点没有错误的情况下,题目平均分配intaverage=totalProblemCountInPaper/kpsCount;//平均值foreach(intkpidinallKpids)problemsCountInKp[i++]=newProblemsCountInKP(){KPId=kpid,ProblemsCount=average};if(average*kpsCount<totalProblemCountInPaper)//已分配的试题数之和仍小于试卷题数,则余下的试题数补至最后一个知识下problemsCountInKp[i-1].ProblemsCount+=totalProblemCountInPaper-average*kpsCount;}else{intf;inttotalUsed=0;//记录已分配的试题数foreach(intkpidinallKpids){f=(int)(errorsInKp.First(item=>item.KPId==kpid).ErrorsPercentage*(totalProblemCountInPaper-noErrorsKPsCount));//F=B(C-R)if(f==0)f=1;problemsCountInKp[i++]=newProblemsCountInKP(){KPId=kpid,ProblemsCount=f};totalUsed+=f;}if(totalUsed<totalProblemCountInPaper)//已分配的试题数之和仍小于试卷题数,则余下的试题数补至最后一个知识下problemsCountIn
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论