计算智能论文.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于离散粒子群算法的排课研究 摘要 排课问题属于背包问题中具有重要实用价值的一类优化组合难题, 描写了如何利用粒子群算法解决排课中的多种冲突。但由于粒子群算法有收敛速度慢且易收敛于局部最优的缺点, 针对排课问题中最优解的分布特点, 对粒子群算法进行了改进。本文提出了一种改进的离散粒子群算法。采用基于矩阵的编码方式,对粒子的位置和速度更新方法进行重新定义。利用C#语言实现了一个基于离散粒子群算法的排课系统。并以不同学院一个学期的课程表为依据对系统进行了评估,结果验证了粒子群算法在排课系统中应用的可行性,在一定程度上解决了高校复杂的排课难题,实现了智能化、人性化的排课过程。 关键词:排课 粒子群优化 离散粒子群优化排课问题是一个涉及多种因素的动态组合规划问题,它要保证各种教学资源不产生冲突,并且要满足教学资源各方面的约束条件。教学资源主要包括课程、教师、教室、时间。排课问题的求解过程就是对任何课程、班级、教师、教室安排出一个相同的空闲时间,在安排时排课不能发生冲突,同时遵守一些约束条件。所谓冲突就是将上不同课程的两个或多个班排成了同一时间或同一教室,或在同一时间为一个教师安排了多门课程等等。一般的排课流程是:首先,各院系将各自的新学期课程表、任课教师教师情况、班级课程安排情况的数据录入排课系统,然后,排课系统根据本学校的教室情况以及各种约束条件进行排课。排课问题被证明是NP完全问题[1]。粒子群优化算法(Particle Swarm Optimization,PSO)是由Eberhart和Kennedy于1995年提出的一种算法。PSO算法进行了改进,构造了一种基于矩阵编码的离散粒子群算法,实验表明这种算法能有效解决高校的排课问题。 2.排课问题的描述 排课问题[6]就是将课程、班级、教师安排在一周内相应的时间和教室内且不发生冲突。因此,给出如下描述:学校有R 间教室,C 个班级,L门课程,P 位教师,T 个时间段;教室集合R={Ri,i=1,2,3…Nr};教室分别可容纳的人数集合X={Xi,i=1,2,3…Xp};班级集合C={Ci,i=1,2,3…Nc};每个班级学生人数集合K={Ki,i=1,2,3…Nk};课程集合L={Li,i=1,2,3…Nl};每门课程上课班级数集合Y={Yi,i=1,2,3…Ny};教师集合P={Pi,i=1,2,3…Np};每位教师负责上课门数Z ={Zi,i=1,2,3…Nz};时间段集合T={Ti,i=1,2,3…Nt}。 结合学校的实际情况,对于一个可行的课程表必须满足以下约束条件: (1)同一时间段同一个班级只能上一门课程; (2)同一时间段同一位教师只能讲授一门课程; (3)同一时间段同一间教室只能安排一门课程; (4)教室可容纳的人数必须大于上课学生人数; (5)每门课程开课教室满足特定的类型要求。 五个元素的笛卡尔积L×C×P×T×R就构成了排课问题的解空间,而排课也就是在这个解空间中找到一个满足各种约束的解[5]。教学规模太大,这个解空间的规模也就可想而知了。但根据排课的具体情况,易见, 课程-班级-教师之间的关系绝不是L×C×P的满映射关系;又因每个教学时间段、每个教室都可以安排课程,所以时间-教室可以看成是T×R的满映射。则排课问题可以表示为映射: :f L-T×R。即为每门课寻找一个合适的时间和教室。其中L是课程实体,它与教师实体和班级实体有关,即每门课程有其对应的任课教师和学习班级(每周两次以上的课看成是不同的课程);T×R表示时间和教室的笛卡尔积:T×R={(T1,R1), (T1,R2),…, (T1,Rnr), (T2,R1), (T2,R2),…, (T2,Rnr), (Tnp, R1), (Tnp,R2),…, (Tnp,Rnr)}可知f(L1)=(Tx,RY)∈T×R,且Tx∈T,RY∈R 排课五要素中,课程是关键要素,其他的要素都与它有关系。排课问题是要求对所有课程找出使给定目标函数最优的分配方案。.离散粒子群优化算法 基本粒子群算法[8]及其改进算法[9, 10]主要被用来求解连续论域的问题,实验证明它是一个非常有效的工具, 但在实际应用中,很多问题被建模在离散空间中就显得无能为力了。 3·1 粒子的编码方法 结合排课问题涉及的要素和特点,采用了矩阵编码方式: 设一周有T个时间段可用来安排上课,有R个教室供使用。以R个教室作为行,以T个时间段为列构成一个二维矩阵,记为X[R,T],矩阵中每个元素即为课元编码,由教师、课程、班级三元素构成。这样就以矩阵的方式表示了一种排课方案,也可看成是一个粒子。因为排课方案受到许多约束条件的制约,所以并不是每个粒子都是满足要求的可行解,在初始化粒子时加以调整。 3·2 种群的初始化 粒子群中的每个粒子对应于待解决问题的一

文档评论(0)

fc86033 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档