基本遗传算法的缺陷分析:设一套题共需5种题型,共20道题目。设每道题在题库中有100道侯选题目。那么总共的组卷空间大小大约是10020 ,假设遗传算法的种群大小为1000,叠代1000次,那么最多搜索个体数量为1003 ,可见传统遗传算法的整个搜索空间相对组卷空间的大小来说,是一个非常小的区域。所以传统遗传算法搜索后期效率低并极易出现末成熟收敛的情况。

1.渐进式的遗传算法的具体步骤

(1) 先将试题按各属性粗略分类,例如将难度按0.2的间隔分为5个等级,处于同一个等级内的试题,可以看作是难度大致相同。将区分度分为5个等级。试题按这两种属性只有5*5=25种不同类型的题。同理也可将其他属性加入。通过这样一个粗略的分类,将很大程度的降低试题的类型数。

(2) 根据实际的试题库,算出每个类的参数指标。其中包括类中的试题数目N,类中试题各属性的平均值,类中试题各属性的方差。

(3) 用类中试题各属性的平均值代表类所对应的试题属性,组卷首先在类上进行。根据类组出的试卷,本文称作组卷模式。

(4) 对于每种组卷模式,计算它的总目标函数值记为f(X),并引入罚函数g(X),表示它的模式优劣性(例如:统计一套组卷模式中属于每个类的试题数目,若它大于步骤2中统计出来的类的试题数目N,那么此模式不可行。若某个类中试题数目很多,则可以多选用此类中的试题,因为它在细化的时候有更多的选择)。根据这两个函数值计算出组卷模式的适应度,并使用遗传算法来得到较优的组卷模式。

(5) 在每个组卷模式基础上,将每个类进一步划分成更细的类,用遗传算法得到更细致的组卷模式。

(6)将组卷模式中每一个类换成类中具体的试题,用遗传算法得到最终组卷方案。

2.渐进式遗传算法应用于智能组卷系统的优点

(1)如果想组出一套难度适中的试卷,那么由大部分试题属于难度非常大(或非常小)的类的组卷模式将不会采用,这样可以去掉许多无用的搜索空间,从而节约时间。

(2)由属性相近的题互换而产生的不同组卷方案在模式中都算作一种,因此每种模式都是合并了大量相似方案后的一个等价类代表,这样就减少了搜索的范围。

(3)不同组卷模式下的组卷方案相对独立,这样即可以保证遗传算法中种群的多样性,又可以避免由于模式交叉而产生的无用组卷方案。

我的淘宝小店:广西桂圆

 

淘宝掌柜:广西桂圆

转载于:https://www.cnblogs.com/feathersky/archive/2010/05/05/1727898.html

渐进式遗传组卷算法(大规模题库,实际可用的算法) 智能组卷系统相关推荐

  1. 浪潮NF5568M4落地猿题库 让机器老师更智能

    近年来人工智能开始真正进入了人们的生活,开始与各行业应用融合,并让原有的应用更高效.更智能.比如在在线教育行业,"小猿搜题"运用浪潮NF5568M4 GPU服务器将其线下模型训练时 ...

  2. 数据结构与算法 经典题库练习

    文章目录 一.字符串.时间复杂度与逻辑思维训练 1.Z字形变换 2.字符串转换整数(atoi) 3.字符流中第一个不重复的字符 4.小易的英语软件 二.指针.数组.链表组合练习 5.盛最多水的容器 6 ...

  3. 算法题库 java实现_LeetCode算法题-Most Common Word(Java实现)

    这是悦乐书的第321次更新,第342篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第190题(顺位题号是819).给定一个段落和一组禁止词,返回不在禁止词列表中的最常用词 ...

  4. 线性表算法题库_数据结构与算法(线性表)练习题

    .word 资料 . 三.写一个算法合并两个已排序的线性表. (用两种方法:数组表示的线性表(顺序表)和 指针表示的线性表(链表) ) 要求: 1 .定义线性表节点的结构,并定义节点的型和位置的型. ...

  5. Leetcode题库 119.杨辉三角(单数组迭代 C实现)

    文章目录 解析 思路 效果 代码 解析 ret:存储迭代数组 思路 ret数组: 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 1 5 10 10 5 1 -- 迭代公式:ret[i]= ...

  6. 华为OD机试2023年最新题库(JAVA、Python、C++)

    我是一名软件开发培训机构老师,我的学生已经有上百人通过了华为OD机试,学生们每次考完试,会把题目拿出来一起交流分享. 2023年5月份题库已经更新为OD统一考试(B卷),题库由三部分组成: 1.202 ...

  7. 两个listmap合并去重_我是如何用单机实现亿级规模题库去重的?

    题外话:欢迎将公众号设置为星标,技术文章第一时间看到.我们将一如既往精选技术好文,提供有价值的阅读.如有读者想要投稿,可以在公众号任意文章下留言,技术博主奖励丰厚. 作者:haolujun cnblo ...

  8. 两个listmap合并去重_单机亿级规模题库去重,如果是你会怎么做?

    作者:haolujun原文:https://www.cnblogs.com/haolujun/p/8399275.html 背景 最近工作中遇到了一个问题:如何对大规模题库去重?公司经过多年的积累,有 ...

  9. 基于区块链的Smart系统-题库及试卷管理模块的设计与开发

      1引言 1.1课题背景 随着网络技术的飞速发展,现在很多国外的大学和社会其他部门都已经开设了远程教育,通过计算机网络实现异地教育和培训.现在,计算机硬件技术的发展已经达到了相当高的水平.但是,远程 ...

最新文章

  1. MFC Initinstance中DoModal()返回-1
  2. Hibernate基础小案例
  3. 全链路灰度这样做,新需求迭代上线也能放心干饭
  4. Go Web:HttpRouter路由(一)
  5. dom内容区域的滚动overflow,scroll
  6. 解决阿里云主机受到攻击的问题 2
  7. HDU 1114 iggy-Bank(完全背包)
  8. PHP超级全局变量、魔术变量和魔术函数
  9. 【Python PE解析器】——制作解析PE文件软件 并进行编译EXE程序 并打包为单个安装程序(全程详细包资料)
  10. r语言library什么意思_关于R语言,你需要知道什么?
  11. 【JVM学习笔记】-字节码-第一章(多图,多表,实操)
  12. MAYA oceanShader/海洋(纹理)
  13. v2ex 非计算机专业,计算机的在职研究生值得考吗?
  14. linux卸载集群oracle,Oracle RAC集群卸载步骤
  15. 贪心——绝对值不等式——货仓选址
  16. 用sdk画三叶玫瑰曲线
  17. 35dir分类目录伪静态规则文件全网最全.htaccess,httpd.ini,web.config
  18. 关于在simulink中使用s-function后出现State derivatives returned by S-function during flag=1 call must be a rea
  19. Contiki中MAC层与RDC层
  20. 如何在不同情况下对别人表示赞美?

热门文章

  1. tuxedo文件ubbconfig配置说明
  2. mysql 获取工作日上一天的数据 环比MYSQL 两日期之间的工作日(除去周六日,不考虑节假日)
  3. Angular2视图操作之ViewChildViewChildren
  4. 贪心,POJ(2709)
  5. 开发环境配置--Ubuntu+Qt4+OpenCV(三)
  6. Bazel发布Beta版本,增加对Groovy、Rust和Scala语言的支持
  7. ocp 042 第七章:管理方案对象
  8. 数据集的使用方法和技巧
  9. hive的用户和用户权限
  10. C语言经典程序之:求十个整数中的最大最小数并输出(指针)