ImageVerifierCode 换一换
格式:DOC , 页数:6 ,大小:25.50KB ,
资源ID:1532096      下载积分:10 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-1532096.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于遗传算法的智能排课系统的设计和实现.doc)为本站会员(gs****r)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

基于遗传算法的智能排课系统的设计和实现.doc

1、基于遗传算法的智能排课系统的设计和实现摘要:本文针对遗传算法后期收敛速度慢,易陷入局部最优的困境,提出了改进方案,有效解决了智能排课问题。 关键词:遗传算法 ;排课问题;组合优化 中图分类号:N945.23 文献标识码: A 文章编号: 排课是一个比较复杂的过程,对于特殊课程的排课采取的是手动方式,而一般课程则采用自动方式。在自动排课前需要对一些参数进行初始化,课表生成后可以进行人工调整。 1 排课的约束条件 在排课的过程中,有些硬性约束条件必须遵循:如教师、教室、课程、时间和地点均不可存在冲突;也有一些软性约束因素值得考虑,这样能使课表更加的合理和人性化,如专业课尽量安排在效率较高的时间段;

2、尽量满足某些教师的特殊上课时间要求;同时排课也不能太零散,要尽量减少教师来校的次数;应尽量避免学生一天课程很满而另一天却整天没课的情况,学生的上课时间不能安排得太过集中;在某个时间段不做任何教学任务的安排,以便教师和学生能利用这个时间开展一些课余活动。 2 排课的遗传算法设计 2.1 遗传算法流程设计 遗传算法的核心内容包括:参数编码、初始群体的设定、适应度函数的设计、遗传操作设计及控制参数设定1。 (1)基因编码:对课程和授课教师进行组合编码,可以采用教师编号(5 位)+班级编号(5 位)+教室编号(4 位)+课程编号(6 位)+周学时(2 位)+特殊要求(6 位)的编码方式。 (2)产生初

3、始种群:首先把固定教学时间段的教师编码填入对应的时间段中,然后产生一个 120 的随机数,根据产生的随机数在相应的位置填入该班的其他教师编码。若填入的位置已有数据,则重新产生随机数,直到所有的教师编码无重复地填入数组。如此循环直至产生满足种群规模数量的个体,组成初始种群。可以看出,上述方式产生的。 (3)冲突检测:初始种群个体含有大量的冲突4,由于我们在编码已经考虑到时间、班级、教室避免同时上一门以上课程的冲突,因此,只需对同一时间,同一个教师同时上一门以上课程的冲突进行检测和消除。 (4)冲突消除5:读取第一个课程表二维数组 KCB(BJS,20)中第一个数据(教师编号) 。将读取的数据与

4、KCB 数组中该列下一行的数据进行比较,若一致,则选择该行随机列的数据,若可以调整,则互换这两个数据;若不可调整则再次对该行随机列的数据进行选取,直到数据互不相同。取该列第三行数据,重复操作至该列所有数据互不相同为止。读取 KCB(1,2) ,重复以上过程,直至每列数据互不相同,则冲突消除。该算法的对提高遗传算法处理效率有明显效果。 (5)构造适应度函数:构造函数 f(1):考察多个教学时间段课程尽量分散度;函数 f(2):教师每天授课任务均衡度;函数 f(3):学生课时分布均衡度;函数 f(4):课程安排时间适宜性。得到适应度函数为:其中,k(i)为权值。 (6)遗传算子 选择算子:模拟生物

5、界中的优胜劣汰的自然选择过程,采用赌盘法(如图 2 所示) ,将适应度高的个体放在轮盘较大区域,适应度低的放在轮盘的较小区域,则选择适应度高个体的几率会明显增大,从而筛选出适应度较高的个体6。 图 1 赌盘选择法 交叉算子:选择父本个体后随机选出两个个体,随机确定一个数作为交叉位置进行互换操作,如两父本个体 F1、F2,位置为左起第 6 位,则: 父本:F1=12345 6 789 F2=98765 4 321 产生子代:P1=12345 4 789 P2=98765 6 321 变异算子:在染色体上随机选择两点,将对应数据进行反转,如: 325 321 257 变异为 325 123 257

6、 (7)参数设置 种群规模,不宜过大也不宜过小。过小减弱群体多样性,可能不存在最优解;过大则会增加计算量,降低算法的运算速度。交叉率,交叉概率取值过大时,会近亲繁殖,失去活力;过小对系统不利。一般认为取值在 0.60.9 之间,本系统取 0.7。变异率,变异概率较大时,会使遗传算法变成随机搜索;当变异概率较小时,新个体的产生会少。进化迭代数,为了使最终结果既收敛又能达到最优,那么遗传代数的取值应该足够大,本文遗传代数取值为 1000。 3 实例测试及分析 本系统利用 Matlab 7.6 进行了模拟测试,用到的数据如表 1 所示: 表 1 实验数据 (1)种群规模 选取三个对照组进行实验: 表

7、 2 种群规模对排课效率的影响(单位:秒) 由表 2 可以看出,种群的规模越小,时间越短,效率也就越高。 (2)交叉概率 表 3 交叉概率对排课效率的影响(单位:秒) 从表 3 中观察到,交叉概率的取值较大时,它对系统效率的影响则较小。经过反复分析,本系统 Pc 取值为 0.7。 (3)变异概率 表 4 变异概率对排课效率的影响 从表 4 看出,过大会使算法的稳定性低,过小又会使得全局搜索难以进行,并且很难有较好的模式产生。 基于以上数据,可将排课求解过程中所需要的参数值设置如表 5 所示: 表 5 参数设置 实际求解效果如图 3 所示: 图 3 遗传进化过程适应度值变化曲线 4 结论 实验证

8、明,应用遗传算法解决排课问题时收敛效果是比较好的。 参考文献: 1张春梅,行飞.用自适应的遗传算法求解大学课表安排问题J.内蒙古大学学报:自然科学版,2002,33(4):459464 2徐艳斌.基于遗传算法的高校排课系统设计与分析.广东工业大学工学硕士学位论文D,2007,3547 3胡小兵,鲁宏伟,基丁.模糊专家系统的排课系统关键技术研究.电力学院学报(自然科学版),2001:16(4) 4朱冠宇,王乘,席大春.利用遗传算法求解中学课表安排问题.计算机工程与应用,2004(27):215,218 5孙建平,曾经梁.一个综合应用人工智能技术的课表专家系统.微机发展,2004(5):72,86 6业宁,梁作鹏,董逸生.一种基于遗传算法的 TTP 问题求解算法.东南大学学报(自然科学版),2003(1):4144

Copyright © 2018-2021 Wenke99.com All rights reserved

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

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

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