APP下载

基于遗传算法的C语言考试系统组卷算法的实现

2018-11-05李今花

电子技术与软件工程 2018年18期
关键词:题库遗传算法

李今花

摘要:本系统将组卷算法和试题题库相结合,将改进的遗传算法应用于高校的智能组卷系统中,主要是从算法的染色体编码、初始种群的生成、适应度评价函数、遗传算子和终止判断条件这几个方面进行改进,从而得到满足约束条件的最优试卷,实现教考分离。

【關键词】题库 智能组卷 遗传算法

组卷是一个考试系统的核心部分,通过组卷来决定试卷的题量、试卷的知识点分布、试卷类型及试卷中试题难易程度的分布。一个合理而严密的组卷规则是实现考试规范化、公平化、合理化的重要途径,一个良好的组卷规则应该能够保证每一套试卷在试题范围、难度等方面保持一致性,从而保证整个试卷的信度和试卷的效度。

1 试卷属性及组卷约束条件

一份试卷应具有的属性,一般为试卷的总分、答题总时间、试卷的题型、知识点分数分布、试卷难度、试卷区分度等属性。

1.1 试卷的总分

试卷总分( )其中K代表试卷中的总题数,sn为第n道题的分值。

1.2 答题总时间

答题总时间(

)代表试卷拥有的总题数,tn为第n道题的答题时间。

1.3 试卷的题型

《c语言程序设计基础》课程试卷题型一般包括单项选择、填空、程序设计、程序改错和程序填空。

1.4 知识点分数分布

知识点分数分布几何SPD={SPD1,SPD2,…,SPDk),其中k表示试卷共有k个知识点。

1.5 试卷难度系数公式

试卷难度系数公式(

)其中Pn为第n题的难度系数,cn为第n题的分值,k为总题数,S为试卷总分。

1.6 试卷区分度

试卷区分度(

),其中dn为第n题的区分度,cn为第n题的分值,k为总题数,S为试卷总分。

根据试卷的属性,获得试卷的约束条件:试卷总分约束(S约束)、答题总时间约束(T约束)、题型约束(TP约束)、知识点分数分布约束(SPD约束)、试卷难度约束(P约束)和试卷区分度约束(D约束),约束条件集合为C={S,T,TP,SPD,P,D)。

2 组卷策略的设计

传统遗传算法中首先是产生初始群体。初始群体是采用随机方法产生,这样产生的初始群体可以提高组卷速率。本文设置的约束条件为:根据用户的需求设置每个题型的题量,这样就保证了在试卷总分为用户需求的前提下,每个试题所包含的知识点都在考试范围即考试大纲要求内。

《C语言程序设计基础》课程试卷题型包含五种,分别使用A,B,C,D,E代表每种题型:A类题型有x个,B类题型有y个,C类题型有z个,D类题型有w个,E类题型有v个,编码方法如表l所示。同一列代表一个题型下的若干试题,在这一段编码中不存在两个或两个以上相同的试题;不同的题型可以采用相同的基因编码,从而保证同一份试卷不存在重题。

根据上面讨论的组卷约束条件,可以用一个矩阵T表达。本文讨论的试卷约束条件为:题型、分值、单题作答时间、所属知识点、试题难度和试题区分度。则获得矩阵Tl:

矩阵的每一列代表约束条件的一个属性,这里共有6个属性:第1列代表题型,第2列代表分值,第3列代表单题作答时间,第4列代表所属知识点,第5列代表试题难度,第6列代表试题区分度。题型、分值、单题作答时间、所属知识点、试题难度和试题区分度这6个属性约束每一道题。矩阵一行代表一道试题。

以一套《C语言程序设计基础》课程试卷为例。试卷卷面分值100分,该试卷拥有的题型为:单选、填空、程序设计、程序改错、程序填空。答题时间为120分钟。其中单项选择题20个,每题2分,单题答题时间2分钟。填空题10个,每题1分,单题答题时间2分钟。程序设计题1个,每题20分,单题作答时间20分钟。程序改错题1个,每题10分,单题答题时间15分钟。程序填空题1个,每题10分,单题答题时间15分钟。获得试卷初步信息表如表2。

如表2所示,在试卷的题型与题量作了约束后,相同题型的试题的分值和单题作答时间相同,保证了试卷总分和考试总时间得以保证。

参考文献

[1]于淼,方工文.基于遗传算法的智能组卷系统的研究与实现[J].软件工程师,2011,10: 20-22

[2]白东玲,郭绍永.改进的遗传算法在智能组卷系统中的应用研究[J].计算机与现代化,2013,03:10-12

[3]唐金文.基于改进遗传算法的组卷策略研究[J].曲靖师范学院学报,2014,33(06):27-31

猜你喜欢

题库遗传算法
“勾股定理”优题库
“轴对称”优题库
“轴对称”优题库
“整式的乘法与因式分解”优题库
遗传算法对CMAC与PID并行励磁控制的优化
基于自适应遗传算法的CSAMT一维反演
一种基于遗传算法的聚类分析方法在DNA序列比较中的应用
基于遗传算法和LS-SVM的财务危机预测
协同进化在遗传算法中的应用研究
基于改进的遗传算法的模糊聚类算法