数学建模论文长安大学排课问题.doc

上传人:土8路 文档编号:10125103 上传时间:2021-04-21 格式:DOC 页数:16 大小:231.50KB
返回 下载 相关 举报
数学建模论文长安大学排课问题.doc_第1页
第1页 / 共16页
数学建模论文长安大学排课问题.doc_第2页
第2页 / 共16页
数学建模论文长安大学排课问题.doc_第3页
第3页 / 共16页
数学建模论文长安大学排课问题.doc_第4页
第4页 / 共16页
数学建模论文长安大学排课问题.doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

《数学建模论文长安大学排课问题.doc》由会员分享,可在线阅读,更多相关《数学建模论文长安大学排课问题.doc(16页珍藏版)》请在三一文库上搜索。

1、一、 问题的重述 排课问题是高校制定教学计划、安排教学过程中的一项较为复杂的工作,在高校教务管理工作中处于重要地位。高校在每学期末都要根据培养计划和教学资源作出下学期的教学安排, 这主要体现在对课表的编排上。其中涉及的关键要素很多, 包括教师、班级、教室和授课时段等。根据排课总体目标、约束条件、及优先级, 充分利用紧缺资源, 设计并实现高校课表安排系统。我校所面临的问题主要有:第一,渭水校区有包括从大一至大三三个年级的学生,20个学院近700个班级,教学任务繁重,课表安排难度较大;第二,校区地处偏僻,距市区较远,老师上课需乘车来回奔波,如果课表安排不当,就会导致部分老师前往渭水乘车次数过多或在

2、渭水逗留时间过长;第三,基于学生的学习规律与习惯,应根据课程的难度与重要性进行课程时段的安排,若安排不当,会导致学生的学习效果不佳;第四,为节省学校在校车往返方面的开支,安排课表时应尽量减少校车运行车次。为此应根据教学计划和排课要求,综合考虑教师、课程、班级和授课时段等因素,协调合理的编排课表,制作一个系统模型,根据这个模型使老师、同学和学校尽可能满意,并且具有足够的可行性和可变动性。让老师满意,即让每位老师一周内前往渭水的乘车次数尽可能少,同时还要使每位老师在渭水逗留的时间尽可能少;让学生满意,即同一班级同一门课程在时间段上尽量间隔开来,另外相对重要的课程应尽量安排在较好的教学时段上;让学校

3、满意,即节约学校开支,使每周派往渭水的车次尽可能少。二、问题的分析课表安排的主要任务是把各学院的课程汇总, 然后根据教学计划或教学环节制订全校各班级的课表。根据学校的实际情况和学校所面临的问题,可以将这类题归为以老师、学生和学校的满意情况为多目标的多约束的规划问题。为了使课表的编排准确、合理、快速、高效, 充分利用学校资源,根据已知条件提出以下可行性要求:1、课程的优先级:将大学所有课程分为三类,1)公共必修课:多个学院开设的课程,课程重要且开设的班级数最多,这类课尽量安排在最好时段;2)专业必修课:少数学院或一个学院开设的课程,课程重要且开设的班级数较多,这类课尽量安排在较好时段;3)其他如

4、专业选修课或公共选修课等:少数班级开设的课程,课程相对简单,可以任意安排时段授课。2、课程时段的规定:将每天分为5个时段(上午两个,下午两个,晚上一个),并规定为:1-2节课为第一时段,3-4节课为第二时段依此类推。根据学生的学习效果及课程难度与重要性,将课程时段按有利程度分为五个等级,即第一时段第二时段第三时段第四时段第五时段。3、时间段的分配优先级:周一至周五的白天共20个时段用来安排公共必修课和专业必修课及部分选修课,每天晚上及周六、 周日安排其他课程;先安排公共必修课表,在剩余的时间段内安排各系专业课程,最后再安排选修课程;将相对重要的课程安排在较好时段。4、时间段的有效性:1)同一班

5、级同一门课的两次授课时间必须隔天,但相隔天数不宜超过两天;2)一个老师一天内的两节课应连排, 即尽量安排在同一天上午或同一天下午, 为教师上课提供方便,同时也减少了派往渭水的车次5、应避免各种冲突:1)教室不冲突, 同一教室同一时间不能安排两门课程,人数不能超过教室的最大容量;2)学生不冲突, 同一班级学生不能在同一时间上两门或两门以上课程;3)课程不冲突, 同一班级同一课程不能同一时间在不同地点上课;4)教师不冲突, 同一教师不能同一时间在不同地点上课。根据上述可行性要求,解决以下问题:问题一:要求建立排课表的数学模型,先确定公共基础课的课程数,并将这些课程数联系到教师和学生的满意程度,在优

6、化满意程度的条件下,排出各个公共基础课的授课区域,指定老师在班级授课时间段的区域,并让老师在这个区域内对不同的班级的授课时间段进行排布。然后将专业课安插到未被占用的时间段上,最后是选修课。同时课程的安排原则是尽可能选择在较好时段。问题二:要求对渭水校区的课表进行重排,利用统计学知识,对学校所有班级进行抽样,随机抽取三个班级,并对这三个班级的课表重排,得到的课程与现有的课程进行比较。问题三:利用加权综合评判法,对老师满意度、学生满意度和学校满意度进行加权综合评价。其中老师满意度从老师的滞留时间和老师的乘车次数方面考虑,学生满意度以重要课程的安排的时间段好坏考虑,学校的满意度以校车的车次考虑。问题

7、四:从学生的学习效率和老师的教学效果等方面,对学校的软件设施、教学设施及运输设施等提出一些可行性建议。三、符号说明 CS:课程集合 CSi:课程类别的编号; Cj:按优先级程度规定的课程编号; CR:时段集合;CRi:空闲时段集合;Rk:满足课程要求的空闲时段;0:否; 1:是;T:间隔周期,单位:天;days:每周上课天数,单位:天;counts:周课时数;chapt:一次上课的节数;Tc:班级的受限一维数组;Tt:教师的受限一维数组;P:加权后的总满意度;Pt:老师的满意度;Ps:学生的满意度;Pu:学校的满意度。四、模型的假设1.假设学校教室资源足够,不考虑教室资源对课程安排的约束;2.

8、不考虑节日等因素对课程安排的影响;3.对于上课班级较多且任课老师较少的课程,每位老师可为几组班级授课,每组班级由若干个班级组成。五、模型的建立与求解(一)问题一:建立排课表的模型,并研制出排课表的软件包。利用对课程添加优先级属性,再根据优先级程度每个课程进行排课,即解决死锁问题。同时也对时间段添加优先级属性,在每个课程排课的同时进行时间段的选择。根据实际情况和所的资料综合分析实行对课程和时间段优先级的确定,并利用C+或FORTRAN软件对最优课程最优时间段的选择。其步骤如下:1、系统模型的设计系统模型数据库是排课系统中的一个很重要的组成部分。数据库中几个主要的表如下, 其中“* ”号指出了各个

9、表的主键:班级表(* 班级号、专业号、入学时间、学制);课程表(课程号、*课程名称、课程性质、授课要求、学时、选课人数、上课教室);教师表(教师号、*教师名、所带课程、*所带班级数);排课结果表(*课程名称、*上课时段、上课周次)。2、模型的建立(1)教务处汇总开课计划时, 进行课程优先级分类。分类的依据为课程的难度和重要性(公共必修课、专业必修课、专业选修课和公共选修课)分别为CS1, CS2,CS3,在对于这些类别根据该课程老师是否教授其他班课程和该课程课时的多少,将课程按优先级顺序分为C1,C2Cj。(2)判断课程集合CS中所有课程集合是否都安排完成, 若再没有待排课程则安排完毕, 否则

10、根据顺序从CS 中选择一类课程,记作CSi。(3)在CSi 中选择一门未排课程Cj,在时段集合CR中查找有空闲的时段CRi。(4)从时段集合CRi中按序列获取一个时段Rk, 根据课程Cj的上课要求判断该时段是否可用并在可用时间段内选取最好时间段。 (5)时段Rk 可用时, 课程Cj的班级和老师在时段Rk 的对应记录上未分配, 则可安排给课程Cj,更新相应数据库,转入(7)。 (6)发生上课时段冲突, 时段Rk 不可用时, 若时段Rk 是时段集合Cr i中最后一个, 则没有找到合适时段, 提示课程Cj安排失败, 转入(7) , 以便最后调整; 否则返回(4)。(7)如果CSi中所有课程的教室安排

11、完成, 返回(2);否则返回(3) , 进行CSi+ 1 类课程的安排, 依次类推。3、约束条件(1)为了降低排课的复杂性, 设计合理的排课顺序,设定教学任务的优先级。教学任务i的优先级= 是否为公共课程或专业课程(0/1)+是否规定时段(0/1)+ 是否为必修课或基础课(0/1)。这三个因素后括号的取值若为“是” , 取值为 “1” , 否则为 “0” ; 表达式中的 “+ ” 是这三个因素的值连接。如果排课优先级=“111” , 则表示: 公共课或专业课、规定了时段、必修课。计算出所有教学任务的优先级后以降序排列, 然后按此顺序进行课程编排。若两门课程的优先级相同,则对总学时较多的课程优先

12、安排。(2)为了使一门课的两次授课间隔合理, 规定了排课间隔周期。每周上课天数days, 周课时数counts, 一次上课的节数chapt 等。那么间隔周期T =days/ (counts/ chap t)-1。如果一门课周课时数counts= 4, 为了使老师一次授课可以连排, 两节课代表一个上课时段, 上课节数chapt= 2, 一般每周上课6天, 则间隔周期T = 2, 即间隔2 天排下一次课(此类情况必要时也可间隔一天,如安排在周二和周四)。必修课的间隔周期可按此法计算,选修课由于其学时和选课人数的不同可另作调整。(3)、排课时不能使班级、教师、教室的时间相冲突,因前面已假设教室资源足

13、够,可不考虑教室的影响,故此类约束条件用一个受限时间数组来表示, 为Tc、 Tt。分别为其建立一维数组, 数组元素个数为周上课天数days, 每个元素用 “123456”的形式表示, 位数为每天上课的时段数, 取2节课为一个时段。如某班级的受限一维数组Tc= (123456, 120000, 123456,003456, 123456, 103456)则表示该班级周二的下午和晚上、 周四的上午、 周六的上午3、4 节课时段空闲, 其余时段已排课或另有安排。对于教师做同样的设置, 以便于检测空闲时段进行排课。对某课程进行排课, 首先要检测教师、 班级的受限时间数组,然后选择合适的时段进行排课,

14、如果交集为空, 则产生冲突, 做标记后返回重排。另外, 对于某些高校完全实行学分制的情况, 排课时只需考虑教师、教室的冲突, 不需考虑教学班的冲突, 由学生根据自己的时间来选择合适的上课安排。最后根据(二)问题二:利用所建模型及软件对本学期渭水校区的课表重排,并与现有课表进行比较。由于对渭水校区所有班级课表重排数据太多,工作量太大,根据随机统计学抽样调查,随机抽选两个班级,对这两个班级的课程进行重排,根据这两个班的实验效果可以反映模型的可行性和实用性,将学校所有课程按1、2、3编号,然后根据统计随机程序挑选,挑选班级为28010707和26050801(关于这两个班级的基础数据见附表1),并对

15、其09-10第二学期的课表进行安排,安排的步骤与结果如下:一】班级28010707课表安排结果如下:1.课程的分类:公共必修课,0个;专业必修课,土力学与基础工程、施工技术、钢筋混凝土、建筑电工学、施工组织;选修课,现代施工、系统工程、有限元素法、高层建筑结构、事故分析、土木工程施工(二)、结构稳定理论。2.课程优先级确定:土力学与基础工程建筑电工学施工技术钢筋混凝土施工组织现代施工=高层建筑结构=事故分析=结构稳定理论=土木工程施工(二)=系统工程=有限元素法。3.课程布置步骤:1)鉴于土力学与基础工程的优先性与重要性,应首先对其进行安排,间隔周期为1天,规定时段为第一时段,则安排为每周一、

16、三、五第一时段;2)电工学与施工技术间隔周期均为1-2天,可将其对称安排在周二与周四上午两个时段,安排见表1;3)鉴于高层建筑结构与施工组织、事故分析及处理与结构稳定理论上课时间的连续性及间隔周期的相似性,可分别等效为一门课程进行安排,安排见表1;4)其他课程可根据优先级要求插入未被占用的优先级较高的时间段上。时段星期一星期二星期三星期四星期五星期六1土力学与基础工程(1-13周)建筑电工学(1-8周)土力学与基础工程(1-13周)施工技术(1-12周)土力学与基础工程(1-13周)2钢筋混凝土(1-10周)施工技术(1-12周)钢筋混凝土(1-10周)建筑电工学(1-8周)施工组织(7-12

17、周)3高层(1-6周)施工组织(7-12周)事故分析(1-6周)结构稳定(7-12周)高层(1-6周)施工组织(7-12周)系统工程(7-14周)现代施工(1-8周)土木工程施工(二9-17周)4系统工程(7-14周)有限元素法(4-13周)现代施工(1-8)事故分析(1-6周)结构稳定(7-12周)表1二】班级26050801课表安排结果如下:1、课程分类:公共必修课,大学英语(四)、概率论与数理统计、毛泽东思想与邓小平理论;专业必修课,积分变换、面向对象程序设计、经济地理与区域规划、测绘工程基础;选修课,0个。2、课程优先级:测绘工程基础大学英语(四)概率论与数理统计=毛泽东思想与邓小平理

18、论=面向对象程序设计经济地理与区域规划积分变换。3、 课程布置步骤:1)鉴于测绘工程基础和大学英语(四)的优先性与重要性,应首先对这两门课程进行安排,间隔周期均为1天,规定时段均为第一时段,安排见表2; 2)鉴于每位毛泽东思想与邓小平理论老师为多组班级授课,可将其安排在上午和下午的后两节课(3-4节或7-8节),以保证老师上课的连续性、来渭水乘车次数最少,安排见表2; 3) 概率论与数理统计安排原理同毛泽东思想与邓小平理论,安排见表2; 4)其他课程根据要求插入未被占用的时间段上。时段星期一星期二星期三星期四星期五1测绘工程基础大学英语(四)测绘工程基础大学英语(四)测绘工程基础2面向对象程序

19、设计概率论与数理统计毛泽东思想、邓小平理论概率论与数理统计毛泽东思想、邓小平理论3经济地理与区域规划积分变换经济地理与区域规划面向对象程序设计积分变换4表24.所排课表与原课表的比较(1)两者公共必修课及专业必修课所排时间段相差不大,选修课相差较大;(2)所排课表所选时间段尽量往好的时间段内取,而原课表由于某些原因而选择相对较差的时间段;(3)所排课表课程相对紧凑,学生、老师上课较原课表连续。(三)问题三:给出评价指标评价所建模型,并指出模型优点与不足之处。对于模型的评价,可以各个影响因素进行加权综合评价方法对模型进行综合评价。提出满意度的概念:教师、学生和学校对所排课表的满意程度,用百分制的

20、打分方式表示。满意度越高,则老师、学生和学校最模型的综合评价越高。1.满意度的计算:满意度P由教师的满意度Pt、学生的满意度Ps和学校的满意度Pu表示。并关于老师、学生和学校进行加权评价,其权重分别为:0.4,0.3,0.3。P=0.4*Pt+0.3*Ps+0.3*Pu2.满意度的影响条件:(1)教师的满意度:教师一周内在渭水校区的逗留总时间,教师一周内前往渭水的乘车次数;(2)学生的满意度:教师在一周内两次上课的时间间隔,优先等级高的课程安排的时段的好坏;(3)学校的满意度:学校一周派往渭水的车次数。3.评价满意度的具体评价指标:(1)教师的初始满意度(100分),在学校逗留一次扣去10分,

21、因乘车次数扣去(实际乘车次数最小乘车次数)乘以10分;(2)学生的初始满意度(100分),教师在一周内两次上课的时间间隔小于一天或大于两天扣10分,公共必修课和专业必修课分配在下午每课扣10分,选修课分配在晚上或周末每课扣10分;(3)学校的初始满意度(100分),根据乘车次数,扣去(教师实际乘车次数教师最少乘车次数)乘以10分。4.满意度指标的转化:将教师、学生和学校的初始满意度相应扣去的分数为教师、学生和学校的满意度,再将这个满意度化为百分制。5.对模型所排出的课表进行抽样评价,以问题二中随机抽取的两个班级进行评价,其评价结果如下:第一组评价:(一)所排课表:(1)教师的满意度课程分数课程

22、分数课程分数土力学80施工组织80系统工程90有限元素法100结构稳定90施工(二)100混凝土90高层90电工学90施工技术90事故分析90现代施工90表三转化后的满意度Pt=90(2)学生的满意度课程分数课程分数课程分数土力学100施工组织80系统工程100有限元素法100结构稳定100施工(二)90混凝土100高层100电工学100施工技术100事故分析100现代施工100表四转化后的满意度Ps=97.5(3)学校的满意度课程分数课程分数课程分数土力学80施工组织80系统工程90有限元素法100结构稳定90施工(二)100混凝土90高层90电工学100施工技术90事故分析90现代施工90

23、表五转化后的满意度Pu=90.8加权后总满意度P=0.4*Pt+0.3*Ps+0.3*Pu=92.49原课表,见附表:(1)教师的满意度课程分数课程分数课程分数土力学80施工组织80系统工程90有限元素法100结构稳定90施工(二)100混凝土90高层90电工学90施工技术90事故分析80现代施工90表六转化后的满意度Pt=81.2(2)学生的满意度课程分数课程分数课程分数土力学100施工组织100系统工程100有限元素法90结构稳定100施工(二)90混凝土90高层100电工学90施工技术90事故分析100现代施工90表七转化后的满意度Ps=95(3)学校的满意度课程分数课程分数课程分数土力

24、学80施工组织80系统工程90有限元素法100结构稳定90施工(二)100混凝土90高层90电工学90施工技术90事故分析80现代施工90表八转化后的满意度Pt=81.2加权后总满意度P=0.4*Pt+0.3*Ps+0.3*Pu=85.34(二)第二组评价所排课表:(1)教师的满意度课程分数课程分数课程分数概率论90程序设计90积分变换90大学英语90毛邓三90测绘基础80地区规划90表九转化后的满意度Pt=88.6(2)学生的满意度课程分数课程分数课程分数概率论100程序设计100积分变换100大学英语90毛邓三100测绘基础100地区规划100表十转化后的满意度Ps=98.6(3)学校的满

25、意度课程分数课程分数课程分数概率论90程序设计90积分变换90大学英语90毛邓三90测绘基础80地区规划90表十一转化后的满意度Pu=88.6加权后总满意度P=0.4*Pt+0.3*Ps+0.3*Pu=91.6原课表,见附表:(1)教师的满意度课程分数课程分数课程分数概率论80程序设计90积分变换90大学英语80毛邓三90测绘基础80地区规划90表十二转化后的满意度Pt=85.7(2)学生的满意度课程分数课程分数课程分数概率论80程序设计100积分变换100大学英语90毛邓三80测绘基础80地区规划100转化后的满意度Ps=90(3)学校的满意度课程分数课程分数课程分数概率论80程序设计90积

26、分变换90大学英语80毛邓三90测绘基础80地区规划90表十三转化后的满意度Pu=85.7加权后总满意度P=0.4*Pt+0.3*Ps+0.3*Pu=87 教师 学生 学校 平均值图一 教师 学生 学校 平均值图二根据数据及图可以得出:利用模型建立的课表,根据统计学知识,抽样调查,调查的结果模型建立的课表的总满意度和各种满意度都略高于原课表。六、模型的优缺点分析优点:(1) 根据这种根据优先级先后排课表的方式即要比精确排表方式要简单和快捷,而且所得到的实验结果也较好,满意度均在90分以上,保持了原课表一样的高效性;(2) 由于考虑老师的带课班数及所授课程的重要程度,所以安排课程后可行性得到较好

27、的保证。缺点:(1) 由于模型未考虑到教室数量对排课的限制,也未考虑到其他各种客观或主观条件对排课的限制,故排课后的准确性比原课表要差。(2) 由于模型许多条件都是根据经验进行的人为规定,所以并不能达到最优化的程度。七、模型的改进1.由于在建立模型时未考虑到一个老师教授不同课程和老师由于生病或其他原因而临时改变课程时间段等实际较可能出现的情况。所以要准确的排出课表就需将每个老师用程序编码,将每个课程也用程序编码,一个老师码可以对应多个课程码,同时老师码可以缺码或编码号后移,也可以是课程号缺码或课程码后移,这样就可以增加模型的机动性,使得程序更加实用。2由于在建立模型时只是单纯的减少老师次数来减

28、少车次数,而实际上一个车次可以移动40多为老师,那么41与80所排出的车次数一样,那么可以让一部分老师乘车回家,而让一部分老师留校休息,而这个数量需要准确计算才能得出,所以对车次的优化对模型的改进也很有意义。八、模型的总结高校排课系统一直是高校教务管理中难以解决的问题, 由于约束条件多, 教学资源要求复杂, 而且每个学校有其特殊情况, 因此排课要求也不完全一样。按照渭水校区班级较多、课程任务繁重和老师离学校距离远和来校难度大等特点, 设计出系统,能较准确高效的作出安排, 满足必要的约束条件, 能够在一定程度上避免冲突, 提高教学管理水平。九、可行性建议1、重要或是较为重要的课程尽量不要安排在晚

29、上,由于学生的学习习惯和规律以及客观条件的限制,学习效率较白天低。可以考虑把公共选修课或专业选修课安排在晚间,以减小脑力负担。此外,重要的课程也尽量不要安排在周末,因受主观条件等的影响,不利于学生对知识的消化。2、较为重要的课程一次上课所对应的班级不宜过多,这样既可以减轻老师上课负担,提高教学进度,又可以避免学生因教室面积大、人数多等原因而对听课效果产生的不良影响。3、尽量避免把两门以及两门以上难度较大的课程安排在连续时段上,这会增加学生脑力负担,不利于学生对知识的吸收。4、英语等需要记忆的课程应尽量避免安排在一天的最后时段,此阶段学生大脑进入疲劳期,学习效果不佳。5、诸如C语言,C+,数据结

30、构,数据库等计算机方面的课程,应尽量安排在计算机机房上课,在学习课程内容的同时锻炼编程等实际动手操作能力。6、制定课表时,应尽量安排出机动课时段,机动教室,以配合由于种种原因所导致的临时调课情况。 7、在教室分配方面,应避免仅有一个或两个班所上的课程占用大教室,这会因学生就座相对分散,而导致老师不便授课、影响课程进度,另一方面,影响学生听课效果。 8、在教室分配上,应尽量避免相临的两节课所用教室距离过远,如连续两节课教室分别在WM3501和WX1504,由于课间时间较为短暂,会在路上耽误过多时间甚至迟到,从而影响教学进度。十、参考文献1现代高校排课系统的设计与分析河北廊坊师范学院数信学院张春红

31、万里威2大学数学实验 姜启源清华大学出版社,2005.23运筹学(上册) 徐渝,贾涛清华大学出版社,2005.24系统工程 汪应洛机械工业出版社,2008.65 大学课表安排问题的 PBIL 算法 徐云青,陈建明衢州职业技术学院323000;浙江师范大学 信息科学与工程学院321004十一、附录附录一:基于时间片优先级排课算法以排课班为单位,围绕着各对像(自然班、教室、教室)的时间表选择合适的时间片。1算法流程图 2算法的伪代码描述 输入:教师(teacher1,teacher2,.teachern) 班级(class1,class2,.classn) 课程(course1,course2,c

32、oursen) 各教师、班级、课程时间片的优先级 排课班(schudel_class1,schudel_class2schudel_classn) 输出:已经排好课表的教师、教室、班级Procedure schudeling(teacher,room,class,course,schudel_class,public_class)/初始化一张空的时间表,对该时间表的每个时间片的优先级初始化为高级 Begin: Time_table=Time_table & get_all_class_time_table(schudel_class) Time_table=Time_table & get_r

33、oom(schudel_class); Time_table=Time_table & get_teacher(schudel_class); Course=get_course(schudel_class); /假设只有一个时间段及两个时间段连堂那种课 Int iCount2=0;/那门课一个时间段的次数 Int iCount3=0;/那门课两个时间段连堂的次数 /得到课程每周的课时数Int course_count=get_couse_count(Course); /得到每周的连课情况 Parse_couse_count(course_count,&iCount2,&iCount3); /

34、根据iCount2,iCount3,以及Time_table为该排课班选择N个/(N=iCount2+iCount3)适当的时间片,保存在CPoint变量中 CPoint po; LList* cpInt priority7=0;/得到每天的优先级的总和 Loop:I=0 until I=6 do: Loop: J=0 until J=6 do: Begin: PriorityI =PriorityI+ Time_table.time_pieceIj End Begin /得到优先级总和最大的那天,我们认为那一时间最闲/适宜安排课程 int number=get_number(priority

35、7); BOOL fail While iCount20 do: Begin: fail=Get_Time_Pieces(2,&number,po); if(!fail) then do begin: iCount2-; cp-append_list(po); end begin else break; End Begin While iCount30 do: Begin: fail=Get_Time_Pieces(3,&number,po); if(!fail) then do: begin:ICount3-; Cp-append_list(po); End begin Else Break

36、; End Begin/根据*cp的数据及schudel_class的数据对schudel_class中的自然班,所得到的教室,/ 老师的课表进行回写if(!fail) doWriteBack(schudel_class,cp);Else then RollBack(schudel_class,cp);/把先前选好的教室,老师给”擦除”掉 End Begin End Schudeling算法里面有到的一些函数解释:BOOL check_for_dispose(schudel_class):以排课班为参数,判断该排课班是否已经排好课,排好了返回treu,否则返回false&操作:该操作是对两个课

37、表的运算,返回一个新课表;得到的课表的时间片为所运算的课表对应时间片的较小值CTime_table& get_all_class_time(schudel_class):以排课班为参数,得到该排课班所有自然班课表的&,返回得到的新课表CTime_table& get_teacher(schudel_class):以排课班为参数,为该排课班选择一合适的教师,并返回该教师的课表Ccourse get_course(schudel_class):以排课班为参数,得到该排课班的课程,并返回之Int get_course_count(Ccourse):以课程为参数,得到该课程每周所需上的课时数,并返回之

38、Parse_course_count(int&,int&,int&):分析get_course_count所返回的数值,把该数值以一个时间段和两个时间段连堂分开Int GetNumber(int*):传进一整型数组,得到该整型数组中的最大值的下标,并返回之WriteBack(schudel_class,Llist*):根据Llist* 中的时间片值,更新public_class中的教师,班级的时间表信息RollBack(schudel_class,Llist*):擦除前面步骤在排课班、教师、班级、中写下的数据附录二:课 程总学时周学时(counts)类别任课教师人数上课班级总数老师带班数课程优

39、先级间隔周期(T)上课时间段有限元素法273任选1105个班级一组100另作安排4-13周钢筋混凝土与砌体结构364必修521111-2天1-10周土木工程施工技术444必修421111-2天1-12周土木工程施工组织265必修421011-2天7-12周结构稳定理论204任选32100另作安排7-12周高层建筑结构244任选42100另作安排1-6周工程事故分析及处理244任选25100另作安排1-6周系统工程284任选25100另作安排7-14周土木工程施工(二)244任选15个班级一组100另作安排9-14周建筑电工学284限选15个班级一组1011-2天1-8周土力学与基础工程726必

40、修721111天1-13周现代施工技术与管理334任选15个班级一组100另作安排1-8周课程总学时周学时(counts)类别任课教师人数上课班级总数老师带班数课程优先级间隔周期(T)上课时间段概率论与数理统计484必修19874个班级一组1011-2天1-13周大学英语(四)524必修1132152个班级一组1111-2天1-15周测绘工程基础726必修1111111天1-13周面向对象程序设计524必修2421011-2天1-14周毛泽东思想邓小平理论524必修181174个班级一组1011-2天1-14周经济地理与区域规划383必修1211011-2天1-14周积分变换204必修2104

41、1011-2天1-5周班级28010707现有课表:时段星期一星期二星期三星期四星期五星期六1土力学与基础工程建筑电工学土力学与基础工程土力学与基础工程2高层建筑结构(1-6周)、土木工程施工组织(7-12周)钢筋混凝土与砌体结构土木工程施工组织土木工程施工技术高层建筑结构(1-6周)、土木工程施工组织(7-12周)3系统工程土木工程施工技术结构稳定理论(7-12周)、工程事故及质量分析(1-6周)现代施工技术与管理结构稳定理论(7-12周)、工程事故及质量分析(1-6周)土木工程施工(二)4系统工程建筑电工学钢筋混凝土与砌体结构5现代施工技术与管理有限元素法班级26050801现有课表:时段星期一星期二星期三星期四星期五1测绘工程基础面向对象程序设计经济地理与区域规划大学英语(四)2面向对象程序设计积分变换3经济地理与区域规划概率论与数理统计测绘工程基础积分变换测绘工程基础4毛泽东思想邓小平理论大学英语(四)概率论与数理统计毛泽东思想邓小平理论

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1