智能试题库系统的设计与实现【毕业论文】.doc

上传人:文初 文档编号:17477 上传时间:2018-04-26 格式:DOC 页数:39 大小:850.63KB
下载 相关 举报
智能试题库系统的设计与实现【毕业论文】.doc_第1页
第1页 / 共39页
智能试题库系统的设计与实现【毕业论文】.doc_第2页
第2页 / 共39页
智能试题库系统的设计与实现【毕业论文】.doc_第3页
第3页 / 共39页
智能试题库系统的设计与实现【毕业论文】.doc_第4页
第4页 / 共39页
智能试题库系统的设计与实现【毕业论文】.doc_第5页
第5页 / 共39页
点击查看更多>>
资源描述

1、本科毕业设计(20届)智能试题库系统所在学院专业班级计算机科学与技术学生姓名学号指导教师职称完成日期年月I摘要【摘要】随着计算机技术的发展,计算机辅助教育作为一门新兴的综合学科,越来越受到广大教育工作者的重视。目前针对不同的试卷要求,组出符合教师意愿的人性化试卷,是智能试题系统的最终目标,本系统根据设置不同的试卷参数利用遗传算法组出个性化的试卷,按照既定的要求,由计算机自动地从试题库中选择试题,组成符合总分、总时间要求和试题题型、试题数量、知识点、难度等约束条件要求的试卷。同时,系统基于WEB,可以让教师更加方便的对试题库系统进行维护,修改等,同时增加了添加试题,修改答案等一系列操作。【关键词

2、】智能试题库系统,数据库访问,试题库的维护,遗传算法ABSTRACT【ABSTRACT】WITHTHEDEVELOPMENTOFCOMPUTERTECHNOLOGY,COMPUTERAIDEDEDUCATIONISMOREANDMOREATTENTIONTOTHEEDUCATIONSECTORASANEMERGINGMULTIDISCIPLINARYITISTHEULTIMATEGOALOFINTELLIGENTQUESTIONSSYSTEMTHATPROVIDINGTHEDIFFERENTREQUIREMENTTESTSFORTEACHERS,THESYSTEMACCORDINGTOTHED

3、IFFERENTREQUIREMENTANDUSEGENETICALGORITHMTOPROVIDETHETESTBYTHECOMPUTERAUTOMATICALLYSELECTTHEITEMFROMTHETESTBASEINTHEFORMCONSISTENTWITHTHETOTALSCORETOTALTIMEREQUIREMENTSANDQUESTIONSANDTHENUMBEROFKNOWLEDGEPOINTS,CONSTRAINTSANDOTHERREQUIREMENTSOFTHEDIFFICULTYOFEXAMINATIONPAPERSMEANWHILE,THESYSTEMISBASE

4、DONWEBWHICHALLOWTEACHERSDOITMOREEASILYONTHETESTBASESYSTEMMORECONVENIENTLYANDINCREASETHEADDEDQUESTIONS,ANSWERSANDASERIESOFOPERATIONALCHANGES【KEYWORDS】INTELLIGENTTESTBASESYSTEM,DATABASEACCESSTESTBASESYSTEMMAINTENANCEGENETICALGORITHMII目录摘要IINTELLIGENTTESTSYSTEM错误未定义书签。ABSTRACTI目录II1绪论111研究背景及意义112开发工具的

5、介绍1121NET简介1122NET的基本架构2123C介绍3124MICROSOFTSQLSERVER20053125MICROSOFTVISUALSTUDIO2008413遗传算法42智能试题库系统需求621系统需求简介622数据需求6221数据库设计6222数据库结构设计723功能需求83遗传算法的分析与设计1031算法的选择1032遗传算法1133遗传算法在组卷算法中的应用13331初始群体的产生14332适应值函数的实现15333选择算子15334杂交16335变异17336保存最优策略函数17III4智能试题库系统的设计与实现1841试题的指标体系18411题号18412题型184

6、13难度系数18414区分度18415科目、章节、分值、时间1842智能试题库系统界面设计19421界面介绍与功能实现流程1943智能试题库系统各模块功能实现26431登陆模块26432题型修改与添加,删除模块27433修改及删除试题模块28434试题修改模块28435试题删除模块28436答案修改模块29437试题添加模块305技术难点3251遗传算法适应度函数的选择3252选择算子的选择326总结34参考文献35致谢错误未定义书签。11绪论11研究背景及意义在我国的教学过程中,考试是检验教学的重要手段。是对学生能力和水平的一种评价,也是对教师教学效果的一种检验。随着教育的普及,考试种类的层

7、出不穷,考试要求也日渐提高,传统的人工出题、考生考试等的考试形式已经不能适应现代考试的需要。随着计算机技术的不断发展,如何更加有效地利用计算机减轻教师的工作负担,更加合理地检测学生的能力和水平,成为人们所关注的一个重要问题,因此利用计算机进行考试成为一种必然的趋势。其中,智能试题库系统的对于如何保证生成的试卷能最大限度地满足用户的不同需要,并具选出具有随机性、科学性、合理性,是现实中的一个难点,也是一个研究热点。随着计算机技术的发展,计算机辅助教育越来越受到重视。近年来,题库系统在各级教育机构的推广应用中有广泛的发展。随着因特网的普及,传统单机版的题库由于其自身的限制已被淘汰,基于客户端/服务

8、器C/S的题库系统因为使用范围限制而没有得到广泛应用,并逐步被淘汰,取而代之的是基于浏览器服务器B/S模式题库系统,并已得到广大用户的认同。在计算机辅助教育的研究中,组卷算法的效率是评价考试系统好坏的一个主要因素,一个良好的组卷算法对于准确地检验学生学习成绩和教师教学效果有十分重要的作用。智能组卷算法是指按照一定的要求,由计算机自动地从试题库中选择题目并且组成符合总分、总时间要求和试题题型、试题数量、知识点、难度等约束条件要求的试卷。由于组卷要求生成的试卷能最大程度地满足用户的不同需要,并具有随机性、合理性。因此如何设计一个算法从试题库中既快又好地抽出一组最符合考试要求的试卷,是本文研究的目的

9、。本系统设计是以减轻教师在出题和组卷过程中的负担为目标,帮助教师尽可能方便、快速、准确地按照教材大纲和教学方法和教学风格,组织和建立试题库,及根据不同测评面的要求,有效地生成有针对性的测评试卷。本系统出题方便、规范,教师在短时间内可以按自己的要求完成一套考试组卷,在短时间内可以完成一套试卷答案,节省了教师的时间。12开发工具的介绍121NET简介NET是MICROSOFTXMLWEBSERVICES平台。它允许应用程序通过INTERNET进行通讯和共享数据,不管所采用的是哪种操作系统、设备或编程语言。MICROSOFTNET平台提供创建XMLWEBSERVICES并将这些服务集成在一起。NET

10、是微软下一代的操作平台,它允许人们在其上构建各种应用方式,使人们尽可能通过简单的方式,多样化地、最大限度地从网站获取信息,解决网站之间的协同工作,并打破目前计算机、2设备、网站、各大机构和工业界间的障碍即所谓的“数字孤岛”,从而实现因特网的全部潜能,搭建起第三代互联网平台。122NET的基本架构NET有三层体系结构1,用户界面表示层。2,业务逻辑层。3,数据访问层。各层的作用1,数据数据访问层主要是对原始数据的操作层,而不是原始数据,也就是说,是对数据的操作,而不是数据库,具体为业务逻辑层或表示层提供数据服务。2,业务逻辑层主要是针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑

11、处理,如果说数据层是积木,那逻辑层就是对这些积木的搭建。3,表示层主要表示WEB方式,也可以是WINFORM方式,WEB方式也可以表现成ASPX,如果逻辑层相当强大和完善,无论表现层如何定义和更改,逻辑层能完善地提供服务。具体的区分方法1,数据访问层主要看数据层里面有没有包含逻辑处理,实际上他的各个函数主要完成各个对数据文件的操作。而不必管其他操作。2,业务逻辑层主要负责对数据层的操作。也就是把一些数据层的操作进行组合。3,表示层主要对用户的请求接受,以及数据的返回为客户端提供应用程序的访问。三层结构解释所谓三层体系结构,是在客户端与数据库之间加入了一个中间层,也叫组件层。这里所说的三层体系,

12、不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才是三层体系结构,三层是指逻辑上的三层,即使这三个层放置到一台机器上。三层体系的应用程序将业务规则、数据访问、合法性校验等工作放到了中间层进行处理。通常情况下,客户端不直接与数据库进行交互,而是通过COM/DCOM通讯与中间层建立连接,再经由中间层与数据库进行交换。开发人员可以将应用的商业逻辑放在中间层应用服务器上,把应用的业务逻辑与用户界面分开。在保证客户端功能的前提下,为用户提供一个简洁的界面。这意味着如果需要修改应用程序代码,只需要对中间层应用服务器进行修改,而不用修改成千上万的客户端应用程序。从而使开发人员

13、可以专注于应用系统核心业务逻辑的分析、设计和开发,简化了应用系统的开发、更新和升级工作。3本网站采用三层架构来设计实现,要完成DAL(数据访问层)、BLL(业务逻辑层)、UI(表现层)。首先是完成数据访问层(DAL)的设计,该层主要完成所有的数据访问功能,例如添加、删除、修改数据等操作。其次是业务逻辑层(BLL),该层依赖于数据访问层(DAL)和数据实体层(ENTITY),一般定义各个业务的名称,中间极少出现具体的代码实现,主要描述业务逻辑。最后要实现的是表现层(UI),该层以来于业务逻辑层(BLL)和数据实体层(ENTITY),将业务逻辑层执行的业务操作的结果输出显示。123C介绍C是一种安

14、全的、稳定的、简单的而且优雅的,由C和C衍生出来的面向对象的编程语言。它在继承C和C强大功能的同时去掉一些它们的复杂特性(例如没有宏和模版,不允许多重继承)。C综合了VB简单的可视化操作和C的高效率,以它强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为NET开发的首选语言。目前C成为ECMA与ISO标准规范。C看似基于C写成,但又融入其它语言如PASCAL、JAVA、VB等。NET框架为C提供了一个强大的、易用的、逻辑结构一致的程序设计环境。同时,公共语言运行时(COMMONLANGUAGERUNTIME)为C程序语言提供了一个托管的运行时环境,使程序比以往更加稳定

15、、安全。其特点有1,语言简洁。2,保留了C的强大功能。3,快速应用开发功能。4,语言的自由性。5,强大的WEB服务器控件。6,支持跨平台。7,与XML相融合。124MICROSOFTSQLSERVER2005SQL,结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。绝大多数的关系型数据库管理系统都采用了SQL4语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括SELECT,INSERT,UPDATE,DELET

16、E,CREATE,以及DROP在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。从开发人员生产力的角度来看,SQLSERVER2005具有以下几大优势1,SQLSERVER2005引入使用MICROSOFTNET语言来开发数据库目标的性能。2,SQLSERVER2005提供一种新的XML数据类型,在SQLSERVER数据库中存储XML片段或文件成为可能。3,新的查询类型和在交易过程中有错误处理的功能,为开发人员在SQLSERVER查询开发方面提供了灵活性和控制力。4,SQL服务代理为各个级别的可伸缩性提供一种创新的、分发的、异步的应用系统体系结构。MICROSOFTVISUALST

17、UDIO2008是面向WINDOWSVISTA、OFFICE2007、WEB20的下一代开发工具,代号“ORCAS”,是对VISUALSTUDIO2005一次及时、全面的升级。125MICROSOFTVISUALSTUDIO2008MICROSOFTVISUALSTUDIO2008是面向WINDOWSVISTA、OFFICE2007、WEB20的下一代开发工具,是对VISUALSTUDIO2005一次及时、全面的升级。VS2008整合了对象、关系型数据、XML的访问方式,语言更加简洁。设计器中可以实时反映变更,XAML中智能感知功能可以提高开发效率。VISUALSTUDIO2008支持项目模板

18、、调试器和部署程序。VISUALSTUDIO2008可以高效开发WEB应用,集成了AJAX10,包含AJAX项目模板,它可以高效地开发OFFICE应用和MOBILE应用。13遗传算法遗传算法是基于生物遗传和进化机制的优化算法,求解问题从多个可行解开始,通过一定的法则进行迭代以产生新解,直到得到满足条件的结果为止。遗传算法具有内在的并行性、收敛速度快和全局寻优等的特点,基本特征是通过在父代与子代之间维持由潜在解组成的种群来实现多样性和全局搜索。遗传算法的内在并行性和群体搜索策略为多目标优化问题提供了解决方案,适宜于处理类似自动组卷这种多目标优化的问题。目前为止,已有不少人将遗传算法或改进的遗传算

19、法应用到组卷问题中,并取得了非常不错的效果。在本文中,将使用遗传算法作为主要的组卷算法,生物遗传的主要载体是染色体,其中DNA是最主要的遗传物质,基因是控制生物遗传性状的功能单位和结构单位。基因组成染色体,染色体中基因的位置称作基因座,而基因所取的值叫做等位基因基因和基因座决定了染色体的特征,即决定了生物个体的性状。染色体有两种表示形式基因型和表现型。表现型是指生物个体所表现出来5的实际生物性状,而基因型是指由染色体表现型相对应的基因组成。具有相同基因型的生物在不同的环境下允许有不同的生物表现型,因此表现型是基因型与无机环境相互作用的结果。在标准的遗传算法中,染色体通常对应由一维串结构表示的问

20、题的解。串的各个位置表示基因座,每个位置的取值称为等位基因。遗传算法处理的是经过编码的染色体。一定数量的染色体构成了种群。种群中样本的数量称为种群的大小,也叫群体规模。而种群中各个体对环境的适应能力称作适应度。把问题搜索空间中的解转换成遗传算法需要样本个体的过程叫做编码。它是从变现型到基因型的转换。把遗传算法最终生成的样本转换成问题解的过程称作解码,实质上是从基因型到表现型的转换。表13遗传学和遗传算法基础用语对照表自然遗传学人工遗传算法染色体数据、数组、位串基因特质、个性、探测器、位等位基因特征值基因座串中位置基因型结构表现型参数集、解码结构、候选解遗传隐匿非线性大自然的生物进化中,一个生物

21、群体要经过交配、变异、自然选择的过程,形成下一代群体,循环下去,不断进化,最后生存下来的总是最优的。将这种思想运用到算法中去,就形成了遗传算法,它的基本结构可描述为随机初始化种群P0X1,X2,XN;T0;计算P0中个体的适应值;WHILE不满足终止准则DO根据个体的适应值及选择策略从PT中选择生成下一代的父体PT;执行杂交、变异和再来生成新的种群PT1;计算PT1中个体的适应值;TT162智能试题库系统需求21系统需求简介智能试题库系统,是根据教师的要求,组成最接近要求的试卷。其中包括1,用户功能的管理。2,试卷的增减。3,试题的增减,修改。4,答案的修改。5,难度分数的设置,重复利用率的设

22、定等。6,题型的修改。7,系统基于WEB,让教师可以随时登陆,使其具有最新的试题库。22数据需求221数据库设计为了把用户的数据需求清楚准确的描述出来,系统分析员通常要建立一个数据模型,在本系统中,按照需求建立了一个用户与管理的ER图,它描述了从用户角度反映的数据及现实环境。根据系统的需求分析,可知,用户对应操作即多对多的关系,是指一个用户可以进行多种操作,这个操作又可以被多个不同的用户分别操作。因此得到了以下的数据需求关系图21ER图7222数据库结构设计表的初步设计如下用户表(用户ID,用户名,密码,用户等级);其中USEID设为主键不能重复。图22YHB题型表(题型ID,题型名称,建议分

23、值,答题时间);图23TXB科目表(科目ID,科目名称,科目描述,章ID,章名称,章内容);图24KMB试题表(试题ID,题型名称,难度,所属科目,所属章,所属节,分值,答题时间,创建时间,内容);8图25STB答案表(试题ID,答案内容)图26DAB试卷表(试卷ID,试卷名,出题人名,出题时间,总分,总时间,试卷内容);在初期准备间断,为了可以有足够的题量,在基本框架搭起之后,我利用试题添加功能将题目添加入题库中,并且对相应的属性进行初步的设定。23功能需求智能组卷系统用例图如图23所示9图27用例图如上图所示,本智能组卷系统有如下功能1,用户登录只有具有相应条件的用户才可以登录。这样可以避

24、免试题库被破坏。2,题型信息管理在这个模块可以更改题型的信息,如分数,时间。3,试题查询可以根据试题的内容进行查询相应试题的信息。4,试题添加添加试题,这里包括试题的科目,章节,难度,区分度等相关的试题参数。为自动组卷提供足量的题库。5,试题删除试题是试卷的基本组成部分,这里可以将不符合要求或者过时的题目从题库中删除。6,答案管理根据试题ID查询试题答案,并且对相应的题目进行答案修改。7,自动组卷根据智能设定的参数,组出符合条件的试卷。8,试题修改修改试题的具体内容。103遗传算法的分析与设计31算法的选择目前存在的三种算法1,随机选取法,2,回溯试探法,3,遗传算法。组卷算法是智能试题库系统

25、的核心,所以,算法的选择显得尤为重要。1随机选取法根据状态空间的控制指标,计算机随机的抽取一道试题放入试题库,此过程不断重复,直到组卷完毕,或已无法从题库中抽取满足控制指标的试题为止。该方法结构简单,对于单道题的抽取运行速度较快,但是对于整个组卷过程来说,组卷的成功率低,即使组卷成功,花费时间也令人难以忍受。尤其是题库中各状态类型平均出题量较低时,组卷经常以失败而告终。2,回溯试探法将随机选取法产生的每一状态类型纪录下来,搜索失败时释放上次纪录的状态类型,再依据一定的规律变换一种新的状态类型进行试探,通过不断回溯试探直到试卷生成完毕或退回出发点为止,这种有条件的深度优先算法,对于状态类型和出题

26、量都较少的题库系统而言,组卷成功率较好,但是在实际到一个应用时发现这种算法对内存占用量很大,程序结构相对比较复杂,而且选取试题缺乏随机性,组卷时间长,后两点是用户无法接受的,所以它也不是一种很好的用来自动组卷的算法。3,遗传算法遗传算法是模拟自然界自然选择遗传机制进行搜索寻优的方法,它通过模拟生物在染色体层面的各种遗传优化作用而设计人工寻优方法,GA本质是一个群体迭代过程,从一个随机的初始群体出发,依据优胜劣汰。通过竞争、选择、繁衍、变异等遗传操作,产生更优的下一代群体。直到满足环境约束酌优良体或合乎具体的应用准则为止。4算法的比较不难发现,在限制条件状态空间的控制下,随机选取法能够抽取出一组

27、令用户满意的试题。只不过由于它随机选取试题的范围大,无法确定目前条件下哪些区域能够抽取合适的试题,可能在那些已经证明是无法抽取合适试题的区域内反复选题,进行大量的无效操作而进入死循环,最终导致组卷失败。回溯试探法组卷成功率高,但它是以牺牲大量的时间为代价的,对于现今越来越流行的考生网上随机即时调题的考试过程来说,它不符合要求。因此,必须结合两种方法寻找一种新的改进算法,这种算法要具有全局寻优和收敛速度快的特点。遗传算法以其具有自适应全局寻优和智能搜索技术,并且收敛性好的特性能很好的满足自动考试组卷的要求。1132遗传算法遗传算法是一种用于复杂系统优化的具有高容错性能的搜索算法。与传统的搜索方法

28、相比,遗传算法具有以下特点遗传算法的处理对象不是参数本身,是按照一定的规则对参数进行编码得到的问题的样本。由此,遗传算法可以直接处理结构对象。而结构对象泛指各种常用的一维、二维或三维对象。以模式定理作为基础理论的遗传算法有潜在的隐并行性,遗传算法在搜索过程中是并行的搜索多个波峰,具有较好的全局搜索性能。而传统搜索方法大多是基于单点搜索的算法,即通过预先规定的变换规则,算法搜索的点从当前点转移动问题空间的另一点。这种点对点的搜索方法,容易陷入局部最优解。遗传算法只使用适应度函数来评估个体,而且适应度函数的设计也没有任何特定的要求。遗传算法采用概率变迁规则指导它的搜索方向。遗传算法具有自组织,自适

29、应和自学习性。利用遗传操作使群体样本重组,在下一代中增强样本的适应度指标,最后收敛到问题的全局最优解。另外遗传算法属于群体化操作有5个基本操作要素编码与解码;初始种群;适应度函数;遗传操作;控制参数。相应操作的素描述如下编码与解码遗传算法处理的对象是经过编码的解。编码串每位取值不同的组合构成算法的解空间。编码是运用遗传算法的第一步操作。解码是与编码相反的过程,是指把遗传算法得到的最优解转化成问题实际的可行解的操作。初始种群生物体进化过程是群体性操作,所以遗传算法需要生成初始种群。初始种群由问题解空间中经过编码的若干解组成。通常做法是随机产生一定数量的问题解组成初始群体。初始种群是遗传进化的初始

30、代,第一代。适应度评估函数适应度函数是进行遗传操作的依据,它用来评价个体的优劣。根据不同的问题,适应度函数定义方式不同。遗传操作个子操作选择,交叉,变异。1)选择12选择操作体现了生物进化规律的适者生存原则,目的是尽量使当前种群中的适应度较好个体的优良基因能够遗传到下一代,增强下一代个体适应能力。2)交叉交换操作将生新个体。它在选择操作的基础上,利用信息交换的思想重组父代个体的优良基因产生两个新的个体,从而实现种群的多样性。3)变异变异操作过程是先随机选择某个样本串,然后依据变异概率随机地改变串结构中某一位的值。变异发生的概率比较低,通常在0001001之间。设定控制参数遗传算法的主要特点是不

31、依赖于样本参数信息,使用适应度函数控制进化过程,恰当地运用遗传操作,得到问题最优解。当遗传代数达到规定的代数或者已经搜索到全局最优解时,终止遗传操作。根据上述所述,具体的实现流程如下图所示13图31遗传算法流程图33遗传算法在组卷算法中的应用在组卷算法中,算法流程实施图如下图所示14编码和生成初始种群种群个体适应度的检测评估选择交叉变异图32智能试题库流程图下面将一一介绍各个流程的具体实施。331初始群体的产生初始种群规模是影响遗传算法效率的关键因素之一,规模过小会减小GA空间,导致遗传算法过早收敛;规模过大,计算量增加,也会降低遗传算法的效率。如何合理的设置种群大小,是遗传算法的要处理关键问

32、题之一。一般来讲,初始种群的设定可采用如下策略A依据问题的环境,估计问题空间候选解的分布范围,在范围内选择解构成初始种群。B随机挑选若干个问题的候选解,从中挑选最优个体加入初始样本中。不断重复这个过程,直到初始群体规模达到要求。在本智能试题库网站中,采用上述中A的方法,根据试题题型分布及难度的预先设定,将事先生成100个初始群体,每个群体是一套试卷,而每套试卷中的题目则代表相应的基因。存入一个二15维数组GENMK中,M代表试卷号,K为若干试题ID在选择初始群体的过程中,会与所要求难度的对比,如果难度相差太多,则重新选择这一份试卷。这样可以使试卷在开始的时候就较为规范。如GEN1,1,3,5,

33、7,45,66,77,882,2,4,7,88,99,5,6,7,93,3,4,5,6,7,8,9,10,11332适应值函数的实现在遗传算法中,通常以适应度函数值的大小作为区分种群中个体好坏的标准,一般情况下,适应度函数是由目标函数变换而来的,其值越大个体越好,在本试题库中,选用FIT()为适应度函数具体表示为W1FUN_COVERMW2FUN_HARDMW3FUN_DIFFIM;其中,FUN_COVERM为知识点覆盖率函数,表示为SUM试题涉及到的知识点/总知识点数。FUN_HARDM为平均难度适应度函数,总难度/总题数。FUN_DIFFIM为区分度适应度函数,总区分度/总题目数。333选

34、择算子轮盘赌选择法是最简单也是最常用的选择方法。各个个体的选择概率和其适应度值成比例。设群体大小为N,其中个体I的适应度为F,则I被选择的概率为I/N个个体的F和。显然,概率反映了个体I的适应度在整个群体的个体适应度总和中所占的比例个体适应度越大。其被选择的概率就越高、反之亦然。计算出群体中各个个体的选择概率后,为了选择交配个体,需要进行多轮选择。每一轮产生一个0,1之间均匀随机数,将该随机数作为选择指针来确定被选个体。个体被选后,可随机地组成交配对,以供后面的交叉操作。在本系统中,在初始群体生成后,使用轮盘机制,选择出50套试题,作为父代基因存入相应的基因存储中,为后面的杂交和交叉做准备。在

35、选择群体进行时,首先要生成一个轮盘函数,形象的说,轮盘函数就类似一个赌盘,转动转盘,指针会随机停到某个区域。在这里,几率的大小与适应度关联,适应度越高的群体,将有更大的概率选择在这里将使用WHEEL数组存放每套试卷将被选择的几率FITMPM/SUM具体存放形式如下WHEEL试卷号(M),FITMPM/SUM,WHEELM,1WHEELM1,2为了形象的表示轮盘算法,我使用下图进行辅助说明16图33轮盘表334杂交常规来说交叉算子能够搜索新的基因空间,是对维持种群中个体的多样性具有重要作用。常使用的交叉操作包括单点交叉,两点交叉,多点交叉等。在本文中,杂交是对于相邻的基因群,更换相应位置的题目,

36、如果更换后不会造成题目的重复则进行更换。在进行交叉判定前,先产生一个随机数,若小于06则对本题与下一套题目中的对应题目相交换。图34杂交实例17335变异交叉运算是产生新个体的主要方法之一,它决定了遗传算法的全局搜索能力而变异运算只是产生新个体的辅助方法,但它也是必不可少的一个步骤,因为它决定了遗传算法的局部搜索能力。变异运算,是指将个体染色体编码中的某些基因座上的基因值用该基因座的其他等位基因来替换,从而形成一个新的个体。在本文中,在进行变异判定前,先产生一个随机数,若小于001则随机从试题库中抽取试题,进行替换。这里需要注意的是所更换的题目必须与原题目是相同的题型。对于如何选择需要变异的题

37、目与选择交叉的题目使用同样的方法。336保存最优策略函数保存最优策略函数,是不让每一代适应值最大的基因组流失。如果上一代中最大的适应值大于下一代的最小值,这时候,将最大的与最小的互换,这样保证最大的适应值的基因组不会流失。在遗传算法中,因为遗传变异与交叉具有随机性,在实现过程中,发现有时会把上一代中具有较大适应度的群体遗失,为了将适应度好的群体保存下来,所以特意加了保存最优策略函数。将GEN中选出最大适应度的群体,再从GEN2中选出最大与最小的群体,如果父代的最大适应度子代中的最大适应度,则用父代这个群体将子代的最小适应度替换。184智能试题库系统的设计与实现41试题的指标体系411题号题号是

38、试题在题库中的编号,在试题库中试题的编号是唯一的,是试题库字段的主键。412题型试题的类型有多种划分形式,一般是指从试题形式上区分,本文主要针对老师教改项目中的语文这门课程而设计的,具体的试题类型可分为选择题、阅读题、作文题等。413难度系数难度系数是衡量试题质量的一个重要指标,试题的难度一般是指参加考试的学生群体在某道题上的失分率。在本文中,难度系数对应表如下表41难度系数对应表难易系数0一0202一0404一0606一0808一1难度程度易较易中等难较难414区分度测试的目的是为了鉴别不同层次学生掌握知识能力的高低,为了达到这一目的,使知识掌握较好的考生得高分,掌握不好的只能得低分,我们设

39、置了试题的区分度。对应如下表表42区分度对应表040以上高030一039较高020一029中415科目、章节、分值、时间这几个属性分别注明了题目所属的科目与章节(知识点),分值与时间代表了试题所占分时与建议答题时间。1942智能试题库系统界面设计智能试题库系统的结构如下图用户登陆模块试题添加修改科目章节管理试卷信息管理题型信息管理图41智能试题库系统结构图421界面介绍与功能实现流程根据结构图可知,智能组卷系统包括用户登录模块,题型信息管理模块,试题查询模块,试题添加,答案管理等模块,下面将分别介绍各个模块的功能,其中包括界面的设计及前台实现流程。1,用户登录模块用户使用既有的用户名与密码登录

40、,对试卷试题等进行操作。具体功能实现20输入用户名及密码进入主页面与数据库中数据进行匹配NY图42用户登录流程2,题型信息管理在这个模块中,提供了目前最新的题型信息,其中包括答题时间,题型分值,是智能组卷中所需的一项重要因素。图43题型信息管理正如上图所示,可以选择修改或者添加题型及其对应的时间和分值。下图为实现流程21进入试题类型管理界面修改添加选中修改的类型,填入修改的参数写入新增的类型及对应参数更新数据库图44管理流程3,试题查询,可以根据题目内容来检索题目,根据筛选结果,在页面中显示所筛选出的试题。下图为实现流程22进入试题类型管理界面键入检索关键字在数据库中匹配返回匹配好的数据,显示

41、匹配好的题目图45查询流程查询到所要找的题目后,在题目的后面表格中,有删除的选项,点击,则从数据库中将这条信息删除。4,试题添加,在试题管理界面,最下方,有试题增加的界面,如下图所示23图46试题添加模块功能实现将所要增加的试题填入试题内容框中,其他相应的因素均填入相应的位置。点击添加试题,将信息更新入试题库中的试题表内。5,答案管理,从主页面进入答案管理页面。如下图图47答案管理模块选中所要修改的试题ID,点击查看试题内容及答案,则根据所选中试题ID在答案表中匹配,将数据传回界面。在修改试题答案的文本框内键入所修改的内容,点击修改则更新试题库中所存属的内容。6,试题删除,界面如下24图48试

42、题删除模块在此模块,键入题目内容中的词或句,则可以找到相应试题,点击后面的删除按钮,则可以删除相应的试题内容,并将数据写入数据库的试题表中,以保证数据库中,数据的完整性与正确性。下图为实现流程25进入试题类型管理界面键入检索关键字在数据库中匹配将数据从试题库中删除删除图49流程7,试题修改,界面如下图410试题修改模块在此模块,键入题目内容中的词或句,则可以找到相应试题,点击后面的编辑按钮,则可以更改相应的试题内容,点击更新,将数据写入数据库的试题表中,以保证数据库中,数据的完整性与正确性。下图为实现流程26进入试题类型管理界面键入检索关键字在数据库中匹配将修改的数据写入试题库返回匹配好的数据

43、图411流程43智能试题库系统各模块功能实现431登陆模块登录功能模块,用户通过在LOGINASPX页面的两个服务器TEXTBOX控件中输入用户名和密码,然后单击服务器BUTTON按钮登录,进入LOGINASPXCS后台BUTTON_CLICKED程序。在BUTTON_CLICK程序中,根据前台各个控件的属性名,匹配该控件的信息(如本功能中,比较TXTPASSWORD和TXTUSERNAME的输入值)。匹配信息的渠道是通过连接查询SQL数据库来进行的。通过查询SQL数据库中USERNAMETXTPASSWORD的值和PASSWORDTXTUSERNAME的值来找出库中对应表的相关信息,读取到定

44、义为SQLDATAREADER变量DT中。如果匹配到相关信息,则登录成功,跳转到MANAGEPAGEASPX页面(管理页面);否则,修改登录信息。登陆功能模块的建立与数据库连接及对数据库用户信息的查询代码如下SQLCONNECTIONCONNEWSQLCONNECTION“SERVERLOCALHOSTDATABASEYONGHUUIDSAPWD123456“CONOPEN27STRINGUSERNAMETHISTXTUSERNAMETEXTTRIMSTRINGPASSWORDTHISTXTPASSWORDTEXTTRIMSTRINGSTRSQL“SELECTFROMYHBWHEREYHM“U

45、SERNAME“ANDPSW“PASSWORD“SQLCOMMANDOBNEWSQLCOMMANDSTRSQL,CONSQLDATAREADERDTOBEXECUTEREADERIFDTREADSESSION“USER“USERNAMERESPONSEREDIRECT“MANAGEPAGEASPX“432题型修改与添加,删除模块在题型修改模块中,用户通过QUESKINDMANAGEAASPX页面的LISTBOX中,选中即将修改的题型,在相应的TEXTBOX控件中,分别填入要修改的题型名称,时间及分数,点击修改(BUTTON)按钮,此时进入QUESKINDMANAGEACS后台BUTTON_CL

46、ICKED程序,这时将匹配信息(从数据库中找到LISTBOX中选中的TX),将TEXTBOX中的新属性更新到选中的TX位置(UPDATETXBSETTX“TEXTBOX1TEXT“,JYFZ“TEXTBOX5TEXT“,JYSJ“TEXTBOX6TEXT“WHERETX“LISTBOX1SELECTEDVALUETOSTRING“)。添加模块与删除模块与上述过程类同,所以不再赘述,下面代码的实现为修改模块的功能实现。其中BIND()是在LISTBOX中显示数据库中题型的函数。SQLCONNECTIONCONNEWSQLCONNECTION“SERVERLOCALHOSTDATABASEYONG

47、HUUIDSAPWD123456“CONOPENLABEL1TEXTLISTBOX1SELECTEDVALUETOSTRINGSTRINGSTR“UPDATETXBSETTX“TEXTBOX1TEXT“,JYFZ“TEXTBOX5TEXT“,JYSJ“TEXTBOX6TEXT“WHERETX“LISTBOX1SELECTEDVALUETOSTRING“SQLCOMMANDOBNEWSQLCOMMANDSTR,CONOBEXECUTENONQUERYCONCLOSEBIND28433修改及删除试题模块首先,用户在TEXTBOX中键入所要查找的试题内容,点击搜索(BUTTON),进入SHITIPA

48、GEASPXCS后台操作,这时通过连接查询SQL数据库来匹配信息,并反馈找到的题目,读取到定义为SQLDATAREADER变量DT中,并且显示。SQLCONNECTIONCONNEWSQLCONNECTION“SERVERLOCALHOSTDATABASEYONGHUUIDSAPWD123456“CONOPENSTRINGSTR“SELECTFROMSTBWHERESTNRLIKE“TEXTBOX1TEXT“SQLDATAADAPTERSDANEWSQLDATAADAPTERSTR,CONDATATABLEDTNEWDATATABLESDAFILLDTSESSION“ST“DTGRIDVIEW

49、1DATASOURCEDTGRIDVIEW1DATABINDCONCLOSE434试题修改模块试题修改模块,点击显示出题目后的编辑按钮,则跳转到页面EDITQUESASPX页面,在相应的TEXTBOX内填入修改的内容,点击后面的更新按钮,则进入EDITQUESASPXCS后台运行,这时通过连接查询SQL数据库来匹配信息,读取到定义为SQLDATAREADER变量DT中,再将DT赋值传回数据库,则完成题目的修改。这次操作与上述的题型操作异曲同工,所以不再赘述。435试题删除模块试题删除模块,点击删除按钮,在SHITIPAGEASPXCS后台操作中,根据所选中题目的试题ID与数据库中匹配(下面加粗部分代码),从数据库中选出所匹配的试题,删除。STRINGSTIDTHISGRIDVIEW1DATAKEYSEROWINDEXVALUETOSTRINGDATATABLETASESSION“ST“ASDATATABLEFORINTI0ITAROWSCOUNTIIFSTIDEQUALSTAROWSEROWINDEX“STID“TOSTRING29SQLCONNECTIONCONNEWSQLCONNECTION“SERVERLOCALHOSTDATABASEYONGHUUIDSAPWD123

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。