1、 1 1 引言引言 1 1.1 .1 开发背景开发背景 随着信息技术的飞速发展,各个行业的信息化势在必行。科技的进步大大地提 高了生产率。作为高校,如何才能提高办学效率,更好地完成教学任务,跟上社会 发展步伐,这是一个摆在教学工作者面前的一个迫切的问题。应用信息化来改造传 统的教学管理模式是一个重要途径 1。 近几年来,随着各高校办公自动化工作的推进,教务管理自动化也被摆上了日 程。在教务工作中占有很大比重的一项就是每学期的课程表排定工作。由于教工、 教室和设备的相对紧张,如何进行合理地安排和分配,从而充分利用教学资源是我 们不得不面对的问题 2。而人工进行排课不仅任务重,效率低,而且易出错,
2、难于 维护,想要排出一张各方面都满意的课表非常困难。并且随着高校规模的扩大手工 排课的难度和工作量呈几何级数增长 3。 在实际的应用中,很多研究者都提出了各种解决排课问题的方法,由于排课问 题的复杂性,还没有找到有效的算法能获得 NP 完全问题的最优解。因此,如何运 用近似算法和新的软件技术来降低排课问题的计算复杂度, 仍然是颇具挑战性的研 究方向 4。 排课管理系统是利用数据库管理系统开发的一种应用系统,其开发主要包括数 据库的建立,充分满足正常的题库管理的前提下,提供了多角度的题库信息查询和 题库信息分析报表,使学校管理人员可以随时掌握学校的排课情况,进一步指导学 校的教学。真正实现了业务
3、一体化,为学校全方位的信息化管理奠定了基础 5。 传统的人工排课使用手工操作存在许多弊端,如重复劳动严重、效率低下、且 不能达到资源的最优化配置等,将产生大量的文件和数据,这对于查找、更新和维 护都带来了不少的困难。 最令人担心的问题就是出现教室资源冲突或教师资源 冲突的情况,而且工作繁琐,工作量巨大,尤其是在给大学校园进行排课时出现的 问题更多 6。当前高校教务管理所涉及到的信息资料数量大、类型多,还可能带有 大量的统计输出, 同时学校规模的不断扩大和招生人数的逐年攀升导致传统的排棵 手段已无法满足现代化管理的要求 7。 在教学计划的不断完善和各高校校园网建立的大背景下, 设计满足高校教务要
4、 求的排课系统显得十分必要。而据了解,排课管理是高校教务处重复性比较强且急 需得到解决的工作, 且排课系统有安全性要求高、交互性强、处理数据量大等人 工难以实现的特点 8。 因此设计一个基于校园网络的人工智能化且操作简便的排课系统是高校教务 管理信息系统实现的首要条件,同时也是一大难点,因为排课管理要求综合考虑教 师、课程、班级、教室、时间等诸方面的因素,统筹兼顾,使课表既符合教学规律, 又能够充分利用现有资源使其最大限度地发挥作用 9。 1 1.2 .2 国内外研究现状国内外研究现状 早在 20 世纪 50 年代末, 国外就有人开始研究课表编排问题。 1963 年, Gotlieb 曾提出一
5、个课表问题的数学模型,但由于排课问题易受实际问题的影响,求解结果 也不理想 10。20 世纪 70 年代,美国人 S.Even 等就证明了排课问题是一个 NP 完全 问题,其算法的时间复杂度呈指数增长。S.Even 的论证正式确立了排课问题的学 术地位,把人们对排课问题的认识提高到了理论高度 11。此外,有些文献试图从图 论的角度来求解课表问题,但是图的染色体问题也是 NP 完全问题,只有在极为简 单的情况下才可以将课表编排转化为二部图匹配问题 12。 在国内,在 20 世纪 80 年代初期,国内学者开始用从模拟手工排课,也有人工 智能构建的专家系统等等,具有代表性的有:南京工学院的 UTSS
6、(A University Timetable Seheduling System)系统,大连理工大学的智能教学组织管理与课程调 度系统等。这些系统大都是模拟手工排课过程,以“班”为单位,运用启发式函数 来进行编排的。但是这些课表编排系统往往依赖于各个学校的教学体制,不宜于进 行大量推广 13。 2 2 相关技术介绍相关技术介绍 2.12.1 JSPJSP 简介简介 JSP 应用程序不同于其他语言开发的单一性程序。 使用 Jsp 编程时, 必须首先 确定应用程序如何与用户交互,如鼠标单击,用户必须编写代码控制这些事件的响 应方法。 使用 JSP 开发数据库应用程序的一般步骤如下所示: (1) 建立数据库 (2) 建立用户界面 (3) 编写代码 (4) 调试运行 (5) 编译应用程序 (6) 发布应用程序 界面设计 (1) 控件的位置 (2) 界面元素的一致性 (3) 保持界面的简明 (4) 使用颜色和图像:增加视觉的感染力 (5) 图像和图标:增加应用程序的视觉上的趣味 (6) 选取字体 JSP 应用程序的结构: 由于 J