遗传算法在自动排课系统中应用

遗传算法在自动排课系统中应用

ID:6228152

大小:27.00 KB

页数:5页

时间:2018-01-07

遗传算法在自动排课系统中应用_第1页
遗传算法在自动排课系统中应用_第2页
遗传算法在自动排课系统中应用_第3页
遗传算法在自动排课系统中应用_第4页
遗传算法在自动排课系统中应用_第5页
资源描述:

《遗传算法在自动排课系统中应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、遗传算法在自动排课系统中应用  摘要:排课问题是一个有约束的、多目标的组合优化问题,是一个已被证明的NP完全问题。本文旨在相关遗传算法和多目标优化理论的基础之上,结合数学分析的方法,研究了遗传算法在排课系统中的应用。关键词:遗传算法自动排课VBSQL中图分类号:TP18文献标识码:A文章编号:1007-9416(2013)10-0131-02课程表的编排是一个涉及多种因素的组合规划问题,它要保证在课程安排中教师、学生、教室不能产生冲突(所谓冲突,就是将需上不同课程的两个或多个班安排在了同一时间、同一教室,或为同一教师在同

2、一时间段安排了多门课程等情况),并且要满足教师的要求和资源限制等约束条件。而使用计算机进行排课能够快速地得到满足约束条件的可行结果,具有排课时间短、省人力和质量高的优点,进而使教务人员从繁杂的排课任务中解脱出来。1遗传算法5遗传算法是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的随机化搜索方法。也是计算机科学人工智能领域中用于解决最优化的一种搜索启发式算法。因此,采用具有智能型和并行性的遗传算法,来对排课问题进行求解,是一个比较明智的选择。2排课约束条件分析编排课表牵涉的因素很多,包括时间、课程、教室、

3、校区、院系、班级、教师等。但都要遵循一个原则,那就是:课表要有利于教学设备的充分利用,要符合教学规律。将这个原则进行细化、清晰化,可以归纳为以下6项硬约束和6项软约束:硬约束:(1)同一班级在同一时间只能安排一门课程;(2)同一教师在同一时间只能安排一门课程;(3)同一教室在同一时间只能安排一门课程;(4)教室总数要大于同一时间安排的课程总数;(5)教室容量必须大于上课学生人数;(6)课程要安排在它需要的类型教室中。软约束:(1)优先安排全校公共基础课;(2)一周内课次多于2次以上的课程,在时间安排上要求尽量隔天安排;(

4、3)较难课程应安排在上午第一节或下午第一节;(4)体育课后尽量避免直接排课;(5)教师一天的授课活动尽量安排在同一校区,有效地解决跨校区问题;(6)同一门课程尽量安排在固定的教室。3排课问题的数学分析首先需要将排课中的主要元素用数学的符号的方法来表示出来。5在排课问题中某学院某学期课表的数据模型就是的组合。在自动排课前,需要进行班级课程设置、班级课程任课教师设置,这些设置就是为了确定、、三者的关系。设定好它们的就得到了要进行排课的任务,每一个排课任务就对应一个的组合。自动排课的处理过程就是在满足约束的条件下确定每个任务对

5、应的组合在一周内与剩下的两个元素和如何进行组合。下面用数学的方法来分析排课的约束条件:对于硬性约束条件1~3,用数学来表示就是、、的组合是唯一的,有且只能有一个。对于硬性约束条件4,用数学来表示就是对于任意的时间片,教室总数r大于组合的数量。对于硬性约束条件5,用数学来表示就是对于任意的组合,教室容量必须大于班级的人数。对于硬性约束条件6,用数学来表示就是对于任意的课表组合,课程所要求的教室类型必须与教室的类型一致。而针对于软性约束条件1~6,用数学来表示就是排课任务具有较高的优先级,要优先进行安排;在一周内的次数大于2

6、时,在组合成时,每次的尽量不同;任意的课表组合,如果课程是较难的课程时,的节次n最好是1或3;课表组合,如果课程是体育课时,的节次为,则最好不要再出现为的课表组合;对于相同的排课任务,如果班级Cy是属于不同校区的,每次的尽量不同;排课任务在一周内的次数大于2时,在组合成时,每次的尽量相同。54遗传算法设计遗传算法以一种群体中的所有个体为对象,并利用随机化技术指导对一个被编码的参数空间进行高效搜索,是一种通过模拟自然进化过程搜索最优解的方法。系统进行排课时,具体算法描述如下:4.1编码一条染色体中应包含所有排课DNA分子,

7、每个排课DNA分子又包含班级课程信息、教师信息、教室信息和时间信息,以及院系和学期信息。由于院系和学期在处理中是提前设定好的,在每次处理时都是一个给定的值,所以在染色体中可以不考虑他们。在前面的数学分析中我们将课表组合表示为,这里将拆分为MN,则可将染色体表示为。、、、都用他们所对应的字段Id的值来表示。M表示星期,N表示每天课节数。4.2初始种群采用系统的随机数,生成初始种群。在前面的数学分析中我们将排课任务表示为,在进行排课时初始化种群中的个体就是用随机函数生成染色体中的的组合。4.3确定适应度5确定适应度,首先对一

8、条染色体中的每个DNA分子计算适应度,然后计算一条染色体中所有DNA分子适应度之和,将该值作为个体适应度。排课系统中适应度与排课约束中归纳的6条硬性约束和6条软性约束对应。其中最主要的有检测班级、教师和教室三者的时间冲突。所有的约束条件的满足情况就是对应的适应度。而且对于硬性约束条件,系统要求必须满足,这也就对应的要

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。