摘 要 通过详细分析试卷的各项约束条件,建立了一个以知识点、难度系数、区分度等为核心属性的自动组卷数学模型,并利用改进的遗传算法实现了自动组卷。
关键词 自动组卷;数学模型;遗传算法自动组卷就是根据用户的要求,采用一定的算法自动地从试题库中抽取一定数量的试题组成试卷。自动组卷算法的好坏直接影响到试卷的质量,如何从试题库中选出试题组成符合用户要求的试卷,并使组卷具有较高的效率和成功率是当前研究的热门课题。现有的自动组卷算法一般有三种:随机选取法、回溯试探法和遗传算法。遗传算法是一种新发展起来的并行优化算法,它很适合解决自动组卷问题。
1 试题核心属性的确定
在自动组卷系统中,一些试题库设置了试题的各类属性,如章节、层次、要求、题型、难度系数、难度级别、各章节分值等属性,其实过多的属性会增加实际组卷的难度,降低效率。以教育学理论为指导,选择以下属性作为试题的核心属性。 (1) 题号。试题的编号,用来唯一标识试题。 (2) 题型。试题的类型。 (3) 知识点。某道题属于某门课程的哪个知识点,知识点的设置不以章节为依据,从而可以避免教材的不同对组卷造成影响。 (4) 难度系数。难度系数[1]是表示某一试题的难易程度,通常用未通过率来表示,即一次考试中未答对某道试题的考生数在其总体中所占的比例。一般来说,难度系数值为0.5时,是中等难度,如果小于0.3试题太简单,如果大于0.7试题太难,对考生都会做或都不会做(难度系数为0或为1)的试题,属于无意义的试题,必须淘汰。 (5) 区分度。区分度[2]是指某道题对不同水平考生加以区分的能力。区分度高的试题,对学生水平有较好的鉴别力。区分度的计算公式为:2 自动组卷数学模型的建立
自动组卷中决定一道试题,其实就是决定一个包含题号、题型、知识点、难度系数、区分度、分值、答题时间的七维向量(a1,a2,a3,a4,a5,a6,a7)。假设一套试卷中包含n道试题,一套试卷就决定了一个n×7的矩阵S:

(3) 试卷的难度系数要满足用户的要求,试卷的难度系数一般用试卷中每道试题的难度系数的加权平均来计算。





3 遗传算法
遗传算法[3,4,5]是以适应度函数(或目标函数)为依据,通过对群体中的个体进行遗传操作实现群体内个体结构重组的迭代处理过程。在这一过程中,群体中的个体一代一代地得以优化,并逐渐地逼近最优解,最终获得最优解。传统遗传算法的主要步骤包括初始染色体群体生成、适应度评估和检测、选择操作、交叉操作和变异操作。传统遗传算法流程图如图1所示(其中t为进化代数,t0为最大进化代数)。
图1 传统遗传算法流程图
[8]电大学习网.免费论文网[EB/OL]. /d/file/p/2024/0424/fontbr />
4 基于改进遗传算法的自动组卷
传统的遗传算法采用二进制编码,用1表示某题被选中,0表示某题没有被选中,这种编码非常简单,但在进行交叉和变异操作时,各题型的题量很难控制,而且当试题库题量很大时编码很长。传统的遗传算法以进化代数等于最大进化代数作为终止条件,但是在实际组卷过程中并不知道种群进化到第几代就能得到试卷的最优组合。因此用遗传算法实现自动组卷时,要对传统遗传算法进行一些改进。4.1 改进的遗传算法
4.1.1 染色体编码 通过对编码的大量分析,提出了一种分段实数编码机制,首先将染色体分成若干段,每一段对应一种题型,组成试卷的各道试题题号直接映射为基因,编码时将同一题型的试题放在同一段,同一段内题号各不相同。以题号编码的方法所表达的意义清楚、明确、不需解码,从而可以提高算法性能,提高运算效率。而且交叉和变异操作都在各段内部进行,因此可以保证组卷过程中各题型题量的正确匹配。4.1.2 适应度函数设计 遗传算法在进化搜索中仅以适应度函数为依据,利用种群中每个个体的适应度值来进行搜索。因此,适应度函数的选择至关重要,一般而言,适应度函数是由目标函数变换而成的。上面提出的自动组卷模型是最小化问题,采用如下方法可将目标函数f转换成适应度函数F。4.2 主要算法描述
基于改进遗传算法的自动组卷的主要算法描述如算法1所示。算法1: int GJGA(pc,pm,m,f0) { t=0; initialize(p(t));//随机产生初始染色体群体 计算初始染色体群体的适应度值; while (maxf<f0) //当适应度最高的染色体的适应度值小于期望适应度值时 { selection(p(t));//选择操作 crossover(p(t));//交叉操作 mutation(p(t));//变异操作 得到下一代染色体群体q(t+1),计算下一代染色体群体的适应度值; t++; } 输出当前染色体群体中适应度最高的染色体; }4.3 遗传算法复杂度分析
在遗传算法中,绝大部分处理都集中在适应度的计算上,因此可以用计算个体适应度操作的时间复杂度作为算法的时间量度。遗传算法的时间复杂度为O(t*m*n)。因为试题库中的题量一般都很大,所以改进后的遗传算法的时间复杂度一般要比传统遗传算法的时间复杂度小。遗传算法的空间复杂度可以用初始染色体群体所占的空间来衡量,遗传算法的空间复杂度为O(m*n)。因为改进后的遗传算法的染色体的长度远比传统遗传算法的染色体的长度小,所以改进后的遗传算法的空间复杂度远比传统遗传算法空间复杂度小。5 结论
算法的改进往往不能顾及问题每一个方面,如果算法设计的核心是提高解的精度,则算法可能在搜索范围和搜索精度上花去更多的时间,如果算法的设计主要在于尽快收敛,得到结果,则在解的精度上考虑很少,算法往往侧重于减少进化代数。改进后的遗传算法使生成试卷的质量得到了保证,但要使组卷的收敛速度得到进一步改进,还需进一步研究。参考文献
[1] 文海英. 智能型试卷自动生成系统中试卷难度控制技术的研究(J).湖南科技学院学报,2005,26(5):153-156[2] 常振江. 学生成绩分布与一种简便的评估试卷命题质量的方法(J). 辽宁师范大学学报:自然科学版,2003,26(1):109-112[3] 丁卫平. 基于遗传算法的智能组卷应用研究.电气电子教学学报(J),2005,27(2):93-95[4] 朱黎明. 基于单亲遗传算法的试题生成及其应用研究(D). 长沙:湖南大学,2005[5] T.Lynda,C.Chrisment,Boughanem Mohand. Multiple Query Evaluation Based on Enhanced Genetic Algorithm. Information Processing and Management,2003,39(2):215-231
[8]电大学习网.免费论文网[EB/OL]. /d/file/p/2024/0424/fontbr />
相关文章:
有没有适用于中文毕业论文的latex模板04-26
学术论文范文(如何写出高质量的学术论文)04-26
初中数学小论文格式模板(该如何规范写作)04-26
大学生学术论文范文参考(如何找到高质量的参考文献)04-26
毕业设计论文模板大全(哪些模板适合使用)04-26