- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
解决UTP问题多方法结合算法中人性化方面考虑
解决UTP问题多方法结合算法中人性化方面考虑
[摘要]使用一种多方法结合的解决方法解决UTP问题,这种方法是在一个缩小的解空间里将自适应遗传算法和分层思想结合应用。并着重考虑到UTP问题中各种人性化的要求。
[关键词]大学课程表 排课 自适应遗传算法 人性化
中图分类号:G47 文献标识码:A 文章编号:1671-7597(2008)0910092-02
一、引言
在教务工作的数字化中,相比其它教务工作,排课问题的计算机化是一个难题。排课问题也称为大学课程表问题,即UTP问题。1975年,美国S. Even[1]等人证明了UTP问题是NP(Non-deterministic Polynomial) 问题,即找不到多项式时间求解算法。也就是说,它会因组合爆炸而导致得不到最佳结果。UTP问题要求将课程、教师、学生等要素安排在有限的时间和教室中,但它不是上述五要素的一个简单的排列组合,它要求满足这五要素之间相互制约的“硬约束”和“软约束”条件。硬约束条件主要是保证课程、教师、班级、时间、教室五要素不冲突,软约束条件主要包括为了提高满意度的各种人性化设计要求。设计一个较好的排课系统,应考虑各种人性化的指标。而人性化的指标又因各学校而各有差异。分析各高等院校教学模式,可得到如下硬约束和软约束条件。
其中硬约束条件如下:
硬约束条件1:必须根据教学计划所规定的学时数排课,不得任意增减。
硬约束条件2:教室类型要能满足课程需求。
硬约束条件3:教室容量大于上课班级人数。
硬约束条件4:同一时间不能有相同“班级-课程-教师组合体”。
硬约束条件5:同一时间不能有相同教师。
硬约束条件6:同一时间不能有相同班级。
软约束条件一般指提高满意度的排课条件,本文中尽力讨论了各种人性化的制约条件。考虑到的如下:
软约束条件1:一门课程的几次课在一周之内应间隔排列。
软约束条件2:上课班级人数尽量接近教室容量。使全部班级离差的平方和最小。
软约束条件3:繁难课程尽量排在上午1-2节。体育课尽量排在下午或者上午3-4节。
软约束条件4: 对学生尽可能连续两次讲课之间更换教室少。
??约束条件5: 对教师尽可能把同一课程的不同讲次安排在同一教室。
软约束条件6: 考虑老师的身体状况和年纪情况,优先安排身体需要照顾和年龄大的老师。
从50年代末期开始,人们就尝试着用各种方法求解UTP问题,得到了许多颇有价值的成果。但不管是哪一种算法,单独解决UTP这种排课问题总是有一定的限制。本文也尝试使用一种多方法结合的解决方法,这种方法是在一个缩小的解空间里将自适应遗传算法和分层思想结合应用。并着重考虑到各种人性化的要求。
二、系统设计
总体设计思路如下:
第一步:建立数据模型:系统分析后,建立属性数据库的表结构。
数据库的设计是以规范化理论为基础进行的。符合1NF、2NF、3NF、BCNF等各级范式。这使得在今后的应用开发中便于投影、选择、连接。在方便用户方面,避免了冗余及数据库管理维护方面可能发生的一些异常现象。但是并不是完全死板的符合范式,还要看程序运行中对数据的需要。
每个数据元素也是分层次,比如教师应分老年和中青年,分男老师和女老师,身体健康和需要照顾的。可以在排课时依照层次进行优先级设置。
第二步:分类的思想。
分类思想是基于实际的系统,并不是在全部解空间内求解,而是将问题分类简化,把一个很复杂的大问题化为有限个简单化的小问题;在这里主要指排课可以分院、系、年级几个子类分别排课。
第三步:分层的思想:在管理学中,系统中并不是所有要素均处于一个等级上,系统本身就是一个层次化的系统。
第一个层次是指先排课程、教师、班级,并将其作为一个单个“课程-教师-班级组合体”。
第二个层次是指做好一个时间-教室组合的矩阵,或者说一个二维的坐标空间,如表2的矩阵,其中,t代表时间(以35为例),c代表教室。矩阵中的每个元素就是一个“班级-课程-教师组合体”。表1说明35个时间号所对应的实际时间。
第三个层次是还要注意在二维数组的基础上考虑第三维,即学期的各个周,因为所有课程开始周和结束周不一样。但对于每周来说,排课方法是一样的,只是要放的课程不一样。而且第三维中也会有很多周的课程也是一样的。
这是分层的算法思想,可以把单层大问题简化为多层的若干小问题。每一层要解决的问题比较全部用一层来解决要简化。当然总层数太多也会有问题,我们这里只有三层。
分层思想同样缩小遗传算法的解空间,是缩小解空间的两种方法之另一方法。有了分层思想,会减少解空间中的很多许多无意
文档评论(0)