1、 沈阳化工学院 本科毕业论文题 目:_试卷自动生成系统_ _院 系: _ 计算机科学与技术学院 专 业: 软件工程 班 级: 0801 _ 学生姓名: 王兴 _ 指导教师: 郑秀_ _ 论文提交日期: 年 月 日论文答辩日期: 年 月 日摘 要随着计算机技术的发展和普及,在我们的学习和日常生活中都离不开计算机技术,大到科研的超级计算机,小到我们日常使用的手提电话,实际都是计算机技术的应用。对于学校、企事业单位来说,计算机特别是PC机已经相当普及,大家对计算机的操作更加熟悉。为了充分利用现有的计算机系统减轻教师的劳动强度,摒弃传统的手工出题方式,开发了试卷生成系统。 本系统运用Visual Ba
2、sic 开发出试题自动生成系统.利用其提供的各种面向对象的开发工具, 建立系统应用原型,然后进行需求迭代,不断修正和改进,直到形成满意的可行系统。该系统结构良好、使用方便,题库数据输入简单。系统能够实现人工选题和随机抽题两大功能,系统开发包括后台数据库的建立、维护以及前端应用程序的开发两个方面。该系统有安全的用户登录模块、方便快捷的浏览界面、易于操作的功能模块。本文的分析基于知识点的试题库结构基础上,阐述以知识点难度系数和题型为主要控制参数的组卷算法的建立与实现方法。模块围绕实用性设计,比如,试题管理模块就是为了实现试题的录入、试题的维护、试卷的生成而设计的;查询模块是为了实现试题和试卷的快速
3、查询而设计的;系统管理是考虑系统的安全性,用户名和密码,整个设计简洁明了,同时也就方便了操作。 本系统界面友好,能方便地生成试卷,试卷的维护(修改、删除试题)操作简单,组卷灵活快捷,查询试题或试卷迅速,可以适应各种试卷对知识更新的要求,还要具有一定的安全性。本软件的开发成功为试卷的生成工作又添加了一款实用性较强的软件,为试卷生成系统告别手工管理的时代又推进了一大步。关键词:试卷;知识点;自动组卷; Visual Basic; SQL Server;AbstractWith the development and popularization of computer technology, th
4、e computer technology is important in our study and daily life. The scientific research of the super computer and our daily use mobile phone is the using of the computertechnologyReal is the using of the computer technology Enterprises and institutions for example,computer especially PC are widely u
5、sed. Many people all are familiar with computer operationIn order to make use of the existing computer system to reduce the workload of teacher and abandon the traditional manual designing test paper, the automatic test paper generating system is developed. The automatic test paper generating system
6、 is developed using Visual Basic Using all kinds of object oriented development tools of VB, Using all kinds of object oriented development tools of VB, The prototype system application is designed,then is revised until generating a feasible system The system structure is good, easy to use and simpl
7、e question bank data inputThe system have realize artificial topics and taking random topic two big functionsThe system including the backend database building, maintenance and development of front application program of two aspectsThe system have safe user login module,convenient and fast browsing
8、interfaceEasy operation function modulesThis paper based on the analysis of the database based on structure, article discusses the difficulty coefficient of knowledge and as the main topic of the control parameters (the establishment of the group algorithm and its implementationThe module around pra
9、ctical designFor example,editing is in order to realize the test module typing and maintenance .The inquiry module is to realize the exams and tests designed fast inquiresSystem management is considering the security of the system such as user name and passwordThe whole design is simple and clear,at
10、 the same time also would be convenient operation.This system have friendly interface and easy to generate test paperThe maintenance of examination paper (modification and deletion of test questions) simple operation and form the paper flexible quickAnd inquires questions or papers quicklyAdapt to a
11、ll kinds of knowledge updating of the test requirements of difficultyand have certain securityThe successful development of the software for paper generated work and added a practical stronger softwareFor test paper generation system to say goodbye to the era of manual management and promote a big s
12、tep.Keywords: papers; knowledge; automatictestpapergeneratingsystem; Visual Basic;SQL Server目录目录11 概述41.1目的41.2意义41.3论文组织52 文献综述62.1研究现状62.2.国内外动态62.3 课题提出73方案设计与论证93.1用户需求93.2功能需求93.3系统流程图103.4 性能需求103.4.1 加载数据效率要求103.4.2 界面风格要求103.5 开发环境103.5.1 软件环境103.5.2 硬件环境113.6关键技术113.6.1 数据库管系统113.6.2 数据库系统设
13、计123.6.3 Visual Basic具体特点134 系统设计144.1 系统功能模块图144.2 数据库设计164.2.1 实体E-R图164.2.2数据库的存储结构164.3组卷算法194.3.1 现有算法分析194.3.2 回溯试探法的应用194.4自动组卷204.5手动组卷215 系统实现245.1 登录模块245.2 权限管理275.3 系统管理275.3.1 用户管理275.3.2 试题管理285.4 试卷生成管理295.4.1自动生成试卷305.4.2手动生成试卷316 系统的测试356.1 测试方法356.2 测试配置环境356.3 测试目的366.4 测试过程366.4.
14、1 测试自动生成试卷模块366.4.2 测试手动生成试卷模块36结束语38致 谢39参考文献401 概述 1.1目的随着各学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之一,一直没有得到较好的改善,试卷的编辑、整理工作占了很大的工作量。传统的手工出卷过程,存在不少弊端:l 出现不必要的重复劳动,造成人力资源及时间上的浪费;l 缺乏科学的衡量、评价及统一试卷难易度、试卷质量的有效手段;l 存在自教自考,考前漏题的情况;l 试卷容易出现错漏缺现象,引起不必要的麻烦。针对这种情况,经过总结分析,我开发出了试卷生成系统。本系统从设计理念上坚持采用树状管理结构,每道题目都由“科目”、“学期
15、”、“章”、“节”、“题型”、“认知层”这六个参数组成,再而演变出试卷和成绩。故本系统对小学、初中、中专、高中、大专、大学、单位自办学校和教师个人都适用。本系统希望利用计算机强大的数据处理功能,由计算机逐步代替传统的人工出卷,并且规范出卷程序,使出卷工作更加科学化、现代化,使教育工作更上一层楼。1.2意义随着计算机技术的发展和普及,在我们的学习和日常生活中都离不开计算机技术,大到科研的超级计算机,小到我们日常使用的手提电话,实际都是计算机技术的应用,对于学校、企事业单位来说,计算机特别是PC机已经相当普及,大家对计算机的操作更加熟悉,充分发挥设备潜能是一种节约的表现,是一种美德。传统的考试出题
16、总是教师考前集中出题、集中组卷,这样很难保证试卷的质量,进而不能准确反映学生的学习效果。为促进教学手段的现代化,提高教学质量,减轻教师在出题、组卷和成绩分析中的工作量,帮助教师方便、快速、准确地分析、评价学生的学习成绩,本研究在Delphi编程环境下开发了一套能实现题库管理和自动生成试卷的软件,将试题管理、试卷生成和考试分析集为一体,不仅能帮助教师适时编制各类考试题目、生成标准试卷,还能对学生成绩录入、保存、分析并生成考试总结。本研究大大减轻了教师的工作量,有效地提高了整个考试过程的效率,对学校推动教学改革、提高教学质量起着很大的促进作用。设计编写试卷生成管理系统,是基于二种目的:一是充分利用
17、现有的计算机系统减轻工作人员的劳动强度。二是摒弃传统的手工整理、以试卷(纸质)的形式存放到档案室,浪费纸张等原材料,不利于保护环境。一个好的试卷生成管理系统,要求界面友好,能方便地录入试题,试卷生成的维护(修改、删除试题)操作简单,组卷灵活快捷,查询试题或试卷迅速,以适应各种知识更新对试卷难度的要求,还要具有一定的安全性。为此,在对系统进行概要设计时,就充分考虑到以上的因素,模块围绕实用性设计,比如,系统管理是考虑系统的安全性,给登录人员记录工号、用户名和密码,在对试卷生成进行操作时,系统自动记录作业人员的工号,并存入数据库。整个设计简洁明了,同时也就方便了操作。本文全面详细地介绍了试卷生成管
18、理系统的设计思想、实现原理和使用技巧。本软件的开发成功为试卷生成的管理工作又添加了一款实用性较强的软件,为试卷生成管理告别手工管理的时代又推进了一大步。1.3论文组织论文全面详细地介绍了试卷生成系统的设计思想、实现原理和使用技巧。论文按如下方式组织。第一部分是主要是对系统的开发背景和研究现状进行详细的介绍。第二部分主要是对开发工具的介绍。第三部分是主要是对本系统做详细的需求分析。第四、五、六部分是本文的主要内容,是软件的开发设计。第四部分主要对于系统组卷的设计,重点介绍了自动生成试卷,手动生成试卷和抽取现有试卷三种组卷算法。而第五部分是系统的实现部分,具体的分析了三种组卷算法的实现过程。同时也
19、仔细说明了系统实现过程中的关键技术。第六部分是系统的测试部分,利用测试实例来说明系统的可用性和数据的准确性。2 文献综述2.1研究现状 在以往的教学中,老师出试卷大多由手工出卷,这样生成的试卷往往会有知识点分布太集中、难易程度不当、分值分布不均等一些缺点;这样,既增加了老师的负担,也没有达到很好考查学生学习的真实水平,造成教学上的失误。 基于以上的原因,有很多从事软件开发的人员,在试卷自动生成方面做了很大的研究。目前这一领域也以良好的发展姿态而不断进步,早期已经有了一些类似的系统,但经过软件开发人不断的完善,大致形成了具备如下功能的系统:删除试题、批量录入试题、试题交流、合并题库、自定义试题参
20、数等一些功能,其中试题交流功能非常实用,主要用于同事间交流试题。系统“体积”非常小,压缩后只有几百KB。平时只要将一些试题或从网络下载的试题,按“学科”、“章节”、“知识点”、“题型”、“难易程度”五个参数进行归类,录入题库,需要用时,只要输入一些查询条件即可查出所要找的试题。生成试卷非常方便,只需几分钟就可以生成一份试卷,生成的试卷还配有答案,更重要的是软件能与WROD的完美结合,试题、答案的编辑、试卷的排版打印全部由WORD来完成,试卷和答案都可保存为*.DOC格式。 可见,试卷自动生成系统这方面的研究日益成熟,这不但减轻了教师的工作负担,也使得教学评价更加科学化、规范化,有利用教育事业的
21、发展。2.2.国内外动态国外发展现状美国是目前远程教育规模最大的国家。44%的高等学校向全社会提供各种远程教育,接受远程高等教育的学生约占全日制在校学生的32%,此外,还有21%的高校计划在今后3年内开展远程教育。远程教育开设的学历、学位课程数达到4.9万个,基本覆盖了美国高等学校的所有学科和专业。到1998年,以互联网为主要手段开展远程教育的高校占60%左右,比3年前增长了3倍,其余学校也将在3年内开始利用互联网开展远程教育。著名的哈佛大学今年开设24门远程教育课程,只要可以上网,学生在世界任何一个地方都可以加入课堂并发表意见。而麻省理工大学则将于2001年开始推广电子课本,这将使远程教育的
22、学员获得可以随时更新的多媒体教材。英国于今年2月,英国高等教育基金理事会(HEFCE)拟订了一个雄心勃勃的”E-University”计划,要整合英国各大学的力量,建立一所网上大学。在我国,远程教育也正在如火如荼的展开,从CNNIC(中国互联网络信息中心)近五年调查情况,我们可以看出,我国上网计算机数、上网用户及CN下注册域名几乎每半年以翻一翻的速度在增长,带宽也逐年扩大。近五年内,我国的互联网正以欣欣向荣的姿态日渐走向成熟。根据统计,以EDU域名注册的网站相对以COM域各注册的网站而言要少的多,但也以每半年增加100家左右的速度向上攀升。但是我国正处于教育供需矛盾突出阶段,教育软件严重不足,
23、教师资源短缺,学习人数逐年快速增长。依靠传统的教育方式已不能满足教育的飞速发展,教育信息化能够突破教育环境的时空限制,把外部世界引入课堂,使学生获得与现实世界较为接近的体验。教育信息化为我们展示了未来教育的美好前景。知识的共享与共建思想,ADL(高级分布式学习)思想的提出及数字化信息资源网的建设趋势,都促使我们尽快研制一种学习系统满足社会对知识信息的需求. 为了解决校园网络教育资源系统的不完善,不统一,积极利用网络资源,完善教育手段,最大限度地发挥教师资源,最佳配置教学内容:提供尽可能简单的、统一的界面,为学习者和管理者带来方便,为现代信息社会培养更多高素质人才。2.3 课题提出高校教务管理工
24、作中一项非常重要的工作就是考试管理工作,每学期各专业考试,从组织出卷到试卷的印制及试卷的管理等工作非常繁琐且工作量很大,这种组织管理方式不仅工作任务繁重而且试卷的标准化程度、难易程度、题量大小等各方面难以控制,难以形成有效的试题库,不利于充分发挥历年来的优秀试题及试卷的作用,给试题和试卷的管理带来很多问题和困难。鉴于这种情况,利用计算机进行试卷的自动生成并逐步积累形成有效的试题库,对试题和试卷的管理将变的高效而便捷,对提高工作效率,使试卷管理逐步走向正规化自动化将起到十分重要的作用。课程改革后,一本教材统天下的局面已不复存在。于是,不同版本多样化的教材,辅导资料应运而生。各个学校不再使用单一固
25、定的教材,那么学校原有的教学思路,方案也要随之进行改革。新课标明每个阶段的学习目标,至于学什么、学多少、怎么学,没有做具体规定,所以对每一个学校首先需要结合自己本身的条件制定向适应的标准,选择向适应的教材与辅导资料。目前,市场上的各类资料特别多,特别杂,内容水平上更是褒贬不一、参差不齐,所以很难找到一套适合自己学校教师教学,学生学习的材料。除此以外,教务管理工作中一项非常重要的工作就是考试管理工作,每学期各学科考试,从组织出卷到试卷的印制及试卷的管理等工作非常繁琐且工作量庞大,这种方式不仅工作任务繁重而且试卷的标准化程度、难易程度、题量大小等各方面难以控制,难以形成针对本校学生的试卷,给出卷工
26、作和试卷管理带来很多问题和困难,不利于学生暴露学习中的不足,也不利于老师把握学生对知识了解的情况。鉴于这种情况,利用计算机的快速计算、网络的资源共享和数据库的信息维护三者的优势,综合新课标、各辅导资料,以及学校教学特点,将各科习题、资料进行有效的整理和总结,形成适合本校教学的教学资源信息库,使学校的教学资源可以取百家之所长,使得教学更具备针对性,让出卷工作和试卷管理变得高效而便捷,对提高工作效率,使试卷管理逐步走向正规化、自动化将起到十分重要的作用。3方案设计与论证3.1用户需求利用计算机建立试题库,实现计算机自动选题组卷,是CAI工程的重要组成部分,也是实现教考分离的一个重要手段。利用计算机
27、组卷,不仅能节省教师的宝贵时间,提高工作效率,而且能消除出卷人主观意识的影响,使考试更加标准化,更加客观,真实,全面地反映反映教学的实际效果,有利于教学质量的提高。建立了试题库系统以后,可实行教考分离,促使任课老师必须按照教学大纲的要求认真备课,认真组织教学内容,改进教学方法,对提高教学质量和整体教学水平有着非常重要的意义。每次考试后,还可利用计算机对试卷和考试分数进行分析和评价,使考试这一教学环节更加科学化和规范化。作为试题库系统中的一部分,试卷生成系统必须满足如下需求:(1)灵活多样的组卷方式,如手工组卷和自动组卷。(2)既能临时生成试卷,又能直接使用以前生成的试卷,也就是要求能对生成的试
28、卷进行保存,以便下次直接使用,并能删除不再需要的试卷。(3)试卷的保密性要求,只有授权人员才能生成和查阅试卷。(4)试卷生成速度不宜太慢。(5)生成的试卷按照规定的模板输出,并能导出到word文档中。(6)生成的试卷既可以直接打印,也可以在word中修改和打印。(7)友好的用户界面。3.2功能需求本系统是试卷生成系统,主要有三方面的功能需求,其分别是:(1)题库管理:为了用户能方便管理现有的试题,此模块主要有预览试题,保存答案,删除添加试题三大功能。(2)手动生成试卷:为了能按照用户的意愿组卷,用户可以按试题所涉及的知识点浏览各种题型,生成一份知识覆盖面广泛的试卷,并能保存试卷。 (3)自动生
29、成试卷:用户能选择生成试卷的题型,试题数量,试题难度,以及试卷分值,且有预览试卷,预览答案,保存试卷和答案的功能。3.3系统流程图根据对用户的调查,本系统有三类用户使用,分别是管理员,教务管理员和教师。这三种身份的人具有不同权限,管理员负责管理系统帐号;教务管理员负责管理试题、审核试题、打印试题;教师只能浏览和根据需要组卷。本系统主要是对试题组卷的管理,根据需求分析,可以得到系统流程如图3-1所示。图3-1 系统流程图3.4 性能需求3.4.1 加载数据效率要求本系统的使用不受时间限制,可以24小时正常使用,对于用户登陆,试卷预览,答案预览,试卷生成功能响应时间不宜超过5秒钟。 3.4.2 界
30、面风格要求整体以白色和淡蓝色为主,辅助米黄色和淡绿色给人清新,舒坦的感觉,在1024*768分辨率下达到最佳显示效果,界面简洁清爽,不能过于复杂。3.5 开发环境3.5.1 软件环境操作系统:Windows98以上/ME/2000/XP等数据库:SQLServer2000开发语言: Visual Basic开发工具: VB6.03.5.2 硬件环境 CPU:PII200以上内存:256MB以上硬盘:2.1GB以上(可用空间最好在160MB以上3.6关键技术数据库处理在信息系统的研究中一直是非常重要的主题,然而,近年来,随着World Wide Web(WWW)的猛增及Internet技术的迅速
31、发展,使得数据库技术之时成为最热门技术之一。数据库技术能使Internet应用超越具有早期应用特点的简单的发布。同时,Internet技术提供了一种向用户发布数据库内容的标准化的访问方法。这些技术没有脱离经典数据库技术的要求。它们只是加重了数据库技术的重要性。数据库的设计和开发及包括艺术有包括工程。理解用户的需求,然后,把它们转变为有效的数据库设计是一个艺术过程。把设计转变为实际的数据库,并且这些数据库带有功能完备、高效能的应用,是一个工程过程。数据库的目的是帮助人们跟踪事务。经典的数据库应用涉及诸如订单、顾客、工作、员工、学生、电话之类的项,或其它数据量较大、需要密起关注的事务。最近,由于数
32、据库的普及,数据库技术已经被应用到了新的领域,诸如用于Internet的数据库或用于公司内联网的数据库。数据库也被越来越多地应用于生成和维护多媒体应用程序上。3.6.1 数据库管系统数据管理系统(DBMS)是用描述、管理和维护数据库的程序系统,是数据库系统的核心组成部分。它建立在操作系统的基础上,对数据库进行统一的管理和控制。其主要功能有:1) 描述数据库:描述数据库的逻辑结构、存储结构、语义信息和保密要求等。2) 管理数据库:控制整个数据库系统的运行,控制用户的并发性访问,检验数据的安全、保密与完整性,执行数据的检索、插入、删除、修改等操作。3) 维护数据库:控制数据库初始数据的装入,记录日
33、志,监视数据库性能,修改更新数据库,重新组织数据库,恢复出现故障的数据库。4) 数据通信:组织数据的传输。3.6.2 数据库系统设计在软件需求分析阶段,搞清楚了软件“做什么”的问题,形成了目标系统的逻辑模型。现在我们所要做的就是要把软件“做什么”的逻辑模型变换为“怎么做”的物理模型,即着手实现软件的需求。首先,我们需要描述的是系统的总的体系结构(1) 数据库模块设计:系统的概要设计中最重要的就是系统模块化设计。模块化是指解决一个复杂问题时自项向下逐层把软件系统划分成若干个模块的过程。每个模块完成一个特定的功能,所有的模块按某种方法组织起来,成为一个整体,完成整个系统所要求的功能。将系统划分为多
34、个模块是为了降低软件系统的复杂性,提高可读性、可维护性,但模块的划分不能是任意的,应尽量保持其独立性。也就是说,每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单,即尽量做到高内聚低耦合,提高模块的独立性,为设计高质量的软件结构奠定基础。(2) 数据表设计: 数据表的设计是指设计数据库中表的结构,数据表的逻辑结构包括:属性名称,类型、表示形式、缺省值、是否关键字、可否为空等。关系型数据库要尽量按关系规范化要求进行数据库设计,但为了使效率高,规范化程度应用环境和条件来决定。数据表设计不仅要满足数据存储的要求,还要增加一些如反映有关信息、操作责任、中间数据的字段或临时数据表。
35、(3) 存储设备和存储空间组织:确定数据的存放地点、存储路径、存储设备等,备份方案,对多版本如何保证一致性和数据的完整性。(4) 数据使用权限设置:针对用户的不同使用要求,确定数据的用户使用权限,确保数据完全。3.6.3 Visual Basic具体特点Visual Basic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建Active
36、X控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。1) VB语言特性属性、方法和事件在Visual Basic中,可以通过属性、方法和事件来说明和衡量一个对象的特征。a) 事件(Event)事件是指发生在某一对象上的事情。事件又可分为鼠标事件和键盘事件。b) 方法(Method)方法是用来控制对象的功能及操作的内部程序。c) 属性(Property)属性是指用于描述对象的名称、位置、颜色、字体等特征的一些指标。可以通过属性改变对象的特性。数据库系统中的数据以记录为单位进行存储的,记录与记录之间保持独立,某些数据的改变不会影响到其他数据的内容和结构。2) 开发环境特点a) VB的程
37、序是一种基于窗体的可视化组件安排的联合,并且增加代码来指定组件的属性和方法。完全的事件驱动模型,功能强大的程序调试器可以为调试程序设置断点并随时查看程序调试其中的变量和字段值b) VB的程序可以包含一个或多个窗体,或者是一个主窗体和多个子窗体增强的函数和命令提示功能,使用户能够对照输入,从而减少错误的产生4 系统设计4.1 系统功能模块图根据需求分析,将系统分为四个模块:系统管理模块,试卷生成管理模块,数据库管理系统,系统帮助模块。系统功能模块结构如图4-1所示。题库与试卷生成系统系统管理题库管理试卷生成帮助和关于用户管理密码管理题型设置试题更新维护自动生成试卷手动生成试卷系统关于系统帮助图4
38、-1 系统功能模块图下面对各功能模块的子功能进行较详细的讨论。(1) 系统管理模块该模块包括用户管理模块和用户密码管理模块。系统启动时调用此模块,要求用户先进行登陆。登陆功能模块如图4-2所示。(2) 试卷生成管理模块试卷生成管理模块主要包括如下子模块:n 手动生成试卷模块:显示生成试卷,保存试卷功能。n 自动生成模块:显示生成试卷,预览试卷,预览答案,保存试卷功能详细的试卷生成管理功能模块如图4-3所示。图4-2 登陆模块功能图图4-3 试卷生成管理模块功能图 (3) 系统帮助模块 主要包括系统帮助和系统关于。系统帮助模块结构如图4-4所示。系统帮助系统关于帮助图-4-4 系统帮助模块功能图
39、4.2 数据库设计4.2.1 实体E-R图本系统的实体有:用户实体、试题实体,试卷实体各个实体具体的描述E-R图如图4-5所示。图4-5 试题实体E-R图4.2.2数据库的存储结构根据系统功能设计,把数据库命名:STGL,在SQL Server 2000数据库创建了题型表、难度程度表、出卷人表、用户信息表等。各数据表的具体情况如表1至表9所示。表1用户信息表(usermanagement)字段中文名字段英文名字段类型字段长度姓名NameIDchar20密码PWDchar20用户类型QXint2表2 题型表(TX)字段中文名字段英文名字段类型字段长度题型Typechar10名称TypeNamec
40、har10表3 难度程度表(NYD)字段中文名字段英文名字段类型字段长度编号BHint4难易度NDchar4表4 选择题表(selects)字段中文名字段英文名字段类型字段长度题号BHchar10题型Typechar10题目Topicchar100选项AAchar100选项BBchar100选项CCchar100选项DDchar100正确答案Answerchar1难易度NDchar4出自章节ZJchar2表5 填空题表(adds)字段中文名字段英文名字段类型字段长度题号BH char10题型Typechar10题目TMchar100空1K1char50空2K2char50空3K3char50难
41、易度NDchar4出自章节ZJchar2表6 简答题表(ask)字段中文名字段英文名字段类型字段长度题号BH char10题型Typechar10题目TMchar100答案Answerchar200难易度NDchar4出自章节ZJchar2表7 阅读程序题表(YDCX)字段中文名字段英文名字段类型字段长度题号BHint10题型Typeint10题目TMchar100答案Answerchar200难易度NDchar4出自章节ZJchar2表8 出卷人表(SJ)字段中文名字段英文名字段类型字段长度 试卷代号SJDH datetime8出卷老师CJLSchar20难易度NDchar44.3组卷算法4
42、.3.1 现有算法分析自动组卷是考试系统自动化或半自动化操作的核心目标之一,而如何保证生成的试卷能最大程度的满足用户的不同需要,并具有随机性、科学性、合理性,这是实现中的一个难点。尤其在交互式环境下用户对于组卷速度要求较高,而一个理论上较完美的算法可能会以牺牲时间作为代价,往往不能达到预期的效果。因此,选择一个高效、科学、合理的算法是自动组卷的关键。以往的具有自动组卷功能的考试系统大多采用随机选取法和回溯试探法。随机选取法根据状态空间的控制指标,由计算机随机的抽取一道试题放入试题库,此过程不断重复,直到组卷完毕,或已无法从题库中抽取满足控制指标的试题为止。该方法结构简单,对于单道题的抽取运行速
43、度较快,但是对于整个组卷过程来说组卷成功率低,即使组卷成功,花费时间也令人难以忍受。尤其是当题库中各状态类型平均出题量较低时,组卷往往以失败而告终。回溯试探法这是将随机选取法产生的每一状态类型纪录下来,当搜索失败时释放上次纪录的状态类型,然后再依据一定的规律变换一种新的状态类型进行试探,通过不断的回溯试探直到试卷生成完毕或退回出发点为止,这种有条件的深度优先算法,对于状态类型和出题量都较少的题库系统而言,组卷成功率较好。 分析上述两种算法的优缺点,不难发现,在限制条件状态空间的控制下,随机选取法有时能够抽取出一组令用户满意的试题。只不过由于它随机选取试题的范围太大,无法确定目前条件下哪些区域能
44、够抽取合适的试题,反而可能在那些已经证明是无法抽取合适试题的区域内反复选题,进行大量的无效操作进入死循环,最终导致组卷失败。回溯试探法组卷成功率高,但它是以牺牲大量的时间为代价的,由于本软件只是个小型的单科考试组卷系统,结构简单,出题量也较少,所以本系统选择相对简单,组卷成功率较好的回溯试探法进行组卷。4.3.2 回溯试探法的应用回溯算法也叫试探法,它是一种系统地搜索问题的解的方法。回溯算法的基本思想是:从一条路往前走,能进则进,不能进则退回来,换一条路再试。用回溯算法解决问题的一般步骤为: 1、定义一个解空间,它包含问题的解;2、利用适于搜索的方法组织解空间;3、利用深度优先法搜索解空间;4
45、、利用限界函数避免移动到不可能产生解的子空间。 问题的解空间通常是在搜索问题的解的过程中动态产生的,这是回溯算法的一个重要特性。 回溯法是一个既带有系统性又带有跳跃性的搜索算法。它在包含问题的所有解的解空间树中,按照深度优先的策略,从根结点出发搜索解空间树。算法搜索至解空间树的任一结点时,总是先判断该结点是否肯定不包含问题的解。如果肯定不包含,则跳过对以该结点为根的子树的系统搜索,逐层向其祖先结点回溯。否则,进入该子树,继续按深度优先的策略进行搜索。回溯法在用来求问题的所有解时,要回溯到根,且根结点的所有子树都已被搜索遍才结束。而回溯法在用来求问题的任一解时,只要搜索到问题的一个解就可以结束。搜索:全面访问所有可能的情况,分为两种:不考虑给定问题的特有性质,按事先顶好的顺序,依次运用规则,即盲目搜索的方法;另一种则考虑问题给定的特有性质,选用合适的规则,提高搜索的效率,即启发式的搜索。本系统使用的是回溯法的启发式搜索,以试题题型,试题分值和选题数量为约束条件进行随机搜索,而把设置的试卷总分数作为一个解空间。如果各题型分值之和等于用户设置的试卷总分数,则产生一个有效解,系统生成一份试卷,试题的题型,编号,分值等信息储存进试题库表中。通过系统的预览试卷功能,系统通过所存信息搜索数据库,获取试
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100