龙源期刊网 http://www.qikan.com.cn
试题库组卷策略与选题算法
作者:王善桃
来源:《电脑知识与技术·学术交流》2008年第26期
摘要:试题组卷算法的优劣直接影响到试题库的性能。该文在试题库参数设定的基础上,从题型、知识点与难度三维立体结构中粗选试题,再通过优先权参数的计算精选优质试题,并运用了多种组卷策略,提高了组卷的灵活性和成功率。 关键词:优先级;知识点;误差控制
中图分类号:TP311文献标识码:A 文章编号:1009-3044(2008)26-1724-02 Questions and Topics for Test Paper Strategy Algorithm WANG Shan-tao
(Jiangsu Vocational and Technical College of Finance&Economics, Huai'an 223001, China) Abstract: The quality of test question database is directly affected by stand or fall of the
arithmetic of organizing examination paper. This article in tries the test question database parameter hypothesis in the foundation, from the topic, the knowledge points and in the difficulty three dimensional spatial structure rough selecting test question, again through the priority parameter
computation selection high quality test question, and has utilized many kinds of group volume strategy, enhanced the organizing examination paper flexibility and the success ratio. Key words: priority; knowledge points; error control 1 引言
利用计算机自动生成试卷是试题库系统的一项重要内容,而生成试卷质量的高低除了与试题的质量、数量、比例结构等有关外,还与题库设计者设定的技术参数息息相关,本文在试题库控制参数设定的基础上,从题型、知识点与难度三维立体结构中粗选试题,通过优先权参数的计算精选优质试题。为了提高组卷的灵活性和成功率,分别对知识点和难度进行了上下放松和误差控制。
2 算法的问题性描述
龙源期刊网 http://www.qikan.com.cn
设:P={P1,P2,...,PN}是一个有限变量集,它们对应每道试题的属性变量(题型、章节(知识点)、难度系数、分值、时间、被选概率等)。
L={L1,L2,...,LN}是一个有限数字集,它们对应每种属性变量的取值范围。
R={R1,R2,...,RN}是一个有限规则集,它们对应各试题属性的变量的取值约束关系。 S={S1,S2,...,SN}是一个试题序列(试卷),它们对应着从试题库中选择出来的满足约束的试题序列。
那么,组卷算法可描述为从试题库中抽取一组S,使得它们所有的属性变量P在L的取值范围内都满足R的约束。
3 常见组卷策略
组卷算法实质上是一个多重约束的求解问题,在实际组卷中,多重约束的矛盾会越来越“激烈”,甚至使算法停滞不前,因此,为了提高组卷的成功率,可以考虑以下策略: 3.1 减少约束的并行性
设有N个并发约束R={R1,R2,...,RM,...,RN}是一个有限规则集,假设将其分为{R1...RM }和{RM...RN}二部份,若将前一约束{R1...RM }作用于试题库得到一组试题序列
S={S1,S2,...,SN},然后再将后一约束{RM...RN}作用于S,刚得到一组新的试题序列必定满足约束R。
3.2 参数放松与误差控制
在实际的组卷过程中,很难使所有的约束都能很好的满足,如何从纷繁的约束中选择好“主攻方向”,是算法设计者必须首先考虑的问题,到底选择哪几种控制参数为主,本文认为,难度、知识点与题型是试题的核心属性,以它们为坐标构成的三维立体结构中的每个交点上选择试题可以得出满意的效果,在筛选的过程中根据优先级可以得出更优质的试题,在筛选不到试题时,通过对参数上下放松或误差控制,使算法得以顺利进行。 3.3 多种算法结合运用
龙源期刊网 http://www.qikan.com.cn
通常试卷根据题型可分为二大类,一类是客观题,主要有判断、单选、多选、填空,另一类主观题,主要有问答、设计、计算,一般客观题分值相等、分值小且题数多只要解决了知识点的重复问题宜采用较为常见的随机生成算法,而客观题由于分值不等、分值大、题数少、条件制约复杂宜综合运用多种选题策略来增加效率与组卷的成功率,例如采取顺序与随机算法结合、随机与穷举结合、深度优先搜索算法以及目前较为先进的遗传算法等。
4 试题库结构及知识点编码
4.1 试题库结构
常见的试题库结构有编号、题型、题干、答案、章节(知识点)、难度系数、分值、本题时间、区分度、价值、选中标志、优先权等。其中题型有判断、单选、多选、填空、问答、设计、计算等,知识点可以根据课程章节内容进行原子化排列成常见的树型结构或目录结构,用编码表示,难度系数是试题难易程序的指标,它可以由教师录入试题时指定,也可以根据经典的项目反映理论由具体的算法得到,通常可分成5级,区分度是试题测验对考生实际水平的区分程度,区分度是测验项目分析的重要内容,是衡量题目质量的重要指标,也是筛选试题的主要指标与依据,可以通过相关公式计算得到。价值是反映试题内容重要程度的指标,选中标志设定为布尔型,优先权是衡量本试题在其它同等条件下是否被优先选择的指标,它是一个综合指标,是根据上述多个指标得出的综合值,由系统根据用户的设定计算,用于同条件下优质试题的筛选。 4.2 知识点编码
知识点编码可以有效地解决知识点的重复问题:编码规则是章用二位表示,节用二位表示,以下类推。例如图1中字符数组的应用编码是070302,一维数组的编码是070100(无分支用00表示)。
5 通过人机交互给出试卷控制参数
用户在组卷时,首先通过人机交互给出控制参数如图2所示:
龙源期刊网 http://www.qikan.com.cn
用户根据组卷要求进行参数选择,设用户设定的主要命题要求是:1)试卷总分S和总时间T;2)试卷的题型及各题型的分配比例;3)各题型在各章节(知识点)的百分比;4)各题型的难度分配比例;
6 抽题算法
根据以上设定的条件,算法如下:
1)初始化参数及临时试题库;2)在试题库中依次查找题型为i、难度为j、属于第k章节(知识点)的试题集合G;3)统计G中的试题个数G.count;4)if G.count=0 then参数调整模块(上下放松调整j、k,一般题型不调整),若调整不成功,给出组卷失败信息,组卷结束;5)依优先级抽取试题,更新抽取试题的优先级;6)汇总各题型分值与时间并与设定分值和时间进行比较,调用误差控件模块(控制差额在误差的范围内);7)汇总所有题型分值与时间并与设定分值和时间进行比较,调用误差控件模块(控制差额在误差的范围内);8)组卷结束。
本算法由于优先级的不断调整可以保证试题抽取的随机性和质量要求,有关优先级的计算由经验公式得到,通常影响优先级的主要因数有7个:1)变量的累加值与预定分值的差距,差距越大的越需要补充,优先级越高;2)某类型试题在试题库中的数目,数目越少的,选题的难度越大,优先级越高;3)该变量类型所对应的试题的平均分值,分值高的试题应该优先考虑;4)变量当前累加值完成额定指标的完成率,完成率低的优先考虑;5)区分度越高的试题优先考虑;6)价值越高的试题优先考虑;7)被选过的试题本次不选,置为最小值,也可以进行计算修正。综合以上因数,优先级的计算公式为:
W=rest_score*aver_score*aver_d*aver_value*(1-comprate)/num
其中,rest_score表示差额,aver_score表示平均分值,comprate表示完成率,aver_d表示平均区分度,aver_value表示平均价值,num表示题数。
由于优先级的计算公式较为复杂且由经验给出,实际运用中可以由用户决定哪些因素参与优先级的计算。另外,优先级的值并不能完全代表本试题的价值,但它们的大小关系反映了用户本次抽题的综合要求。
龙源期刊网 http://www.qikan.com.cn
参数放松一般分为知识点放松和难度放松,一般先放松同级别的相关知识点,若不成功,则采取向上或向下放松进行匹配,难度的放松可采取降低一级难度放松,若不成功,则采取提高一级难度放松,上下只能调整一级。
总分和时间是试卷的全局性约束,因此本算法主要对这二个参数进行误差控制,为了减少约束的并行性,在抽题的最后采取误差控制的方法解决之,对于误差分值S的处理,可以到题库查找分值为S的其它题型、其它章节的题目来代替,这样做可能偏离了试卷的命题要求,但是误差不会太大,同时使组卷的成功率得到提高。 7 结束语
一般而言,在题型、知识点、难度为坐标的三维立体结构的每个交叉上都有合适的试题,当题量达到一定量的时候组卷工作才会收到良好的效果,但组卷出现困难时,可以采取参数上下放松的策略和误差调整的策略解决,在粗选试题后,采取优先权精选试题可以提高试题质量,兼顾其它指标,并对全局约束变量进行误差控制提高组卷的灵活性和成功率。本算法在江苏财经职业技术学院开发的试题库得到运用,抽出的试卷题型分布合理,组卷效率高,成功率大,组卷质量能较好地符合各种控制参数。
参考文献:
[1] 王友仁.智能组卷系统的建模与算法研究[J].系统工程理论与实践,2004,(9):86-90. [2] 涂振宇,王勇,曾暄.智能组卷算法研究[J].江西教育学院学报:自然科学,2002,12(6):42-44. [3] 卢章平,周志平.试题库技术质量参数的研究[J].江苏理工大学学报,1996,17(3):105-110.