杨素锦,李 冬
(周口师范学院 计算机科学与技术学院,河南 周口 466001)
目前各高等学校所采用的考试系统大致分两大类:一类是通用性很强的考试系统,这类考试系统不能很好地针对某门课程使用;另一类是针对某门课程的考试系统,这类考试系统可以很好地组织一门课程的考试,但如果每一门课程都单独使用一个考试系统,势必会造成资源的浪费.而计算机技能类课程(如计算机应用基础、多媒体技术、网站建设等)的教学目的是培养学生成为应用型高级技能人才,因此,根据课程特点设计与开发一个计算机技能类课程在线考试平台(以下简称平台)是目前亟待解决的问题.
由于本文设计的在线考试平台主要是完成“组卷——考试——试卷分析”功能,数据要求易于维护,在考试时客户端(学生)只需使用浏览器即可进行考试,系统也应随着考试与教学的要求便于扩展.因此,本文设计的在线考试平台采用浏览器/服务器 (Brower/Server,简称 B/S)结构,并采用MVC分层设计.系统的总体结构如图1所示.
图1 考试平台的体系结构图
平台面向的用户主要有系统管理员、考试决策者、教师、学生.系统管理员可以管理其他用户、维护数据库、实现课程维护等;考试决策者(一般为院系领导)可以进行组卷与试卷管理;教师负责所教课程的课程章节维护、题目类型维护、试题维护等.经系统管理员授权,某些教师用户可以有双重身份,既是教师用户,又是考试决策者.学生在考试过程中能够下载、观看示例程序,在题目完成后能提交操作结果.平台的总体用例图如图2所示.
根据平台功能需求分析,平台主要包括系统管理、题库管理、试卷管理、考试管理等功能模块,系统的功能模块图,如图3所示.
图2 在线考试平台总体用例图
本平台数据库设计的原则是:试题库实现动态维护,可以对题型、试题等及时地添加、修改、删除,以适应计算机技能类课程内容更新快的特点.题库中的题量应足够大,试题的类型比例、知识点比例、难度比例等均应分布合理,为组出好的试卷提供基础.题库设计还应考虑组卷采用的算法,便于组卷算法的实现[1].平台设计的数据库主要包括课程表、操作(或程序设计)题表、选择题表、填空题表、教师信息表、章节表、考试信息表、试卷信息表、学生信息表等.下面给出平台中组卷相关表的关系图,如图4所示.
目前考试系统采用的组卷算法主要分为四类:基于随机抽取的自动组卷;基于深度和广度搜索算法的智能组卷;基于遗传算法的智能组卷[2];基于项目反应理论的自适应的测试.以上组卷算法各有优缺点,但鉴于组卷约束目标复杂且题库中试题量较大的情况,利用遗传算法进行组卷是合适的选择[3].本平台采用改进的遗传算法进行组卷.
3.1.1 组卷数学模型
组一套m道试题的试卷,每道试题有n项指标,则整个试卷的结构就相当于一个m×n的矩阵形式,因此在本算法中构建目标矩阵S.
在该目标状态矩阵中,每一行表示题库中的一道试题,而每一列表示每个试题的各个属性取值.组卷中每一道试题,要根据S中给出的n项指标来决定,题分ai1,教学要求度ai2,题型ai3,估计用时ai4,区分度ai5,难度ai6,使用次数ai7,知识点ai8,….则aij相当于第i道题的第j项指标,其中i=1,2,…,m;j=1,2,…,n.每个组卷的目标要求都对应着一个约束条件,本文中取n=8,则目标矩阵应满足下面的约束条件:
①试卷总分或由用户给定,即试卷总分数约束.
⑥试卷难度系数用testNd来表示,则
即试卷的难度约束,可由用户给定.
⑦ai7≤u,曝光度约束,u为试卷中允许每道题目在考试中用过的次数,由用户指定.
3.1.2 适应度函数的确定
本算法中,适应度函数的设计思想为:将每一项约束目标看作是整个组卷约束目标的子目标,根据每个子目标在整个组卷约束目标中的重要性分配权重,然后采用加权和的形式形成一个目标函数.各子目标均采用实际生成试卷的目标值Xi减去用户理想的目标值ei再除以用户理想的目标值ei,各子目标函数的基本形式为:
其中,mi为用户设定的各目标允许的误差.则,最终目标函数设计为其中,wi为第i个组卷约束目标所占权重,∑wi=1.
3.1.3 遗传算法组卷
遗传算法组卷需经过编码、选择、交叉、变异等完成组卷[4].本平台利用改进遗传算法进行组卷,组卷算法流程图如图5所示.
图5 遗传算法组卷详细流程图
由于本平台针对的课程是计算机技能类课程,而计算机技能类课程的考试题型一般包括客观题(选择、判断等)与主观题(操作题或程序设计题等)两部分,因此,在阅卷时即针对这两种题型的特点进行阅卷.
1)客观题阅卷.客观题采用机器自动阅卷.由于客观题提供的答案是唯一的,因此客观题阅卷采用模式匹配法进行阅卷,即将学生所做试题的答案与试卷表中提供的标准答案使用字符串的匹配运算来判断是否正确,从而计算考生的得分情况.
2)主观题阅卷.主观题采用半自动化阅卷.由于计算机技能类课程主观题的答案不固定(有的为程序,有的为示例),因此,主观题的评分难以通过完全的自动阅卷来实现.本平台要求教师在录入试题时即给出该道题的评分细则与每项细则所占试题分值的百分比.当考试结束后,由教师调出该学生已做的试题进行查看,然后借助考试系统列出的评分细则给出每步分值,最后由系统自动计算各项分值完成阅卷.
平台根据课程特点进行了设计与实现.该考试平台的实现,可以节约考试组织者和参考者的时间和费用,实现教学与考试分离,对促进考试模式的改革,增强考试的科学性与客观性具有一定的现实意义.
[1]李美满,夏汉铸.基于COM技术的通用题库系统的研究与实现[J].计算机工程与设计,2006,27(15):2770-2773.
[2]刘毅.人工智能在自动组卷建模中应用研究[J].计算机仿真,2011,28(8):385-389.
[3]A Kong,D Zhang,M Kamel.Palm print identification using feature level fusion[J].Pattern Recognition,2006,39(3):478-487.
[4]关凇元,刘大有,金弟,等.基于局部搜索的遗传算法求解自动组卷问题[J].吉林大学学报:理学版,2009,47(5):961-968.