基于遗传算法的自动排课系统毕业设计

合集下载

基于遗传算法的排课系统研究

基于遗传算法的排课系统研究

基于遗传算法的排课系统研究基于遗传算法的排课系统的研究谷冰(沈阳建筑大学信息学院)摘要:排课问题是一个有约束的、多目标的组合优化问题,并且已经被证明为一个NP完全问题。

本文主要基于遗传算法,结合排课系统的一些具体需求,研究并实现一个排课系统。

【关键词】排课问题;遗传算法;组合优化一、背景近年来随着大学扩招,大学生人数的增加,每学期的排课问题一直是学校一项巨大的工作任务,使用人工手动排课对于这样一个庞大的课程体系来说简直是天方夜谭。

其中,最突出的问题就是班级多、课程多、教师少、教室少,从而导致传统的手工排课方法,由于工作量巨大、效率低下,容易出错已经不能满足需求;因此,研究计算机排课系统有重大的现实意义。

二、遗传算法遗传算法(Genetic Algorithms,GA)是根据自然界的选择和进化原来发展起来的高度并行、随机、自适应的随机搜索算法。

其模拟达尔文的适者生存原理,每个种群所面临的问题是寻找一种对复杂和变化着的环境最有利的适应方式。

遗传算法维持一个潜在的群体(染色体、变量),定义一个函数为:ttP(t)={ x1??,xn}染色体通常形成是一串的数组,近年来基于实数编码的遗传算法也得到广泛的应用。

每个解用其“适应值”进行评价其优劣程度。

然后通过选择更新(t+1次迭代)个新的群体。

新群体的成员通过杂交和变异进行变换,以形成新的解。

杂交组合了两个亲体染色体的特征,并通过交换父代相应的片段形成了两个相似的后代。

例如,如果父代用五维向量来表示,如下:(a1 ,b1 ,c1 ,d1 ,e1),(a2 ,b2 ,c2 ,d2 ,e2) 在第二个基因后杂交,染色将产生后代 (a1 ,b1 ,c2 ,d2 ,e2)杂交算子的意图是在不同潜在解之间进行信息交换。

变异是通过用一个等于变异率的概率随机地改变染色体上的一个或多个基因。

变异算子的意图是向群体加入一些额外的变化性。

我们可以把遗传算法简化以下步骤:1) 产生初始遗传群体的方法。

基于遗传算法的高校排课系统设计与分析

基于遗传算法的高校排课系统设计与分析
基于遗传算法的高校排课系统设计 与分析
01 一、引言
目录
02 二、文献综述
03 三、系统设计
04 四、系统分析
05 五、结论
一、引言
随着高校规模的不断扩大和教学管理的日益复杂,高校排课系统成为了教学 活动正常运行的重要环节。遗传算法是一种模拟自然选择和遗传演化的优化算法, 适用于解决复杂的优化问题,将其应用于高校排课系统能够提高课程安排的合理 性和教师资源的利用率。本次演示将介绍遗传算法在高校排课系统中的应用,并 对系统进行详细设计和分析。
(1)能够处理多种约束条件,生成合理的课程表; (2)具有较好的通用 性和扩展性,可以适应不同高校的教学需求; (3)能够提高课程安排的满意度 和资源利用率。
然而,该系统也存在一些缺点:
(1)运算时间较长,需要较长的计算时间和计算资源; (2)可能陷入局 部最优解,无法得到全局最优解; (3)需要手动设定参数,参数的选择会对排 课结果产生影响。
遗传算法具有自适应性和并行性的特点,能够处理大规模的优化问题。在高 校排课系统中,遗传算法能够根据多个约束条件进行优化排课,生成合理的课程 表。然而,遗传算法的运算时间较长,且易陷入局部最优解,因此需要在算法设 计和参数选择上加以改进和完善。
2、优缺点分析
基于遗传算法的高校排课系统具有以下优点:
3、改进空间及研究方向
针对上述缺点和问题,未来的研究方向可以包括:
(1)优化遗传算法的设计和参数选择,减少运算时间和提高搜索效率; (2)研究并行遗传算法,利用多核CPU或分布式计算环境进行加速计算; (3) 结合其他优化算法,如模拟退火、粒子群优化等,进行混合优化策略的研究; (4)加强系统的智能化程度,如引入人工智能技术进行自动化参数设定和优化 建议。

基于遗传算法的优化排课系统

基于遗传算法的优化排课系统

系统架构设计
数据库设计
排课系统需建立完善的数据库,以存储课程信息、教师信息和学 生信息等数据。
前端设计
前端界面需友好、易用,能够提供便捷的查询和操作功能。
后端设计
后端处理需稳定、高效,能够快速响应前端请求并处理数据。
系统功能模块
课程管理模块
该模块主要用于管理课程信息,包括 添加、修改和删除课程等功能。
遗传算法的概念与原理
遗传算法是一种模拟生物进化过程的优化算法,通过模拟基因选择、交叉、变异 等过程,寻找问题最优解。
遗传算法将问题参数编码为“染色体”(个体),并在群体中进行选择、交叉、 变异等操作,不断迭代进化,直至达到满足条件的最优解或次优解。
遗传算法的基本流程
1. 初始化
根据问题规模和参数要求,随机生成一定数量的 个体(染色体)作为初始群体。
适应度函数
根据问题的目标函数,设计合理的适应度 函数,能够直接影响算法的优化效果。
交叉操作
通过交叉操作,能够将父代的优良基因传 递给子代。常见的交叉操作有单点交叉、 多点交叉等。
选择操作
选择哪些个体参与交叉和变异操作,对算 法的性能和结果有很大影响。常用的选择 操作有轮盘赌选择、锦标赛选择等。
03
基于遗传算法的优化排课系 统
2023-11-08
contents
目录
• 引言 • 遗传算法基础 • 优化排课系统设计 • 遗传算法在排课系统中的应用 • 系统实现与测试 • 结论与展望
01
引言
研究背景与意义
排课系统是学校教学管理的重要组成部分,优化排课系统可以提高教学效率和质量 ,减少资源浪费。
遗传算法是一种基于生物进化原理的优化算法,具有自适应、并行性和鲁棒性等优 点,适用于解决复杂的排课问题。

基于遗传算法的高校排课系统的设计

基于遗传算法的高校排课系统的设计

[ 关键词】 排课功能Fra bibliotek块遗传算法
数据库
A s r c :o r e S h d l n p o lm i a c n t a n d b t a t C u s c e u i g rbe s osrie, mliojcie u t — b e t v , i t a t b e c m i a o i l o t m z t o p o l m n r c a l o b n t r a p i ia in rbe,
ig S s e , n ytm t e s s e c n b di d d i o f u mo ul s h y t m a e vi e nt o r d e , h i i i i l z i n ma ag m n m d e t at s n t a i at o n ee t o ul , t e Ti e a l n h mtbig
排课管理模块是排课系统 的核心部分 , 其主要功能是完成课表编排 。 课表输 出模块 的功能是在系统排完 课, 确定课表后 , 能方便地 以不同 方式 ( 如全校 的课程总表 、 各个班 的班级 课表 、 各教师 的教师课表 等) 查询 打 印 出 课程 表 系统权 限管理模块 的主要功能是能为不同用户, 例如管理员和普通教 师, 设置不同使用权 限。 3 2 系统 的数据库设计 . 本排课系统 中数据库的实体类型及其 联系可 以转换成如下关系模式 : 教师 ( 教师编号 , 教师姓名, 教研室编号, 所教课程编号 , 教师类别) 课 程 ( 程 编 号 , 程 名 称 , 学 时 , 程 类 别 , 用 教 室 类 别) 课 课 总 课 需 班级 ( 班级编号 , 学生人数, 所在院系, 专用教室) 教室 ( 教室编号, 教学楼号, 座位数 , 教室类别) 教师课表 ( 教师编号, 室编号 , 教 时间参数) 班级课表 ( 班级编号, 课程编号 , 教室编号 , 时间参数) 教室课表 ( 教室编号, 班级编号 , 教师编号 , 时间参数)

基于遗传算法的智能排课系统设计与优化

基于遗传算法的智能排课系统设计与优化

基于遗传算法的智能排课系统设计与优化摘要基于遗传算法的智能排课系统设计与优化是一项具有挑战性和重要性的任务。

排课是学校管理中关键的一环,它需要平衡师生时间表安排,确保教室和教学资源的有效利用。

然而,传统的手动排课方式存在效率低、容易出错的问题。

因此,开发一种高效、准确的智能排课系统对于学校管理的提升至关重要。

本文将介绍基于遗传算法的智能排课系统设计与优化的方法和实现。

1. 引言智能排课系统是指利用计算机科学和人工智能技术,通过自动化和优化算法来实现对学校课程排列的自动分配和优化。

传统的手动排课方式一方面存在人力浪费的问题,另一方面也容易出现排课冲突和资源浪费的情况。

基于遗传算法的智能排课系统可以借助计算机的高效计算能力和优化算法,解决传统排课方式的一系列问题。

2. 系统设计基于遗传算法的智能排课系统的设计包含以下几个关键步骤:2.1 问题建模智能排课系统需要将问题建模为数学模型。

通常,问题的建模包括定义课程、教师、班级、时间和教室等相关参数,以及约束条件。

建模的目的是为了将复杂的排课问题转化为数学优化问题。

2.2 遗传算法设计基于遗传算法的智能排课系统主要采用进化算法中的遗传算法来进行优化。

遗传算法模拟了生物界的进化过程,通过选择、交叉和变异等操作来生成和改进解。

具体来说,遗传算法包括以下几个关键步骤:初始化种群、选择操作、交叉操作、变异操作和适应度评价。

通过不断迭代和优化,遗传算法能够逐渐找到最优解。

2.3 系统实现基于遗传算法的智能排课系统的实现需要开发相关的软件工具和算法。

通常,系统的实现包括以下几个方面的内容:数据管理模块、遗传算法优化模块、结果评价模块和用户界面模块。

数据管理模块负责对课程、教师、班级、时间和教室等数据进行管理和处理。

遗传算法优化模块是系统的核心部分,负责通过遗传算法来进行排课优化。

结果评价模块用于评估算法的性能和结果的质量。

用户界面模块则提供给用户一个友好的交互界面,方便用户使用和操作系统。

排课系统算法

排课系统算法

Network & Computer Security引言自动排课算法(TTP: Time Table Problem),是一个N P完全问题,集成了时间、空间的双重约束。

从数学上讲,排课问题是一个在时间、教师、学生和教室四维空间,以教学计划和各种特殊要求为制约条件的组合规划问题。

其实质就是解决各因素之间的冲突。

无冲突是指不存在一个教师被同时安排给一个以上的班级上课,或一个以上教师被同时安排给同一个班级上课等。

在众多软件公司研究的排课系统中,较多地采用传统回溯算法,但真正投入应用的排课软件却很少。

原因在于,如果仅仅采用简单的回溯算法,通常情况下得到课表的适应度非常低,并且算法的复杂度比较高,通常为 m×O(n3)。

如某一门课程连续两天在同一时间上课,其他时间却没有安排此课程;或者不能满足教师连堂课的要求。

然而,如果想得到一张高质量的课表,就要设定一周多学时课程的上课时间间隔,也不合适,因为初始排课时总的搜索空间非常大(班级数×周学时数^总课程数),对一个有 2个班级,周学时为20(4×5),共有20门课的学校,这样的搜索空间是 .25829× 027;即使大部分课程已安排完毕,其余课程在有限的搜索空间中搜索合适的上课时间,由于定义了不适当的搜索间隔,可能永远也搜索不到合适的上课时间。

显然,这样的效果是不能令人满意的。

为了解决这一问题,考虑把人工智能的知识引入这一领域,结果发现使用遗传算法,可以大大减少搜索空间,使用适应度函数评估个体能够找到最优解,使用自适应的交叉和变异能使最优解尽快收敛。

2 排课中的基本问题2. 名词解释( )时间片:任一上课时间段,2个小时为一个时间片,一天内共分配4个时间片。

(2)学时:40-60分钟的上课时间,即为一个学时。

(3)授课单元:根据教学计划得到的课程、教师和班级的对应关系。

如《C语言程序设计》由 066号教师为20050 002班讲授,这样一个对应关系就是一个授课单元。

基于遗传算法的实验室排课系统设计与实现


.排
课 问题 就是 在给 定教 师 资 源 , 教 室 资 源和 开 课 计 划 的 前 提下 , 如何 合理 地 安 排 课 表问 题 . 其实 质 是 含 约 束
收 稿 日 期 : 2009 - 08 - 26 基 金 项 目 : 黑 龙 江 科 技 学 院 数 字 化校 园 建 设 项 目 ( 08 11 ) 作 者 简 介 : 金 民 锁 ( 197 7- ) , 男, 黑 龙 江 双 鸭山 人 , 硕士, 工程师, 研 究方向: 网络安全与计算算法. Tel . : 1325 16 16 6 61 , Em ai l :j m s98 02@ 126 .c om
条 件的 目标 函数 优化 问 题, 运 筹 学 中 论及 了 一 些 特 殊 的 优化 问题 求解 方法 , 如线 性规 划的 单纯 形法 等
[3 ]
.
在 对排 课问 题建 立 数 学 模型 后 , 发现 它 难 以 用 传 统 的启 发式 算法 求解 , 而 且 其 约 束 条 件和 目 标 函 数 难
[ 1]
2 排课系统的算法分 析
遗 传算 法是 H ol l an d 根 椐 生物 进 化 的模 型 提 出 的 一 种优 化算 法 , 它 是 基于 进 化 过 程 中 的信 息 遗 传 机 制 和 优胜 劣汰 的自 然选择 原则 和搜 索算 法 . 它从 一个 种 群 开始 , 利用 选择 , 交叉, 变 异 等 遗 传 算子 对 种 群 进 行 不 断进 化 , 最 后得 到 全 局最 优 解 或 近 似 最优 解
D
R B
L G
J I N M -
A A
C
( In f or m at i on Net w or k C en t e r ,H ei l on gj i an g I n st i t ut e of Sc i en c e & Te c hn ol ogy,H ar bi n 15 0027,C hi n a) A : B e c ause t he p r obl e m of ar r an gi ng c our se i s apr obl em ofabsol ut e NP op t i mi zat i on ,t hi s p ap eradop t s ge n et i c

基于遗传算法的自动排课系统毕业设计

摘要随着科学技术和社会信息技术的不断提高,计算机科学的日渐成熟,其强大的功能已为人们深刻认识,它在人类社会的各个领域发挥着越来越重要的作用,给人们的生活带来了极大的便利,成为推动社会发展的首要技术动力。

排课是学校教学管理中十分重要、又相当复杂的工作之一。

解决好教学工作中的排课问题对整个教学计划的进行,有着十分重要的意义。

首先对排课的已有算法作了相关的调查研究,决定采用遗传算法。

通过设计实现基于遗传算法的自动排课系统,研究了遗传算法在排课系统中的应用。

关键词:遗传算法、自动排课、Java。

AbstractAlong with science technical and community information technical increases continuously, calculator science is gradually mature, its mighty function has behaved deep cognition, and it has entered the human social each realm erupts to flick the more and more important function, bringing our life biggest of convenience. Curriculum arrangement is an important and complicated working in school, so solving the problem is of great importance for teaching programming. Investigated and studied the algorithm existed, determine that adopt genetic algorithm. Through Design Implementation the Auto Course Arrangement Management System Base on Genetic Algorithm, researched the application of genetic algorithm in the Course Arrangement Management System.Keywords: Genetic Algorithm Auto Course Arrangement Management Java.第一章绪论1.1排课系统研究背景排课是学校教学管理中十分重要、又相当复杂的管理工作之一,其实质就是为学校所设置的课程安排时间和地点,从而使整个教学能够有计划有秩序的进行。

基于遗传算法的高校排课系统设计


自动 获取 和指导优 化 的搜索 空间 ,自适应 地调 整搜 索方 向 , 不 需要确 定 的规则 。 由于其 良好 的智能性 、 壮性 和 内在 并行性 , 健 特别 适合 用 于处 理传 统 的搜 索算 法难 以解决 的 复杂 的 和非 线
性问题 。遗传算法演算过程如下: 随机产生一定数 目的初始 ① 种群 ; ②对个体适应度进行评估 , 如果个体的适应度符合优化
2 遗 传 算 法原 理
遗 传算 法 ( e ei Ag rh G n t loi m.简 记 G c t A)是 1 7 9 5年美 国 Mi ia c gn大学 J oln h . l d教 授首 次提 出 的 .并 逐渐 发 展 成 为一 H a 种迭代 自适应 启发式 概率性 搜索 算法 。近年来 , 遗传 算法 在求 解 优化 问题 中得到 了成功 的运用 。G A是一 种抽 象于 生物进 化 过程 的 、 于 自然 选 择和 生物 遗 传机 制 的优 化技 术 . 是一 种 基 它 全局优 化 策略 , 主要 特点 是 直接 对结 构 对 象进行 操 作 , 存 其 不 在求导 和 函数 连续性 的限定 ; 有 内在的 隐并行 性和 更好 的全 具
1 排课 的 约束 条 件
高校排课 问题 , 它要 求将课 程 、 师 、 教 班级安 排在 一个 有 限 的时 间 和空 间 当中去 ,要求 避 免 冲突且 尽 量 满足 一些 其 它条 件, 这实 际上是 5个相互 制约 的 因素的组 合优化 问题 。
如 果 说 一 张 课 表 是 有 效 的 。则 它 至 少 应 该 满 足 以 下 硬 约
摘 要 : 排课 问题是 一 个 多因素的优 化 决策 . 是组 合规 划 中的典型 问题 , 于 N 属 P完全 类 问题 。 据 高校课袁 的特 点 , 根 采用遗传 算 法 , 出染 色体编码 和适 应度 函数 , 给 提供 了利 用 遗传 算 法解 决排 课 问题 的方 法 , 大减轻 了人 的 工作量 , 大

基于遗传算法的高校排课系统的设计与分析

/ /染色 体 的适应 度
l a i ne s fo t ft s ;
_
4在一 个 教室 安排 一 堂课 ,这个 教室 必 须要 具 备这 堂课 所 需 . 要 的 教学设 备 。
软 约束 条件 :
/ 需求 满意 度 的标准 /课
rtra; v co <b l c iei e tr oo>
排课 的约 束条 件 排课 过程 生 要涉及 五 个相 互制 约 的因素 ,其 分别 是 教师 、课 程 、班级 ( 生 人数 ) 教室 ( 室所 能容 纳学 生人 数 的多少 ) 学 、 教 、

如何 构造 基 因和编 码 染色 体 ,使之 适 于遗 传算 法操 作 ,是 我 们 要考虑 的 一个 问题 。 由于不 同高校 的上 课 时间不 一样 ,我们 假 设每 星 期从 周一 至周 五 的时 间段上 课 ,周 末两 天不 排课 。每天 可 排 四节 课 ,上午 四节 课 ,下午 四节 课 ,晚 上两 节课 。使 用 一个 时 空 槽 对 应 每 节 课 , 每 个 教 室 , 每 一 天 , 该 时 空 槽 是 一 个 1 * * u b r o o ms大小 的 向量组 。每 一个 槽 都是 一个链 表 , 0 5 n m e fro 这 样允 许算 法运 行 时 ,允许 多 门课在 同一个槽 里 ,我 们使 用 一个 辅 助 的 hs ah图来 获取 一堂 课 开始 时的 地址 。 门课 的每 节次 都在 一 向量 中有 一个 单独 的表 目,但在 h s 中每 门课只 有一 个表 目。 ah图 例 如 ,一 堂课 从下 午第 一节 课 开始 并持续 3节 课 ,它就 必须 进 入 5 、7 节 的槽 。每一 条染 色 体表 示一 种可 能 的排课 结 果 ,至于 、6 排课 结果 的优 劣 ,则 由适应 度 函数 评估 染色 体 的适应 值 来决 定 , 具体 的染色 体 表示 如 图 1 示 。 所 染色 体代 表课 程表 类 ,它存 储课 程表 的两 个属 性 : / /时空槽 的项代 表某 一个 教室 的某 一节 课
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
每个学期开学时,教务管理工作中的课程表安排问题,都是教务处面临的一项艰巨任务。排课问题是一个非常棘手却又亟待解决的问题,通常都是使用传统的人工手动排课方法。手工排课不仅劳动强度大,而且排课效率低,很难排出一个让人满意的课程表。时间,教师,教室,班级,课程等限制问题更是难以解决,使用计算机进行自动排课已经成为近年来的热点话题。教学管理的信息化需要计算机辅助排课,而排课理论的研究和软件技术的成熟己为我们提供了计算机自动排课的重要手段,研究一种准确、高效、实用、自动化程度高的排课系统己经成为可能。
摘要
随着科学技术和社会信息技术的不断提高,计算机科学的日渐成熟,其强大的功能已为人们深刻认识,它在人类社会的各个领域发挥着越来越重要的作用,给人们的生活带来了极大的便利,成为推动社会发展的首要技术动力。排课是学校教学管理中十分重要、又相当复杂的工作之一。解决好教学工作中的排课问题对整个教学计划的进行,有着十分重要的意义。首先对排课的已有算法作了相关的调查研究,决定采用遗传算法。通过设计实现基于遗传算法的自动排课系统,研究了遗传算法在排课系统中的应用。
Keywords: GeneticAlgorithmAuto CourseArrangementManagementJava.
第一章 绪论
1.1
排课是学校教学管理中十分重要、又相当复杂的管理工作之一,其实质就是为学校所设置的课程安排时间和地点,从而使整个教学能够有计划有秩序的进行。迄今为止,对课程表的研究工作已经进行了长达四十多年之久,取得了丰硕的成果。但是,仍然存在许多不足之处,例如规模大、约束(条件)复杂以及规律不断变化等,因此课程表问题至今仍未完全解决。课程表的编排是一个涉及多种因素的组合规划问题,它要保证在课程安排中教师、学生、教室不能产生冲突(所谓冲突,就是将需上不同课程的两个或多个班安排在了同一时间、同一教室,或为同一教师在同一时间段安排了多门课程等情况),并且要满足教师的要求和资源限制等约束条件。
进入20世纪90年代,国外对排课问题的研究仍然非常活跃。如印度Vastapur大学管理学院的Arabinda Tripathy、加拿大Montreal大学的Jean Aubin和JacqueSA Ferland以及Charles Fleutent等。Arabinda Tripathy的工作是针对以“人”为单位进行课表编排的。他运用拉格朗日松弛法和分支定界技术求解,这种方法的缺点是为了减少变量的个数,人为造成科目间的冲突。A.Tripathy还研究了研究生课表编排问题,他采用多重课组的方法来处理冲突(即根据学生选课的矛盾情况,将人数多的课程在一星期内开多次)。JacQuesA.Ferland等人则把排课问题分成两个子问题:时间表问题和分组问题。在时间表问题中,根据学生注册情况、教师和教室的可利用情况形成一个主时间表。对于选课人数较多的大课,一个星期要分成几个时间段来上,分组问题就是将学生分给各时间段。两个问题相关联,通过惩罚因子来构造启发函数。他们研制的SAPHIR课程调度决策支持系统分为数据处理、自动优化、交互优化等几个模块。该系统解决矛盾的主要方法也是采用多重课组。
目前,国内的大部分学校仍然采用手工排课的方法。手工排课工作的主要手段是“摆牌”,就是在一个画有空课表的版面上将有课名的小牌摆在适当的位置上,边摆边观察,边调整,凭借经验将各门课摆在合理的位置上,最后形成一个有效的课程表。这种办法没有一定的规律,没有理论指导,更没有数据模型,具有很大的盲目性。所以,要为上千名学生和上百名教师安排出合理的课程表,往往需要花费教务处人员很多的时间,工作量大,排出的课程表不宜调整。
关键词:遗传算法、自动排课、Java。
Abstract
Along with science technical and community information technical increases continuously,calculator science is gradually mature, its mighty function has behaved deep cognition, and it has entered the human social each realm erupts to flick the more and more important function, bringing our life biggest of convenience. Curriculum arrangement is an important and complicated working in school,so solving the problem is of great importance for teaching programming.Investigated and studied the algorithm existed,determinethatadoptgenetic algorithm.ThroughDesign ImplementationtheAuto CourseArrangementManagementSystemBaseonGeneticAlgorithm,researched theapplicationofgenetic algorithmin theCourseArrangementManagementSystem.
随着中国教育体制改革的不断深入,学生人数的不断上升,课程设置不断向深度和广度发展,手工排课的缺点就越来越突出。由于计算机具有运算速度快、处理能力强等特点,很自然地就进入到这一应用领域中。用计算机进行排课能够快速地得到满足约束条件的可行结果,具有排课时间短、省人力和质量高的优点,不但能使教务人员从繁杂的排课任务中解脱出来,而且对于推动教学的发展也起到非常重要的作用。
1.2
排课问题是NP完全问题,许多学者分别在理论、启发式搜索技术应用求解、专家系统应用求解和遗传算法应用求解上作了很多研究。
国外从20世纪50年代末就对排课问题展开了研究。1963年Gotlieb在他的文章中提出了排课问题的数学模型[2],它标志着排课问题的研究正式跨越了科学的殿堂。之后,人们对排课问题的算法做了许多探,但由于排课问题是NP完全问题,并且易受实际问题边界的影响,大多数求解结果都不够理想。Ferland[3]等人和吴金荣[4]把排课问题化成整数规划来解决,但计算量很大,其仅仅适用于规模很小的课表编排,对于大规模复杂的排课情况,至今没有一个切实可行的算法;何永太[5]和胡顺仁[6]等人试图用图论中的染色问题来求解排课问题,可惜图的染色问题本身也是NP完全问题。由于问题的复杂,许多文章利用启发式函数来解决排课问题,大多数启发方法都是模拟手工排课的过程来实现的。由于实际的排课问题存在各种各样的限制条件与特殊要求,对这些因素处理的好坏就显得尤为重要。
相关文档
最新文档