论文部分内容阅读
组卷问题是一个在一定约束条件下的多目标参数优化问题,采用传统的数学方法求解十分困难,自动组卷的效率和质量完全取决于试题库设计以及抽题算法的设计。如何设计一个算法从试题库即快又好的抽出一组最符合考试要求的试题,是本文研究的目的。在对国内外大量相关文献分析研究的基础上,本文选择遗传算法作为组卷算法,设计了一种具有通用性的组卷系统。该系统能够按照试题类型、试题数量、知识点、难度系数、区分度、曝光度、最近出题时间、答题时间等约束条件进行快速搜索,从而找到最佳组卷方案,组出理想的试卷。 在组卷系统研究的过程中,本文对传统组卷过程进行了分析,形成了组卷问题的数学模型,并在教育测量和教育统计理论的基础上设计了试题库结构。基于该数学模型,本文建立了按试题类型分组的组卷思想,经试验比较,分组组卷算法搜索速度明显优于不分组时的情况,本文给出了试验的数据。在组卷系统研究的过程中,本文对经典遗传算法从多方面进行改进,并利用C#编程将算法应用于实践。通过实践不仅验证了本文提出的理论的正确性,还对具体组卷实际中遇到的困扰进行了较为合理的解决,使系统可以在实际中应用。总之,本研究主要的工作可以归纳为以下几点: 1.通过分析组卷策略,建立了组卷问题数学模型,并对模型进行简化处理。 2.采用ADO.NET技术,将试题库按题型分割为几个分库表,并将分库表存放于计算机内存中,组卷时既减小了算法的搜索范围,又减少了访问硬盘的时间。 3.改进遗传算法采用分组自然数编码,减少了染色体长度空间,编码直接采用试题编号,省去了编码和解码的繁琐。 4.运用自适应理论改进交叉概率及变异概率,算法本身总能找到适合于自己得交叉概率和变异概率。引入“遗传——灾变”算法使变异概率在监测到染色体有“早熟”倾向时,会自动突变其值,发生灾变,增加变异的机会,使种群跳出“早熟”。 5.选择算子采用模拟小生境的方法,其基本做法是:当新产生的子代个体的适应度超过其父代个体的适应度时,所产生的子代个体才能代替其父代个体而遗传到下一代种群中,否则父代个体仍保留在下一代种群中。由于子代个体和父代个体之间编码结构具有相似性,所以替换掉的只是一些编码结构相似的个体,故它能够有效地维持种群的多样性,从而避免产生局部最优解,改善未成熟收敛。 6.解决了在实际组卷中遇到的试卷中试题的分值分配问题,研究了对选择题、填空题和问答题的难度和答题时间的调整策略。 7.利用C#.net编程实现了基于上述改进的遗传算法自动组卷系统,文中给出了主要界面和部分关键源代码。