
软件设计与开发
浅谈网络考试系统组卷算法的设计
杨战旗黎永碧
(河南工程技术学校河南焦作454000)
摘要:本文首先从一个网络考试系统开发的实际需要出发,指出组券算法的设计是考试系统开发的关键环节;接着对常用的组卷算法进行简单介绍,并对各组春算法的优缺点透行了大致的对比分析;最后根据我校考试系统对组券的实际需求分析对组券算法进行设计。
关键词:组算法设计网络考试系统
中图分类号:TP311 1、引言
文献标识码:A
文章编号:1007-9416(2011)07-0107-02
最为关键的环节之一,原因主要有两点:第一,采用科学的组卷算法
随着计算机技术与网络技术的高速发展,网络技术开始在教育领域加以广泛应用,其中一方面的应用就是网络考试。利用计算机网络技术实现的计算机网络考试取代传统方式的考试已成为一种趋势并且在很多行业领城已经得到了比较广泛的应用。然而,目前在包括我们学校在内的很多院校内部的教学活动中,每个学期例行的考试依然采用传统的基于纸和笔的考试形式,采用此形式院校要耗费大量的资源去编制题目,印剧卷纸,组织考试,监考、评改试卷和分析统计考试结果等等,工作量大、时间长,分析统计效率低,对于学校的人力、物力、财力都是一个很大的消耗。因此,开发适合我们院校内部各科目考试使用的网络考试系统显然具有较强的实用价值。
在网络考试系统的开发过程中,组卷算法(即考试系统从海量试题库中抽取一定量的试题组成一份试卷的方法)的设计是系统中
S=0 NI0 N20 N3=0
s是否已于试卷总分香
读取试题库试题总数N并产生1-N阅的随机整数R
读取题号为R的试题
是
是否已描取
司是否选择题
香
是否判断题否
万方数据
是是
N1>选择感数
服
试题存人考生试卷表中 N1++,S=S+题日分值
N2>判斯医数
是
将试题存人考生试卷表中 N2++,S=S+题目分值
N3>主现周数
将试题存人考生试卷表中 N3++,S=S+题目分值
图1组卷算法流程图
才能保证由抽取试题组成的试卷更合理、更科学、更公平,第二,根据实际需求采用适当的组卷算法可以提高组卷的效率,从而减轻网络服务器的负担以及减少考生等待抽取试卷的时间。
下面对常用的组卷算法进行一下简介分析,并根据我校网络考
试系统的实际需求分析进行组卷算法的设计。 2、常用组卷算法的简介及分析
比较常用的组卷算法有随机组卷算法、模糊组卷算法、回潮试探算法以及遗传算法等。
2.1随机组算法
随机组卷算法先根据实际需求确定抽取试题的控制参数,然后根据参数随机从试题库中抽取符合条件的--道试题存人试卷表中,循环执行此过程直到试题总分等于设定的分值即可完成组卷。随机组卷算法简单,便于实现。该方法适合于组卷控制参数较少的情况,如果组卷要求较多,组卷的成功率会下降。
2.2模糊组卷算法
模糊组卷算法通常是利用专家系统及模糊矩阵技术,加上模数学理论以及人工智能技术来实现组卷。组卷时用一定的数学矩阵来表示各种组卷参数,接着通过计算机采用"消矩阵"的方法,随机地由试题库中逐一选取符合要求的试题。直至组卷参数矩阵基本都变为零矩阵,从而完成试卷组合过程,模糊组卷算法相比随机算法较为复杂,实现起来比较困难。
2.3回溯试探算法
回溯试探算法是改进了的随机组卷算法。用随机算法选取好了一道试题后,保存选择该试题的依据和状态数据,如果选取下一道试题不成功就撤销上次选题所保存的数据信息,并按相应的算法用更新后的参数来选取试题。通过重复回溯试探直到组卷成功,此算法组卷成功率相对比较高,然而占用系统资源较多同时耗时较长。
2.4遗传算法
遗传算法("Genetic Algorithm",简称"GA"),它是基于"进化论”的“优胜劣汰,适者生存”的物种遗传理论设计的搜索算法。该算法把“搜索空间"映射成"遗传空间”,即将每一个可能的解编码成-
集团或者群体,并且按某个预定的"目标函数"(或者叫评价指标)对每一个染色体进行评价,根据相应的评价结果给出一适应度的值。算法开始的时候先产生一些随机的染色体(问题的候选解)并计算其适应度,根据其适应度对这些染色体进行选择、变异、杂交等等遗传操作,别除其中适应度低(性能不佳)之染色体,留下适应度教高(性能优良)的染色体,从而得到较新的群体。因为新的群体成员来自上代的优秀遗传者,继承了上代优良的性质,所以与上一代相比具有明显的优势。“GA"就是如此反复选代,朝着更优解的方向逐渐进化,直至达到了某种预定的优化指标。
通过对上面几个算法的分析对比,可以看出:"模糊组卷"算法
.下转第109页