SchedulingSystem

所属分类:人工智能/神经网络/深度学习
开发工具:Visual Basic
文件大小:2699KB
下载次数:90
上传日期:2009-08-02 13:00:20
上 传 者pengjuman
说明:  可用于大学的遗传算法实现排课系统!用遗传算法能达到最好的效果
(Can be used for the genetic algorithm University Course Scheduling System! Using genetic algorithms to achieve their best effect)

文件列表:
BackData\2002系统测试\字典.mdb (290816, 1999-04-18)
BackData\2002系统测试\开课计划.mdb (165888, 1999-04-18)
BackData\2002系统测试\权值衡量.mdb (90112, 1999-04-18)
BackData\2002系统测试\衡量.mdb (114688, 1999-04-12)
BackData\2002系统测试\课表.mdb (739328, 1999-04-12)
Client\Button.ctl (3251, 1999-03-31)
Client\Button.exp (966, 1999-03-31)
Client\Button.lib (2586, 1999-03-31)
Client\BUTTON.oca (17920, 1999-03-29)
Client\Button.ocx (40960, 1999-10-19)
Client\Button.vbp (739, 1999-03-31)
Client\Button.vbw (53, 1999-04-22)
Client\CDPModule.bas (1153, 1999-04-18)
Client\MSSCCPRJ.SCC (345, 1999-03-31)
Client\SysSet.bas (3460, 1999-04-21)
Client\增加学期计划.frm (13902, 1999-04-02)
Client\增加学期计划.frx (3274, 1999-04-02)
Client\开学计划.frm (49361, 1999-04-18)
Client\开学计划.frx (6572, 1999-04-18)
Client\用户注册.frm (7640, 1999-04-18)
Client\用户注册.frx (3274, 1999-04-18)
Client\系统登陆.frm (10655, 1999-04-15)
Client\系统登陆.frx (3274, 1999-04-15)
Client\自动排课系统.exe (86016, 2007-11-09)
Client\自动排课系统.frm (11889, 1999-04-15)
Client\自动排课系统.frx (12934, 1999-04-15)
Client\自动排课系统.vbp (1723, 1999-04-15)
Client\自动排课系统.vbw (231, 1999-04-15)
Client\课时查询.frm (14351, 1999-04-12)
Client\课时查询.frx (8050, 1999-04-12)
Client\课表查询.frm (10181, 1999-04-18)
Client\课表查询.frx (4070, 1999-04-18)
Client\课表预览.frm (50205, 1999-04-17)
Client\课表预览.frx (11009, 1999-04-17)
Data\排课信息.mdb (153600, 2003-08-23)
Data\数据备份.mdb (83968, 1999-04-18)
Data\用户资料.mdb (86016, 2003-08-23)
Data\系统字典.mdb (219136, 1999-04-20)
Default\字典.mdb (290816, 1999-04-12)
... ...

遗传算法实现自动排课! 高校的排课管理一般包括:制订各个院、系的开课计划、课表编排、课表查询以及课表打印。由于高校排课所涉及到的排课资源(教师、教室、课程、班级、时间段)多并且关系复杂,用传统的手工编排课表,不但要耗费大量的物力、人力,而且在编排课表的过程中只能利用以前的排课经验,没有一定的计划性和科学性。课表编排效率低,冲突多,不便于管理和查询,从而给学校的课程安排带来了很多不必要的麻烦。 随着近几年计算机技术的高速发展,现在大多数高校相继开发了适应于本校使用的排课系统。由于利用了计算机来进行课表的编排,节省了物力、人力。但大多数课表编排系统的排课效果并不是很理想,主要和解决问题的算法和问题分析有密切的关系。大部分只注重与处理资源的冲突而不注重资源的优化。虽然能够得到一张正确的课表,可并没有充分考虑到资源与资源之间的关系。诸如,学校的教师与时间段的关系、课程与教室的关系等,所以资源的分配并不够合理。考虑到解决这几个方面的缺陷,有必要去开拓新的思路、新的方法来改善排课的质量。 遗传算法是二十世纪七十年代为研究自然与人工系统的自适应行为而提出的一种广为应用的高效的随机搜索与优化算法。是一种借鉴生物界自然选择和自然遗传机制的高度并行、随机和自适应搜索算法。在解决问题的过程中,对优化问题的每个解空间的每一个个体进行编码,然后对编码后的优化问题的解空间进行组合划分,从中选择出问题的最优解或者是较优解的组合。在遗传算法中,每一个问题的解称为染色体,每一个个体称为基因。每个染色体都对应于问题的一个解。遗传过程是从初始种群出发,使用交换和变异来产生新一代种群,并且使用适值函数通过计算种群中个体的适值来进行优选劣汰。这样一代一代演变下去,直到满足期望条件为止。 笔者利用遗传算法来进行课程表的编排,先用"随机匹配"算法来生成遗传算法的初始种群,解决了课表编排的冲突问题。再利用遗传算法来进行课程表的优化。这样利用该系统来排课将能得到一张资源分配合理的正确的课表。有关于课表分析、资源分析和遗传算法过程的具体内容请参考论文《基于遗传算法的时间表优化》和《基于遗传算法的时间表优化编码方案》。 2、 系统设计思想: (1) 系统结构:   根据高等院校排课管理的几个步骤,笔者在设计该软件的时候考虑到排课过程的统一性和便利性,把"排课"和"管理课程表"、"管理资源"集中在一起,并且开发出服务器/客户机环境的排课系统,把排课的具体工作分配到各个院、系中。通过一系列的有序的步骤便可以正确无误地完成高校课表的编排。可以大大地提高排课质量,而且系统提供的网络功能能够让教师和学生更加方便地通过局域网了解上课和资源的使用情况。学校中的各个院、系只要把学期开课计划填写完成,然后用客户机通过学校局域网就可以把整个开课计划传送到服务器中,等到服务器完成课表的编排以后,通过局域网把生成的课程表发放到各个院、系中,各个院、系在根据具体的需要来进行课表的打印、补课、调课等。通过局域网来传输数据不仅节省了时间,也保证了数据的正确性。 (2) 系统分析: 在系统的设计阶段,笔者对系统进行了详细的分析,其中包括课程表、排课资源的分析。对于高等院校的排课问题,由于存在着流动教室、合班上课、单双周上课等问题,所以系统本身就应该考虑到并且能够实现。 对于流动教室的问题,也就是说,一个班级可以在学校所允许的所有的课室中上课,并不规定说每一个班级固定在那个课室上课。我们的解决方案是通过规定教室类型和教室的的地理位置来分配,每个不同的院、系可以规定一系列的教室,系统分配时就根据这些用户动态生成的规定来生成课程表,这样不仅解决了流动教室的问题同时也优化了各个院、系上课场所要比较集中的约束。 对于合班的问题,我们把所有的合班看成是一个班级,以一个班级来与教师-课程建立排课中的教师-课程-班级-课时对。这样,避免了把几个合班上课的班级分开以后会出现合班上课的班级与要求不一致的问题,同时也减少了遗传算法的算法复杂度和生成最佳课表的时间。 单、双周上课是根据课程的周课时和上课节数来确定的。比如课程的周课时为4那么它的上课的课时应该是1课时=2节。如果课程的周课时为3并且上课节数可以出现有3节连堂的话,系统也是安排每周为1课时=3节,上课节数不允许出现3节的系统是安排单、双周排课。单、双周课时的选择根据具体的需要来确定。 (3) 数据库结构:   在本系统中,主要是利用数据库来存储遗传过程中的染色体和学校的排课资源,因此对数据库中的各个表、各个字段的安排是否得当将关系到整个遗传操作甚至是整个系统的效率与质量。笔者在安排数据库的时候把数据库分为字典、课表、衡量、权值衡量。

近期下载者

相关文件


收藏者