文未可获取一份本项目的java源码和数据库参考。
(一)选题来源与背景
高校的每学期伊始,排课是教务处工作中的重中之重。安排合理无资源冲突(教师、教室和设备等教学资源)的课表是教务工作必须面临的问题。传统的人工排课是一项十分繁锁而复杂的工作。出现教室资源冲突或教师资源冲突的情况是令人最为担忧的问题,一旦出现冲突,则工作繁琐,调整的工作量巨大。高校的排课是教学管理中最基本、最重要、十分繁重而复杂的工作,它涉及到全校全部的专业,全部的师生和全部的课程,它的本质就是为所有的课程安排一组适当的教学时间和地点,使教学能够顺利进行。随着各高校的扩招,教师和教室源越发紧张,使得本来就有难度的排课问题更加困难。
(二)研究目的
为了保证教学质量,制定一套严密、规范的教学计划和执行合理的课程安排是高校亟待解决的问题。排课作为教务处日常管理工作中最重要也最复杂的部分之一成为国内外学者重要的研究课题。但是,在整个排课过程中,自始至终充满了冲突。它属于一类涉及多种因素的组合规划问题,它必须使课程安排中的教室、教师和学生不发生冲突,这是最基本的要求。在此基础上要尽量满足教师提出的其它要求和教室资源的约束。然而在人工排课过程中实现这样的要求是有一定困难的,而且工作量非常大,并且手工排课的缺点会日益突出。而计算机恰好能帮助解决这个问题,它具有自动运行、计算速度快等特点,只要有相应的智能化的排课系统软件,就能很好地解决排课的困难,实现教学管理智能化。计算机应用技术用于日常工作安排是目前科技发展的趋势,为减轻人类工作的压力,将繁琐的判断与运算交给计算机来做可充分发挥计算机的优势并大大减少人的工作量,是社会科技进步的表现。智能排课系统投入使用后,无需繁琐的人工安排,教务处只需设置好学校基本情况及排课要求,利用系统排出课程表就能应用于新学期使用。
(三)国内外研究现状
在国外,早在20世纪50年代开始了这方面的研究,并在理论上论述了课表问题是NP完全的。但由于现代计算机尚未找到解决NP完全问题的多项式算法,此后的研究便更多地转向经验方式。进入90年代以后,国外对该课题的研究仍然很活跃,对于排课问题已使用的算法有:关联规则FP-growth算法、基于时间位图迭加匹配算法、基于资源匹配的算法、分组优化决策算法、分支定界法、有限回溯法、拉格朗日松弛法、二次分配型法等。由于课表约束复杂,进行问题描述时往往导致问题规模剧烈增大。具研究表明利用运筹学中分层规划的思想将问题分解,将是一个值得研究的方法。
在国内,我国对这一问题也进行了许多研究,特别在应用方面也出现了一些好的排课软件,80年代初期出现了对课表问题的研究。南京工学院的UTSS(AUniversityTimetableSchedulingSystem)系统,清华大学的TISER(TimetableSchedulER)系统,大连理工大学的智能教学组织管理与课程调度和西安交大的排课系统等是该阶段中比较有代表性的系统。它们在实际应用方面起到很好的作用,是很好的人/机交互式排课系统。还有些市场流行的很多排课系统比如:相似排课CIS,plsn智能排课系统,正信华课程安排管理系统,排课博士,排课无忧等等,这些排课软件在解决排课问题时大多数采用的算法都是回溯算法,排课的效果也都很好。但是该阶段的系统大多是以“班”为单位,运用启发式函数等方式模拟传统的手工排课来进行系统排课的,或多或少存在着问题。这些系统共同的弊端在于:使用的局限性。系统设计时依赖于学校的教学体制。实际上,80年代初期国内研制开发的排课系统在实用性上并不尽如人意。系统的定制性强,但是可扩充性很差,难以广泛推广使用。目前,已有许多学者尝试将其他领域的理论(如人工智能等)引入到排课系统中,并给出了不同的解决方案。各高校也曾根据自身实际的教学体制开发了自身定制的排课系统,虽然这些系统排课周期长、排课员工作量大,但在真正的机器智能排课系统出现之前,这些系统基本可以完成高校的排课任务。
从目前情况看,无论国际还是国内,更为完整有效的自动排课算法还处于研究阶段。课程调度是教学管理最重要、最繁重的工作之一。科学地编制课程表,合理地进行课程搭配,适当地平衡师生负担,对稳定学校教学秩序,提高教学质量,有着重要作用。2000提出基于C/S的开放式智能排课系统的研制;用计算机辅助排课具有排课时间短、省人力和质量高的优点,设计了基于优先级的自动排课算法(Priority-basedCourseSchedulingAlgorithm,PCSA),本算法通过使用划分等价类、计算优先级等方法大大降低了课程调度的算法复杂度,实现了课程的合理编排功能;再如基于遗传算法的排课系统,遗传算法是一种借鉴生物界自然选择和达尔文的进化论发展起来。是一种随机搜索算法,并且非常有效的解决NP完全的组合优化问题,基于遗传算法解决在排课过程中的冲突问题。2006提出基于B/S结构的高校排课系统,系统采用的是目前比较先进的B/S网络结构,采用JSP动态网页技术开发工具,选用Mysql2000作为后台网络数据库,并详细介绍了系统的开发方案和相关技术的实现。由于排课问题是一个NP完全优化问题,该排课系统采用了遗传算法来搜索近似最优解。经过实验测试,认为本方法对实现高校网上排课,完善高校教务管理工作具有一定的参考价值;前后又出现基于贪心算法的排课系统、基于免疫算法的排课系统[6]等。但多数情况下对排课系统的数学抽象都过于简单而且有些不能符合实际情况。实际排课中非常规因素和干扰因素较多,特别是规模较大的高校,算法应用效果不佳。
(四)主要参考文献
[1] 费雅洁,许泓宁。基于 C/S 的开放式智能排课系统的研制[J], 沈阳电力高等专科学校学报, 2018年03期
[2] 曾光清 基于优先级的人性化排课算法研究[J] 信息与电脑 2019,16 (12) : 127 - 128
[3] 业宁,梁作鹏, 董逸生。一种基于遗传算法的TTP问题求解算法. 东南大学学报(自然科学版),2019(1):41-44
[4] 唐勇, 唐雪飞, 王玲。基于遗传算法的排课系统.计算机应用, 2017(1):93-94,97
[5] 基于 B/S 结构的高校排课系统的设计与实现.吉林大学, 2016
[6] 张晶,李广军等.智能排课算法综述[J].西南民族大学学报:自然科学版, 2019, 35 (3) : 675 - 678
[7] 王凤. 高效排课问题的图论模型及算法[J].计算机工程与应用, 2019, 45 (27) : 53 - 55
[8] 李振,王晓全,张子蛟,候跃生基于专家系统的交互式排课系统的实现. 郑州大学学
报工学版. 2018(4)
[9] 李玉吉,卢才武,刘冠.蚁群遗传算法在高校智能排课系统中的应用. 现代电子技术, 2019
年14期
[10]陆永祯,段慧坤,周芸, 等. SQL Server 2000 数据库管理和程序开发一周通[M]. 北京:中国铁道出版社, 2017.1
[11] Ronald J. Norman, Object-Oriented Systems Analysis And Design, Prentice-Hall, 2016.1
[12] Date C J. An Introduction to Database System(Ed.7) New York :Computer Science Press ,2018.1
[13] Martin J. Principles of Database Management New York:Computer Science Press, 2017.3
[14] S.Lidin. Inside Microsoft.NET IL Assembler, Redmond: Microsoft Press. 2016.
[15] Tsichritzis D C,Lochovsky F H. Data Models. Prentice-Hall,2017.
(一)研究内容
系统包括课程信息管理模块:主要实现对所开设课程的相关信息的添加。教学任务信息管理模块:主要实现教研室对教师的教学任务安排。师教学工作量管理模块:主要实现教师教学工作量的提交和计算。自动排课功能,进行排课,模拟退火算法,排课智能化,尽量不手动调整,每次生成一个班的课表。
(二)研究思路
通过基于JAVA的高校智能排课系统的需求分析;进行数据库分析,设计数据库;构建程序模块图,根据高校智能排课系统模块图建立程序主体与框架;设计并实现各模块功能; 链接程序与数据库,调试运行;多次测试,直至程序稳定运行,完成系统设计。
(三)研究方法
(1)总体设计,确定软件系统的结构,对全局数据结构进行设计,进行模块划分,确定每个模块的功能及模块间的调用关系,生成结构图及概要设计说明书。
(2)详细设计,对智能排课管理系统进行设计和美化工作,并对局部功能结构进行设计,编写代码,生成源程序代码、内部文档,并对局部功能结构进行设计,调试,编写详细的设计说明书。
(3)系统测试,针对系统中的错误和缺陷,经过不断修改和调试,使所设计的系统更加完善。