




已阅读5页,还剩80页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
JIUJIANGUNIVERSITY毕业论文题目基于遗传算法的C语言程序设计在线考试系统英文题目BASEDONGENETICALGORITHMCPROGRAMMINGLANGUAGEONLINEEXAMINATIONSYSTEM院系信息科学与技术学院专业计算机科学与技术姓名李志祥班级学号A081152指导教师袁媛二一二年五月摘要随着国家科技兴国战略的逐步实施,教育由精英化向大众化推进。面对为数众多且能力参差不齐的受教育者,传统的考试已经满足不了“因材施教,以人为本”的要求,教育和考核手段的改变以势在必行。智能化在线考试是信息化发展下教育考试改革的一个必然趋势,它具高效率、更新快,可节省大量的人力物力财力,等特点。“基于遗传算法的C语言程序设计在线考试系统”是基于校园网络的考试模式,与传统的纸张考试相比,具有科学组卷、半自动评分、随时随地参加考试、快速高效实施的优势。本课题,研究了在线考试的应用背景、开发所采用的架构,比较并确定了NET开发平台,选择了SQLSERVER2008存储数据,使用了基于试卷难度和区分度为参数的遗传算法组卷,整体提高了系统的科学性。它由管理员模块、教师模块和学生模块组成,严格地控制角色的权限,合理地将管理系统、管理考试和参加考试分开,实现了在线考试的用户登陆、信息修改、通知管理、试题库管理、自动组卷、半自动评分、倒计时、数据备份与还原等功能。经过具体测试分析,系统可以正常运行,具有界面简洁美观,操作简单方便等特点。关键词遗传算法,数据库,考试系统ABSTRACTWITHTHEGRADUALIMPLEMENTATIONOFTHENATIONALSCIENCEANDTECHNOLOGY,STRATEGY,EDUCATIONFROMELITETOMASSFORWARDEDUCATEDUNEVENFACEOFTHELARGENUMBERANDCAPACITY,THETRADITIONALEXAMINATIONHASFAILEDTOMEETTHEINDIVIDUALIZED,PEOPLEORIENTED“REQUIREMENTS,EDUCATIONANDASSESSMENTTOOLSTOCHANGEISIMPERATIVEINTELLIGENTONLINETESTOFTHEEDUCATIONALTESTINGREFORMISANINEVITABLETRENDINTHEDEVELOPMENTOFINFORMATIONTECHNOLOGY,ITISHIGHLYEFFICIENT,FASTUPDATE,CANSAVEALOTOFMANPOWER,MATERIALANDFINANCIALRESOURCES,ANDSOON“BASEDONTHEGENETICALGORITHM,“CPROGRAMMINGLANGUAGE“ONLINEEXAMINATIONSYSTEM“ISTHEMODEOFEXAMINATIONBASEDONTHECAMPUSNETWORK,COMPAREDWITHTHETRADITIONALPAPEREXAMINATIONS,SCIENTIFICTESTPAPER,SEMIAUTOMATICSCOREANYTIME,ANYWHERETOTAKETHEEXAM,FASTANDEFFICIENTIMPLEMENTATIONOFADVANTAGESTHISTOPIC,RESEARCHTHEBACKGROUNDOFTHEONLINEEXAMAPPLICATIONDEVELOPMENTFRAMEWORK,COMPAREDANDIDENTIFIEDNETDEVELOPMENTPLATFORM,SELECTTHESQLSERVER2008STOREDDATA,USINGAGENETICALGORITHMTESTPAPERBASEDONTHEPAPERSOFDIFFICULTYANDDISCRIMINATIONPARAMETERS,THEOVERALLIMPROVEMENTOFTHESCIENTIFICNATUREOFTHESYSTEMSTRICTCONTROLOFTHEROLEPERMISSIONSBYTHEADMINISTRATORMODULE,TEACHERMODULEANDSTUDENTMODULE,REASONABLYSEPARATEDFROMTHEMANAGEMENTSYSTEM,ADMINISTERTHEEXAMANDTAKETHEEXAM,ONLINETESTUSERLOGININFORMATIONTOMODIFY,NOTIFICATIONMANAGEMENT,TESTLIBRARYMANAGEMENTAUTOMATICGENERATIONOFSEMIAUTOMATICSCORE,COUNTDOWN,DATABACKUPANDRESTOREFUNCTIONSAFTERASPECIFICTEST,THESYSTEMCANOPERATENORMALLY,THEINTERFACEISSIMPLEANDBEAUTIFUL,EASYTOOPERATEFEATURESKEYWORDSGENETICALGORITHMS,DATABASES,EXAMINATIONSYSTEM目录摘要IABSTRACTII1绪论11研究背景及意义112国内外在线考试系统的研究现状113开发平台的比较与选取214系统环境分析315系统开发的目标616本章小结62系统分析21系统可行性分析722系统需求分析723系统功能分析924本章小结103遗传算法组卷设计31遗传算法1132组卷理论简介1633传统组卷算法的分析1834遗传算法组卷原理1935遗传算法组卷设计1936本章小结264系统设计41系统硬件平台设计2742系统软件平台的选择2843系统总体功能设计2844系统主要功能模块设计2845系统数据库设计3046本章小结405系统实现51登陆界面的实现4152管理员模块的实现4153教师模块的实现4254学生模块的实现4855本章小结49致谢50参考文献51核心源代码附录531绪论11研究背景及意义随着国家科技兴国战略的逐步实施,教育也由精英化向大众化推进。面对为数众多且能力参差不齐的受教育者,传统的考试已经满足不了“因材施教,以人为本”的要求,教育和考核手段改变以势在必行。在计算机网络技术的推动下,产生了一大批计算机辅助教学设施。如在高校,使用多媒体进行远程教学、电子管理系统管理学生的基本信息等等,都达到了比较好的预期效果1。在学院,依旧沿用传统的人工出卷、纸质考试、人工批阅、分数采集的考试方式,教师有大量繁重的考务工作要做,由此在批阅、分数采集时更容易出现错误;另一方面,学生容易根据出题老师的课堂内容,进行突击复习,采用猜题押题的方式来应付考试。因此,这种考试不能达到对学生实际学习情况的有效评估,学生不能及时发现自己在学习中存在的问题,教师不能根据考试结果进行合理的教学调整,达不到不断提高教学质量的要求。相比国内外网络公开课的发展,学院有必要进行网络考试的尝试,为今后的发展提供一个方向。网络考试具有不受时间地域限制、提高考试工作的效率、避免资源浪费降低教育成本的特点。同时,针对在外实习毕业生,往返学校参加考试确实不便,如能实现远程在线考试,将是非常不错的选择。“基于遗传算法的C语言程序设计在线考试系统”是关于如何从题库中抽取一定数量的试题来形成一份高质量试卷的组合优化问题的研究,模拟自然界生物进化的方式,动态自适应性地满足试题库不断变化的要求。相比简单随机搜索算法、回溯试探算法、误差补偿算法、优先权算法,它具有组卷成功率高、速度快、容易控制、算法复杂度低等特点。它可以作为一个实验平台,推进学院无纸化考试改革的进程。12目前国内外在线考试系统的研究现状在线考试系统是计算机辅助测试系统的外延,人们已经利用它取得了很丰硕的成果。在国外,TOEFL、GRE、RHCA、OCM、CCIE等各种在线认证考试均已成功运营;在国内,计算机等级考试、华为的网络认证考试等都如火如荼的展开2。这些网络在线考试系统,具有自动组卷、题库量大、安全可靠、使用方便和界面友好等诸多特点,显示了在线考试系统的强大生命力和广阔的市场空间。目前,主要有三类考试系统模式(1)单客户机模式用户只需要独立的将考试系统安装到计算机中而无需联网就能模拟出考试环境,这种考试系统类似软件而又没有相应的服务支持,系统维护升级非常困难。(2)C/S模式C/S模式,即客户端/服务器结构模式。前端大部分是个人PC机,完成界面显示、数据输入、向后台发送请求、接受服务器返回的结果等。后端是服务器,提供数据库的查询和管理。模式的灵活性差,且所用客户机都要安装客户端软件。(3)B/S模式B/S模式,即浏览器/服务器结构模式。客户端运行浏览器软件,浏览器以超文本形式向WEB服务器提出访问数据库的要求,WEB服务器接受客户端请求后,将这个请求转化为SQL语法,并交给数据库服务器,数据库服务器得到请求后,验证其合法性,并进行数据处理,然后将处理后的结果返回给WEB服务器,WEB服务器再一次将得到的所有结果进行转化,变成HTML文档形式,转发给客户端浏览器以友好的WEB页面形式显示出来。B/S模式在线考试系统不需要客户端安装软件程序,系统易于维护和管理,应用广泛。13开发平台的比较与选取J2EEJAVA2ENTERPRISEEDITION由SUN公司推出,J2EE平台提供了一个基于组件的方法,用来设计、开发、装配以及部署企业应用程序。微软公司推出的NET系统在安装了公共语言运行库CLR的任何一个操作平台上都可以运行。NET和J2EE非常相似,但这两种技术在实现方法和具体实现技术上有很大的差别。通过J2EE与NET支持的语言、标准及平台进行比较,本系统可采用NET架构下的ASPNET开发环境。其具体比较如下。131支持的语言和语言标准NET支持C,VB,C和J等开发语言,支持下一代互联网内容表示的XML/SOAP标准。NET下,开发人员可以很容易的找到适合自己的开发语言。J2EE只能够支持JAVA语言,因此对语言的选择比较的狭窄。132跨平台在NET平台上开发程序真正实现了代码重用,即运行时和具体语言分开,所有的资源管理,内存分配和变量类型均有公共语言运行库处理。例如,用C写的类就可以直接用在C/C程序中。而在J2EE平台上只能用JAVA来开发程序,运行是和具体的语言混在一起3。14系统环境分析141系统开发环境系统开发环境MICROSOFTVISUALSTUDIO2010集成开发环境;系统开发语言ASPNETC;系统后台数据库SQLSERVER2008;开发环境运行平台WIN7(SP1)。142服务器端操作系统WIN7SP1;WEB服务器INTERNET信息服务(IIS)管理器;数据库服务器SQLSERVER2008;浏览器IE80;客户端浏览器IE80。143开发环境和语言简介ASPNET是MICROSOFT公司推出的WEB开发平台,是目前最先进、特征最丰富、功能最强大的WEB开发利器4。ASPNET具有方便灵活、性能优越、生产效率高、安全性高、完整性强等特点,支持多种开发语言,并包含许多先进技术,如ADO、NET、AJAX无刷新技术、LINQ数据库访问技术母版页、WEBSERVER、主题等等,是目前主流的网络编程环境之一。系统主要用到的ASPNET对象如下(1)RESPONSE对象常用的方法REDIRECT将网页重新导向另一个地址。WRITE将数据输出到客户端。(2)REQUEST对象的方法MAPPATH为当前请求将请求的URL中的虚拟路径映射到服务器上的物理路径。SAVEAS将HTTP请求保存到硬盘。(3)SESSION对象常用方法及其说明ABANDO此方法结束当前会话,并清除会话中的所有信息。如果用户随后访问页面,可以为它创建新会话。C语言是一种功能强大、面向对象的编程语言,它从C语言和VISUALC派生而来,是MICROSOFT公司NET技术核心开发语言,能很好的与ASPNET配合使用。IIS是INTERNETINFORMATIONSERVER的缩写,是微软提供的INTERNET服务器软件,包括WEB、FTP、MAIL等服务器。其主要功能安全通信,IIS采用各种安全协议,保证了服务器端、客户端和服务器端与户端信息交换时的安全;权限向导,通过向虚拟目录和文件分配访问策略,可以简化配置WEB站点访问的任务;IIS进程限制,能够限制CPU在处理单个WEB站点的应用程序时的时间百分比,还可以终止新启动运行失常的进程;应用程序保护,IIS为WEB应用程序提供了更大的保护和更强的可靠性。144所用FCKEDITOR插件和倒计时技术简介FCKEDITOR在线编辑器是专门应用在网页上实现“所见所得”的文字编辑器,可以减轻试题库输入时工作量,其主要实现如下功能(1)现实文本对齐、缩进和项目符号等格式化;(2)实现设置文字颜色、样式、字体和类型等格式化;(3)实现剪切、粘贴、撤销和重做等操作;(4)实现从WORD粘贴并自动清理的功能;(5)支持CSS,可以为文本内容设置样式;(6)支持插入表情符号,定制个性化内容等。倒计时采用的是AJAX技术中的JAVASCRIPT方式。会话开始时,浏览器加载一个图11WEB工作模式和AJAX工作模式AJAX引擎,采用JAVASCRIPT编写并且通常在一个隐藏的框架中。这个引擎负责绘制用户界面以及与服务器端的通信。AJAX技术允许用异步的方式实现用户与程序的交互,就是说不用等待服务器端的通信,帮助用户节省了等待时间5。AJAX模式和传统WEB模式工作方式如图11所示。15系统开发的目标本系统将要实现如下目标(1)考试界面简洁美观,方便学生和教师操作;(2)试卷编排合理,按教师设定难度和区分度自动组卷;(3)考试系统公平公正,考试设有倒计时方便学生掌握考试时间;(4)考试时间到后系统自动保存并且提交试卷;(5)系统能够半自动阅卷并且显示考试结果;(6)考生能够查看成绩、浏览通知、修改密码和进行考试;(7)教师能够添加、修改、删除考生信息、试题信息,修改自身密码,对组卷参数进行设置并组卷,对考后的试卷进行批阅和删除;(8)管理员能够添加、修改、删除通知信息、教师和考生的信息,修改自身密码,添加、修改、删除,对系统进行维护。16本章小结本章通过研究在线考试的意义和现状,得出在线考试系统将在未来的教育中发挥巨大作用,故选择在线考试系统作为开发对象;其次,为将进行的开发选择了开发平台、所需环境和开发工具;最后提出了系统开发的所要完成的功能目标。2系统分析在进行可行性研究和项目开发计划以后,如果确认开发一个新的软件系统是必要的而且是可行的,那么就可进入分析阶段。需求分析是指开发人员要理解用户的要求,进行详细的市场调查,确定系统的新目标6。为了满足用户的需要,回答系统要“做什么”的问题。21系统可行性分析(1)在系统开发的技术方面,“基于遗传算法的C语言程序设计在线系”统属于一个微型系统,使用的前台开发工具是MICROSOFTVISUALSTUDIO2010,后台数据库使用SQLSERVER2008,系统主要是通过前台的操作对后台数据库进行相应的操作,如对数据的修改、添加、删除和查询。开发本系统时,使用MICROSOFTVISUALSTUDIO2010进行即见即得的前台界面设计,通过SQL语句使用户实现读取后台数据,然后进行相应的数据操作,再将操作结果实时返回到数据库中并保存,以便随时提供查询。因此系统开发的技术方面是可行的。(2)经济可行性方面系统开发时,需要一台处理器性能为PIII或以上,内存为512MB,硬盘至少10G,大家学习使用的计算机就可满足要求。同时,本系统不涉及商业应用,只作为学习应用研究,因此可以免费使用系统开发所需软件,例如WINDOWS操作系统,MICROSOFTVISUALSTUDIO2010和SQLSERVER2008数据库等。可以得出,系统开发的经济方面是可行的。22系统需求分析221功能需求分析一个完整的在线考试系统通常包括试题库的建立与管理、参与角色的分类与管理、考试的实施与管理、考后相关信息的发布与管理。本系统根据参与角色将需求分析具体分类如下。学生用户需求能使用用户名和相应的密码登录系统。登录后,可实现浏览通知、参加测试和查看成绩的功能。考生用户名由教师给出,考生仅可以修改自己的密码。若考生选择浏览通知,则进入通知浏览页面;若考试完成,在规定的时间内可以查询自己的成绩;若考生看完考试规则后选择开始考试,系统自动计时,当考生选择交卷或者考试时间到时,系统自动将考生当前的测试答案提交保存至后台数据库。试卷提交之后,考生可再次进入系统,但不可再次测试,只可进行无关考试的操作。教师用户需求可修改自身除“教师户名”字段之外的信息,调阅考过的试卷和学生的答卷,查看、增加、删除、修改试题信息、通知信息和考生信息,设置组卷参数,组卷,批阅学生答卷,统计试卷得分,得出数据分布情况,重新计算试卷中出现的各个试题的难度和区分度,赋予其相应值。管理员用户需求能够对学生信息、教师信息、通知信息进行查看、增加、删除和修改操作,添加其他管理员,查看其他管理员户名和管理员姓名,修改自身除“管理员户名”字段之外的信息,还能够进行系统数据的备份与还原。222工具软件需求分析由于选择在NET平台上进行开发,开发工具就必须全面支持NET架构。而VISUALSTUDIO2010是微软一款基于NET架构的集成环境开发工具,具有天然的三层架构,很适合在线考试系统的开发。由于前台界面开发工具为微软的VISUALSTUDIO2010,所以就选择同为微软产品的SQLSERVER2008数据。因为两者配合程度非常高,数据的处理上不会存在任何问题。223数据库需求分析针对考试系统的需求,设计如下所示的数据项和数据结构管理员信息,包括的数据项有管理员姓名、密码等。教师信息,包括的数据项有教师姓名、密码等。考生信息,包括的数据项有用户名、密码、班级等。试卷信息,包括的数据项有单项选择题分值,单项选择题数量;填空题分值,填空题数量;程序设计题分值,程序设计题数量。选择题信息,包括的数据项有单选题编号、题干、正确答案、备选项(A、B、C、D)等。填空题信息,包括的数据项有填空题编号、题干、正确答案等。程序设计题信息,包括的数据项有填空题编号、题干、参考答案等。成绩信息,包括的数据项有考生学号、成绩、考试时间等。通知信息,包括的数据项有通知内容、通知时间、通知发布者等。本系统应该建立一个稳定的后台数据库系统,通过该数据库管理整个考试系统所需的信息(用户信息、试题信息、试卷信息、考试信息等),还应该包括学生、教师和管理员的账号、考试过程的控制机制。23系统功能分析本系统的用户可分为管理员、教师和考生,其功能应满足如下要求(1)考试界面简洁美观,方便学生和教师操作;(2)试卷编排合理,按教师设定难度和区分度自动组卷;(3)考试系统公平公正,考试设有倒计时方便学生掌握考试时间;(4)考试时间到后系统自动保存并且提交试卷;(5)系统能够半自动阅卷并且显示考试结果;(6)考生能够查看成绩、浏览通知、修改密码和进行考试;(7)教师能够添加、修改、删除考生、试题、通知的信息,修改自身密码,设置组卷参数,并组卷,批阅和删除考后的试卷;(8)管理员能够添加、修改、删除教师、考生、通知的信息,添加其他管理员,查看其他管理员户名和管理员姓名,维护自身信息和系统信息。从上面的结论得出系统的具体模块划分如下学生模块(1)系统管理修改密码,退出系统;(2)考试模块进行考试,计时功能,交卷功能;(3)成绩查询只可查询自己的成绩;(4)通知浏览浏览通知。教师模块(1)系统管理修改密码,退出系统;(2)试题管理对题目的增加、修改和删除;(3)自动评分对提交的试卷客观题部分进行自动评分;(4)数据统计统计考生分数,重新计算各个试题的难度和区分度;(5)试卷管理批阅考卷主观题,考卷参数设置并自动组卷;(6)学生信息管理浏览学生信息,并能进行增删改操作;(7)通知浏览模块教师对通知进行增删改操作。管理员模块(1)系统管理修改密码,退出系统;(2)系统维护系统备份、还原;(3)通知管理添加、修改、删除通知信息;(4)用户管理添加、修改、删除教师、学生的相关信息,查看其它管理员的管理员户名、管理员姓名。24本章小结本章通过系统可行性分析、系统需求分析和系统功能分析,确定了所开发系统需要的工具软件、系统的结构、各模块基本功能,对系统有更进一步的认识。3遗传算法组卷设计31遗传算法遗传算法是一种通过模拟自然进化过程的全局最优解搜索方法,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,是用来解决在多目标约束条件下求最优解问题的算法,具有广泛的应用。311遗传算法基本描述遗传算法GENETICALGORITHM是模拟达尔文生物进化论的自然选择和遗传学机理的生物进化过程的计算模型,是一种通过模拟自然进化过程搜索最优解的方法,它最初是由美国MICHIGAN大学JHOLLAND教授于1975年首先提出来的,并出版了颇有影响的专著“ADAPTATIONINNATURALANDARTIFICIALSYSTEMS“GA这个名称才逐渐为人所知,JHOLLAND教授所提出的GA通常为简单遗传算法7。遗传算法抽象自生物体进化过程,通过全面模拟自然选择和遗传,形成一种“生成检验”特征的搜索算法。遗传算法以编码空间代替问题空间,以适应度函数为评价依据,以编码群体为进化基础,以对群体中个体位串的遗传操作实现选择和遗传机制,建立起一个迭代过程,直到得到满足条件的结果,遗传算法同时具有内在的并行性、收敛速度快和全局寻优等的特点,父代与子代之间维持由潜在解组成的种群来实现多样性和全局搜索。遗传算法的内在并行性和群体搜索策略为多目标优化问题提供了较好的解决方案,因此适宜于处理类似自动组卷这种多目标优化的问题。312遗传算法基本概念由于遗传算法是由生物遗传学和计算机科学相互结合渗透而成的一种新的计算方法,因此遗传算法中经常使用一些生物遗传学中的基本概念。了解这些基本概念对于讨论和应用遗传算法是十分必要的。(1)染色体CHROMOSOME在使用遗传算法时,需要把问题解编码成具有固定结构的符号串,它的每一位代表一个基因。一个染色体就代表问题的一个解,每个染色体称为一个个体。(2)种群POPULATION每一代所产生的染色体总数。一个种群包含了该问题在这一代的一些解的集合。(3)适应度FITNESS每个个体对应一个具体问题的解,每个解对应的函数值即为适应函数,它是衡量染色体对环境适应度的指标,也是反映实际问题的目标函数。(4)基因座染色体中基因的位置称为基因座,而基因所取的值叫做等位基(5)模式定理在遗传算子选择、杂交、变异的作用下,低阶、定义长度短、超过群体平均适应值的模式生存数量,将随着迭代次数的增加以指数级增长。(6)最小字符集编码规则编码采用最小字符集,使问题得到自然简单的表示和描述。313遗传算法基本流程遗传算法在整个进化过程涉及五大要素参数编码、初始群体的设定、适应度函数的设定、遗传操作的设计、控制参数的设定。(1)选择编码策略,把参数集合X和域映射到位串结构空间S;(2)定义适应值函数FX;(3)确定遗传策略,包括选择群体大小N,选择、杂交、变异方法,确定杂交概率PC、变异概率PM等遗传参数;(4)随机初始化生成群体P;(5)计算群体中个体的位串适应值FX;(6)按照遗传策略。运用选择、杂交和变异算子作用于群体,形成下一代;(7)判断是否达到预定目标,或者完成预定迭代次数,不满足则回到(6)。遗传算法流图如31图所示。遗传操作产生P(T1)对参数集进行编码评价群体确定实际问题参数集初始化群体P(T)满足停止准则结束三个基本算子1选择2交叉3变异位串解码的参数计算目标函数值函数向适应值映射适应值调整P(T1)PT是否图31遗传算法流程图314遗传算子介绍遗传算法操作算子一般都包括选择、杂交、和变异三种基本形式,他们构成了遗传算法具有强大全局搜索能力的核心,是模拟自然选择以及遗传过程中发生的繁殖、杂交和变异现象的主要载体。遗传算法利用遗传算子产生新一代群体来实现群体进化。(1)选择算子,从当前群体中选择适应值高的个体以生成交配池的过程,有适应值比列选择、排序选择、精英选择等形式。(2)杂交算子,是进化算法中遗传算法具备的原始性的独有特征,它模仿自然界有性繁殖的基因重组过程。杂交一般包括一点杂交、两点杂交、多点杂交、一致杂交等。杂交操作分以下三步从交配池中随机的取出要交配的一对个体;根据位串长度L,对要交配的一对个体,随机选取1,L1中一个或多个的整数K作为杂交位置;根据杂交概率PC(0LTMPSTRSTRSUBSTRING0,LRETURNTMPSTRPROTECTEDSTRINGRIGHTSTRINGSTR,INTLSTRINGTMPSTRTMPSTRSTRIFSTRLENGTHLTMPSTRSTRSUBSTRINGSTRLENGTHL,LRETURNTMPSTR解码问题空间,便是根据解码的串位空间结果对题库试题信息表进行相应的数据操作,取得各试题难度、区分度的值,再利用适应值函数计算该解的适应值。353遗传算子的设计遗传算法中,选择算子的作用是在种群中选择优良个体的基因遗传给下一代,变异算子的作用是基因重组和群体更迭,变异算子的具有维持群体的多样性、提高遗传算法的局部搜索效率的。(1)选择算子选择算子采用排序选择,作用于整个群体,将其中个体按适应值由大到小的排成一个序列,再由头向尾小取出下一代种群的量,放入交配池,等待交叉操作。与英选择相比,排序选择容易丢失全局最优解,但过程比较容易控制,可以动态调整选择概率,根据群体进化情况适时改变群体的选择压力;与的适应值比列选择相比,排序选择种群的多样性更高,后代的选择压力较小,进化能力更强;与模拟退火过程的BOLTZMANN选择相比,不必考虑如何选择退火温度的值和最大的进化代数。设置选择的概率为08。排序选择的流程图如图33所示。使用冒泡法按适应值对第T代进行排序开始第T代种群数量FTM按适应值大小选择,形成第T1代,其数量FT1M08结束图33选择排序流程图(2)交叉算子交叉算子的作用是使个体间进行基因的交流,产生新的子代,从而使种群得到更新。交叉有多点交叉、两点交叉和单点交叉。多点交叉可以使基因快速交流,加快收敛的速度,但整个过程难以控制;两点交叉和单点交叉在整个基因交流过程中比较缓慢,但较容易控制和实施。此外,交叉算子作用下,只进行基因的交流,并不在更新种群过程产生新的基因。本系统交叉算子采用单点交叉,一次作用在两个个体上,随机选中作用的题型,再作用在该题型位串上的某位,将作用域里的两个个体位串都按该位将位串分为两部分,开始相互交换对应的位串。与多点交叉和一致交叉相比较,单点交叉效率较低,位串头和尾部的位总是在不断的交换,不利于快速产生优良个体。但该方法容易理解,过程控制简单,便于学习和研究遗传算法。交叉算子流程图如图34所示。开始交配池中全部M个个体编号为1到M在0,M1间取随机整数I取出交配池中2I1号个体和2I号个体,并置取出标记结束M20否否是是MM1随机选择交叉点的位置对2I1和2I号个体进行交叉操作交配池中的个体已全部置为取出是是否否2I号个体已取出否否是是图34交叉算子流程图变异算子是作用在个体位串的等位基因上的,变异概率大小决定了局部搜索的范围,太大了遗传算法容易蜕变为随机搜索算法,太小了种群的多样性难以确保,本系统将变异概率设置为015。变异算子流程图如图35所示。开始选择变异作用的试题类型T下一个个体随机选择一道已选中的试题A,将其所在位由1置0在T类型中选中一题BB为A或其所在位为1将B所在位置为1结束否是PCTEMP1/排序选择适应值最高的TEMP0JTEMP1ENCODEDJ,0ENCODE_TEMPI,0CONVERTTOSTRINGI1/个体编号ENCODE_TEMPI,1ENCODECONVERTTOINT32TEMP0,1ENCODE_TEMPI,2ENCODECONVERTTOINT32TEMP0,2ENCODE_TEMPI,3ENCODECONVERTTOINT32TEMP0,3ENCODED_TEMPI,0ENCODEDCONVERTTOINT32TEMP0,0ENCODEDCONVERTTOINT32TEMP0,01GROUPGROUP_NEWFORINTI0I0SESSION“USERID“TXTUSERNAMETEXTTRIMPAGERESPONSEREDIRECT“/ADMIN/ADMININFORMATIONASPX“ELSERESPONSEWRITE“ALERT用户名或密码有误“RETURNBREAKCASE2COMCOMMANDTEXT“SELECTCOUNTFROMTEACHERWHEREUSERID“TXTUSERNAMETEXT“ANDPWD“TXTPWDTEXT“INTCOUNT2CONVERTTOINT32COMEXECUTESCALARIFCOUNT20SESSION“USERID“TXTUSERNAMETEXTTRIMPAGERESPONSEREDIRECT“TEACHER/TEACHERASPX“ELSERESPONSEWRITE“ALERT用户名或密码有误“RETURNBREAKCASE3COMCOMMANDTEXT“SELECTCOUNTFROMSTUDENTWHEREUSERID“TXTUSERNAMETEXT“ANDPWD“TXTPWDTEXT“INTCOUNT3CONVERTTOINT32COMEXECUTESCALARIFCOUNT30SESSION“USERID“TXTUSERNAMETEXTTRIMPAGERESPONSEREDIRECT“STUDENT/STUDENTASPX“ELSERESPONSEWRITE“ALERT用户名或密码有误“RETURNBREAKCONCLOSE(二)绑定PROTECTEDVOIDGRIDVIEW1_ROWDATABOUNDOBJECTSENDER,GRIDVIEWROWEVENTARGSEIFEROWROWTYPEDATACONTROLROWTYPEDATAROW/计算自动填充的行数NUMCOUNTIFEROWROWTYPEDATACONTROLROWTYPEFOOTER/计算完毕,在此添加的行INTTOLEFTTOTALROWCOUNTNUMCOUNTINTNUMCOLSGRIDVIEW1ROWS0CELLSCOUNTFORINTI0IALERT备份成功“ELSEREGISTERSTARTUPSCRIPT“FALSE“,“ALERT文件已存在“ELSE/获取文件的路径STRINGPATHFILEUPLOAD1POSTEDFILEFILENAME/获取数据库名称STRINGDATANAME“KAOSHI_DB“SQLCONNECTIONCONNEWSQLCONNECTION“SERVERUIDSAPWD123123DATABASE“STRINGSQL“RESTOREDATABASE“DATANAME“FROMDISK“PATH“CONOPEN/打开数据库连接SQLCOMMANDCOMNEWSQLCOMMANDSQL,CONTRYCOMEXECUTENONQUERY/执行SQL语句REGISTERSTARTUPSCRIPT“TRUE“,“ALERT恢复成功“CATCHEXCEPTIONEXRESPONSEWRITEEXMESSAGETOSTRING(四)倒计时页面倒计时脚本函数代码如下VARTOTALSECONDS/剩余时间秒SELFMOVETO0,0SELFRESIZETOSCREENAVAILWIDTH,SCREENAVAILHEIGHT/倒计时函数FUNCTIONSTARTCOUNTDOWNIFTOTALSECONDS0VARDAYSMATHFLOORTOTALSECONDS/86400VARHOURSMATHFLOORTOTALSECONDS86400/3600VARMINUTESMATHFLOORTOTALSECONDS3600/60VARSECONDSMATHFLOORTOTALSECONDS60DOCUMENTGETELEMENTBYID“LBLDAYS“INNERHTMLDAYSDOCUMENTGETELEMENTBYID“LBLHOURS“INNERHTMLHOURS10HOURSHOURSDOCUMENTGETELEMENTBYID“LBLMINUTES“INNERHTMLMINUTES10MINUTES“0“MINUTESDOCUMENTGETELEMENTBYID“LBLSECONDS“INNERHTMLSECONDS10SECONDS“0“SECONDSTOTALSECONDSELSECLEARINTERVALTIMERFUNCTIONPAGELOADSENDER,ARGSCOUNTDOWNSERVICEGETTOTALSECONDSONSUCCEEDED/获取剩余时间秒/成功获取剩余时间后的回调函数FUNCTIONONSUCCEEDEDRESULTTOTALSECONDSRESULTVARDAYSMATHFLOORTOTALSECONDS/86400VARHOURSMATHFLOORTOTALSECONDS86400/3600VARMINUTESMATHFLOORTOTALSECONDS3600/60VARSECONDSMATHFLOORTOTALSECONDS60DOCUMENTGETELEMENTBYID“LBLDAYS“INNERHTMLDAYSDOCUMENTGETELEMENTBYID“LBLHOURS“INNERHTMLHOURS10HOURSHOURSDOCUMENTGETELEMENTBYID“LBLMINUTES“INNERHTMLMINUTES10MINUTES“0“MINUTESDOCUMENTGETELEMENTBYID“LBLSECONDS“INNERHTMLSECONDS10SECONDS“0“SECONDSTIMERSETINTERVAL“STARTCOUNTDOWN“,1000/开始倒计时WEB服务器端倒计时脚本代码如下JAVASCRIPTWEBSERVICECOUNTDOWNSERVICEUSINGSYSTEMUSINGSYSTEMWEBUSINGSYSTEMWEBSERVICESUSINGSYSTEMWEBSERVICESPROTOCOLSWEBSERVI
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 破产完成合同(标准版)
- 新农村购房合同范本5篇
- 混凝土工程风险管控实施方案
- 城乡供水水源调度模型方案
- 城市污水管网信息化管理方案
- 2025天津西青区招聘初中代课道法老师1人考试参考试题及答案解析
- 2025西安中振科技控股集团有限公司招聘备考练习题库及答案解析
- 2025年葫芦岛市连山区面向社会公开招聘教师29人备考练习题库及答案解析
- 服装公司经营承包合同5篇
- 2025年8月广东广州市天河区萃禾幼儿园招聘编外聘用制专任教师1人备考练习试题及答案解析
- 2025年秋新北师大版数学三年级上册全册教学设计
- 2025-2026人教版(2024)物理九年级全册教学进度表
- 义务教育质量监测学校成绩分析报告
- 2025版房地产抵押按揭续贷合同
- 2025年秋季小学四年级上册语文教学计划及教学进度表
- 北京市西城区2024-2025学年七年级下学期期末道德与法治试题(解析版)
- 2025年广东省高考化学试题(含答案解析)
- 【2025秋新版】三年级上册语文生字组词
- 节能环保供货保证措施
- GB/T 23806-2025精细陶瓷断裂韧性试验方法单边预裂纹梁(SEPB)法
- 第2课 第二次鸦片战争 课件 部编版2024八年级上册历史
评论
0/150
提交评论