您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 理学 > 数学建模请你来排课表
请你来排课表摘要每学期的开学初,学校都会根据时间、课程、课时要求、教室、班级人数、教师等因素对各学院各专业的课表进行重排。我们首先对题目的要求进行分析,将题目归类为优化模型问题,主要运用运筹学的知识来建立模型。确定了分别将教师、课程、教室三个因素优化组合进行讨论,并分配到课表上的不同时间段上最终形成满足要求的课表的解决方案。首先,我们确定了各优化因素之间的约束关系,然后根据各因素间约束关系的要求不同,编制出各因素间的效用矩阵。其中我们采用了多重约束条件,将各约束条件分为硬约束(强制要求)和软约束(用偏好系数表示);其次,我们为课表上的每一个时间段随机分配课程;再次,我们用逐级优化和0-1规划的方法分别将教师、教室分配到课表上的不同时间段上,按时间+课程+教师+教室的组合,形成了一份尽可能多地满足课程、教师、教室要求的课表。最终根据题目给的数据,通过MATLAB软件编程进行模型验证,求出了所需课表,且在方案合理性分析中用计算机模拟的方法分析了偏好系数的变化、教室的种类对排课结果的影响。文尾我们给出了教师、教室的配置建议。关键词:排课模型随机分配优化目标矩阵多重约束条件0-1规划目录1问题重述与分析.........................................41.1问题的重述......................................................41.2问题的分析.........................................................42问题的假设............................................43符号说明..............................................54模型的建立与求解.......................................54.1模型的准备....................................................54.1.1对教师、课程、上课时间联系的刻画............................54.1.2对时间段Si进行编号........................................64.1.3对课程的处理..............................................74.2模型的建立...................................................74.2.1随机分配课程到各个时间段.....................................74.2.2给每一个时间段安排教师........................................74.2.3为每一个时间段安排教室........................................94.2.4安排课程表..................................................115模型的求解...........................................115.1编号并随机分配课程................................................115.2分配教师.........................................................115.3分配教室.........................................................125.4编排课表..........................................................126模型的合理性分析.....................................127模型的评价...........................................127.1模型的优点.................................................127.2模型的缺点.................................................128参考文献.............................................12附录...................................................131、问题重述与分析1.1问题的重述现有课程40门,编号为C01~C40;教师共有25名,编号为T01~T25;教室18间,编号为R01~R18。具体属性及要求见附表1,附表2,附表3。课表编排规则:每周以5天为单位进行编排,每天最多只能编排8节课(上午4节,下午4节),特殊情况下可以编排10节课(晚上2节),每门课程以2节课为单位进行编排,同类课程尽可能不安排在同一时间。你所要解决的问题:1.请你结合实际情况建立数学模型,通过编程计算,给出较为合理的课表编排方案,分析你所给出的方案的合理性。2.如果不准晚上排课,排课结果是否有所变化,如何变化?3.对教师聘用,教室配置给出合理化建议。1.2问题的分析本题的目标是将所有课程按照一定的约束条件安排到课表中。由于课程的总周课时数为160节,而一周的总课时数是50节,所有最少需要4张课表才能安排好所有的课程;又由于教师的总周课时数最多为116节课,若使所有的教师上满所有课程也是难以完成160节的总周课时的,因此必须分单双周制才能编排好所有的课程;我们要到达的基本要求是教师不冲突、教室不冲突、课程全部排完以及所有软、硬约束。由于目标是将所有课程排完,可以先将不同课程按照其时间要求随机分配至课表中,形成“时间段-课程”组合;再建立该组合对教师的约束,通过“0-1规划”确定最优的“时间段-课程-教师”组合;同理,利用“0-1规划”确定出“时间段-课程-教师-教室”的最优组合,最终得到所求课表。2、问题的假设[1]假设学校的优先考虑目标是完成所有课程的编排;[2]假设所编排的课程表是学生自选型,即课程的编排不会受到班级以及班级人数的限制,只与课程的人数要求有关;[3]假设在课程要求中的各项均为强制要求,即“硬约束”;假设在教师属性中,能胜任课程类别、周最大课时数为强制要求,即“硬约束”;对教室类别要求、上课时间要求用偏好程度衡量,为“软约束”;[4]假设可以分单双周上课制,即问题中的周课时是以两星期为一周期来计算,可以使所得的课表安排一周上课课程后接下来一周另外安排课程;[5]假设课表只受上课时间、教师、教室、课程的影响,其他因素(教室故障问题等)不会影响课程的进行;[6]一门多学时的课程只能由同一个老师完成,并且尽量能在同一间教室上课;3、符号说明主要符号符号意义4321AAAA、、、效用矩阵iC原课程编号iK新的周课时数编号jT教师编号kR教室编号偏好系数(表示教师对教室、教师对上课时间的偏好系数)iS课程表上时间段的编号jSTjT教师的要求课时数iSCiC课程的要求课时数S={ujijRTY,,}课程表上某一时间段的课程-教师-教室组合4、模型的建立与求解4.1模型的准备(1)对教师、课程、上课时间联系的刻画根据分析,关联关系有课程—上课时间、课程—教室、教师—课程、教师—上课时间、教师—教室一共五个,该模型中存在的联系可由下图给出,其中实线表示“硬约束”,虚线表示“软约束”。根据关联关系,由此可以得到刻画每个关系的效果指标矩阵,依次建立A1,A2,A3,A4四个效用矩阵。其中,为强制约束的有A2、A4,偏好约束有A1、A3,矩阵表示如下图所示。1A矩阵:ijaA1刻画i教师上j教室的偏好效果指标,其中:10ija(当ija=0时表示i教师不希望在j教室上课,ija=1时表示i教师希望在j教室上课,10ija时表示i教师在j教室上课的偏好程度适中,赋值越大说明偏好越大)2A矩阵:ijaA2刻画i教师上j课程时的效果指标,其中:ija=0,1(当ija=0时表示i教师不能上j课程,ija=1时表示i教师能够上j课程)3A矩阵:ijaA3刻画i教师上j时间段课时的偏好效果指标,其中:10ija(当ija=0时表示i教师不希望在j时间段上课,ija=1时表示i教师希望在j时间段上课,10ija时表示i教师在j时间段上课的偏好程度适中,赋值越大说明偏好越大)4A矩阵:ijaA4刻画i课程在j教室上时的效果指标,其中:ija=0,1(当ija=0时表示i课程不能在j教室上,ija=1时表示i课程能够在j教室上)(2)对时间段Si进行编号由于每门课程以2节课为单位进行编排,因此可以用iS表示各段时间,如下图所示:(3)对课程的处理由于有些课程的课时数为奇数,因此对这些课程进行适当的处理及调整,具体做法如下:当某一课程的课时数为奇数时,取大于它的最小偶数,若该课程的课时数为偶数时则不改变其值。对所有课程的课时数进行调整后所得到的新的课时数为iK(i=1,2,3…….40,即有40门课程),原课程的编号为iC(i=1,2,3…….40,即原有的40门课程),ijY(i=1,2,3…….40,为原有的课程编号,j=1,2,3……21iK),现目标就是对集合{ijY}进行排课。4.2模型的建立(1)随机分配课程到各个时间段由于课程的上课时间(上午,下午)要求为强制性约束,利用excel表格的筛选功能分别选出上、下午的课程集合B上午={ijY},B下午={ijY}。我们随机给B上午的每一个元素抽取一个上午的时间段,B下午中的每一个元素抽取一个下午的时间段,组成时间段—课程{iSijY}组合。此时,iSijY(某一时间段对应的某一课程)。如此,就已经星期时间段星期一……星期五星期一……星期五星期一……星期五星期一……星期五一二节1S……5S6S……10S11S……15S16S……20S三四节21S……25S26S……30S31S……35S36S……40S五六节41S……45S46S……50S51S……55S56S……60S七八节61S……65S66S……70S71S……75S76S……80S完成随机分配,使得每个时间段编号都有一个课程赋值。(2)给每一个时间段安排教师A.结合效用矩阵2A的iS根据教师jT对课程Cj的效用矩阵2A,对iS进行第二次赋值。当第i个时间段上的初值是ijY,若ija=1,则iS=1,否则,iS=0。B.结合效用矩阵3A的iS根据教师jT对上课时间的偏好3A矩阵,对iS进行第三次赋值,iS=iS+ija。C.结合效用矩阵1A的iS根据教师jT对iS时间段上的课程所要求的教室的偏好1A矩阵,对iS进行第四次赋值,iS=iS+ija。最终得到jiSjisssssssssjjii.....................212222111211由此,我们可以得到下表教师jT对时间段iS的效用指标表:1s2s…………is1T11s12s…………is12T21s22s…………is2…………………………………………jT1js2js…………jis表2D.利用0-1规划将教师jT分配到不同的时间段上由于目标是将jT教师分配到不同的时间段上,约束条件是分配结果必须使得教师的课时数要求与课程的周课时数要求同时满足。用jiX表示jT教师在时间段iS的上课情况(其中,jiX=1说明jT教师能在时间段iS上课,jiX=0说明jT教师不能在时间段iS上课),因此,问题转化为求以下有约束条件的0-1规划问题:目标函数:maxz=ninjjijiSx11约束条件:njjix1=iSC21nijix1=jST21ijx=0,1由上面问题可求出解为:jiXjixx
本文标题:数学建模请你来排课表
链接地址:https://www.777doc.com/doc-1338569 .html