【简单智能组卷系系统设计】

操作方法

  • 01

    智能组卷是考试系统的核心功能之一,智能组卷就是指考试系统从题库中抽取试题,需要满足教师或学生需求的考试试卷。在当今教学环境中,教师或学生希望能够在较短的时间内组合成一份或若干份既符合需求,又具有随机性的试卷。所以智能组卷的研究的重点在于组卷算法。 一、常见的组卷算法有:随机组卷法、回溯法、遗传算法三种 1.随机法 随机法是指依据已经确定的试卷标准进行随机抽取试题,最终组合成试卷的算法,它是组卷算法中最为常见的算法。随机法是通过抽调过程的不断重复,直至组卷过程的完成或者无法抽取满足用户需求试题为止[1]。 用随机法进行组卷,其过程比较简单,但其具有不可回溯的性质,是依据当前的试卷标准来选择试题。随机算法虽然简单,但在一定的条件控制下,如题库数量较少,抽取试卷要求少就可以选择出满足需求的试卷[2],同时使用随机法进行组卷可以通过均匀选取方式体现试卷的公正性,更好的避免作弊。 2.回溯法 回溯法属于深度优先算法的一种,是对随机算法的一种改进。回溯法随机抽取第一状态,并记录下来,当搜索失败后,释放上次记录的状态类型,然后通过来回不断的回溯试探,直到组卷的完成[3]。 3.遗传算法 遗传算法是现在比较新兴和流行的一种组卷算法,遗传算法由于其自适应和良好的搜索技术得以流行开来。它是模拟生物界的自然选择和遗传变异的机制来求解复杂问题的随机搜索和优化算法[4]。遗传算法对于复杂和非线性的问题可以较好的解决,在机器学习、组合优化等方面得到了广泛的应用。由于遗传算法的核心思想也是在一定的要求下找到最佳的方案,这和智能组卷算法的本质是一样的。 在随机算法、回溯算法和遗传算法中,虽然社会上认为遗传算法是比较先进的,但通过对比在一个小型考试系统中随机算法比回溯法遗传算法更容易实现,效率也不低。这是因为随机算法成卷率高,且试卷质量相对较好。回溯算法和遗传算法是在组卷模式确定后,然后这个模式进行成卷,这样会导致对试题查找范围比较特点的问题。 二、题库设计 三、组卷要求 本单位的考试系统的组卷根据需要有标准组卷和自定义组卷两种,在设计过程中,自定义组卷的功能实际包括了标准组卷的要求,所以在这里我们只分析自定义组卷过程,在此过程中系统提供了题库中的信息,及自定义组卷的选项。包括:按教材章节、题型、难易比例、数目数量等组卷选项。 四、随机组卷算法实现 随机组卷思路: (1)用户输入自定义试卷要求:考试章节、题型数量。 (2)从题库中查询用户要求题库是否能满足。如能则继续下一步,不能给出错误提示,终止组卷。 (3)从题库中抽取所有满足第1个题型的题目ID保存到数组。 (4)从该数组中随机抽取满足要求数量的题目ID,可按试题难度比例进行筛选。 (5)将抽取的题目ID保存生成的试卷表中。 (6)重复3-5步,直到将所有题型抽取完毕。 (7)根据试卷表的题目ID从题库中抽取对应的题目,组卷完成。 五、算法的实现 这里只列出随机组卷的算法的方法,其它相关方法:如信息提示的进程略过。 public void choo(int quantity){ try{id=new int[lastline]; rrs.beforeFirst(); int n=0; while(rrs.next()){ id[n]=rrs.getInt(1); n++; } } catch(SQLException se){JOptionPane.showMessageDialog(null,”生成试卷错误!”,”错误”,JOptionPane.ERROR_MESSAGE);} int random[]=new int[quantity]; Random rn=new java.util.Random(); int quan=0; boolean other; int quan1; quan1=rn.nextInt(lastline); while(quan quan1=rn.nextInt(lastline); random[quan]=id[quan1]; for(int k=0;k if(!other){continue;} quan++;} String sql="INSERT INTO temp_test(chapters_id,test_diff,test_score,test_type,test_subject,answer_key) SELECT chapters_id,test_diff,test_score,test_type,test_subject,answer_key FROM "+Studenttest_choose.obje_student+" WHERE test_id="+random[0]; try{for(int k=0;k test_subject,answer_key FROM "+Student- test_choose.obje_student+" WHERE test_id="+random[k]); pssql.executeUpdate(); } } catch(SQLException se){JOptionPane.showMessageDialog(null,”组卷算法错误!”,”错误”,JOptionPane.ERROR_MESSAGE);} } } 六、结论 在进行系统设计时,不能盲目的进行,一定从该系统实际出发,选择适合的算法,先进的算法不一定是适合本系统的,在本系统几千道题目的题库中使用随机算法运行良好。

(0)

相关推荐

  • 如何使用学科网免费组卷?

    随着教育的信息化发展,教育对老师的要求也越来越高,传统的教学方式发生了很大的变化,老师们传统的组卷方式是手写试卷,或者自己在电脑上组卷(参考大量的教辅资料),这两种组卷方式大大降低了组卷效率,学科网上 ...

  • QQ拼音智能组词

    智能组词,也叫整句生成,是一种在没有相应候选词的情况下智能化生成候选词的功能,如: QQ拼音输入法还支持简拼及全简拼混合的智能组词,如下: 您可以通过“属性设置”→“常规设置”页面来设置是否开启智能组 ...

  • excel怎么制作散点图?EXCEL制作两组或多组数据系散点图的方法

    EXCEL散点图与其它图表类型稍有不同,同时选择所有数据,并不能生成多组数据的散点图,哪 么该怎么做呢? 1.如下图B:C两列是一组数据,E:F两列是另一组数据,制作方法如下: 2.选择B:C两列数据 ...

  • 驾考宝典使用指南

    工具/原料 驾考宝典电脑版 驾考宝典手机版(Android、iPhone、Symbian) 步骤/方法 设置车型,选择对应题库。 首次启动驾考宝典,可设置车型,小车、客车、货车专属题库。驾考宝典会根据 ...

  • 驾考宝典使用体验

    俗话说:有车先要考,理论最烦恼.驾考宝典针对科目一考试量身打造,通过它可以随时随地学习车考理论知识,忙里偷闲考取驾照! 在驾校跟着教练学,在家用驾考宝典练.练习模式和功能设计上,驾考宝典考虑的都很到位 ...

  • 巧用Windows7组策略为系统"瘦身"

    从Windows XP时代我们就知道,利用组策略功能可以对系统进行优化操作,包括让系统更安全、更高效。同样,这一切在Windows 7(以下简称Win7)当中也得到了继承。本文将从三个方面为大家讲解如 ...

  • 什么是谷歌拼音组句功能

    谷歌拼音提供了智能组句功能。使用该功能,您可以轻松快速地一口气输入一整句话,例如:"今天天气真的很好",而无需先输入"今天",然后输入"天气",再输入"真的"以及"很好"。由于基于语言模型的组句过程对 ...

  • 组策略使用小技巧教程

    组策略是什么? 套用官方对于组策略的定义就是管理员为用户和计算机定义并控制层序、网络资源及操作系统行为的主要编辑工具。通过使用组策略可以设置各种软件、电脑和用户策略。比如设定关机时间、调整网络速度限制 ...

  • Win10组策略怎么打开

    Win10组策略怎么打开?很多电脑高级设置都会用到组策略,如计算机配置.用户配置.禁止安装软件.设置电脑自动拨号等等都要用到.由于考虑到安全性,Win10并没有提供打开组策略入手,以至于经常有网友问到 ...