数学建模请你来排课表

合集下载

数学模型_请你来排课

数学模型_请你来排课

请你排课表摘要:该数学模型是在课程可以合理编排的前提下,以尽可能有效利用教室座位为主要准则进行编排,通过分析影响排课问题的各种条件,利用计算机算法及数据结构知识建立的,首先得出符合基本要求的没有时间、空间冲突的课程表,然后根据各个教师,课程的周课时数量进行筛选、优化,最后得出最合理方案。

该模型依据教师为主线排课表,考虑到相同课程尽量分散,循环程序没有以教师序号进行,可以满足要求。

另外,由于第八类课程只能在机房上课,而且教师、课程数固定,可以在程序之外排入课表。

关键词:模型程序优化循环一、提出问题1.现有课程40门,编号为C01~C40;教师共有25名,编号为T01~T25;教室18间,编号为R01~R18。

具体属性及要求见表1,表2,表3:2.课表编排规则:每周以5天为单位进行编排;每天最多只能编排8节课(上午4节,下午4节),特殊情况下可以编排10节课(晚上2节),每门课程以2节课为单位进行编排,同类课程尽可能不安排在同一时间。

3.要解决的问题:①请你结合实际情况建立数学模型,通过编程计算,给出较为合理的课表编排方案,分析你所给出的方案的合理性。

②如果不准晚上排课,排课结果是否有所变化,如何变化?③对教师聘用,教室配置给出合理化建议。

二、分析问题排课问题实质上是一个优化问题。

在该问题中,我们首先分析影响排课方案的因素,得出合理方案以及最优方案的评价标准,层层递进,先建立合理排课方案的模型,再调整为最优排课方案的模型。

本模型是在课程可以合理编排的前提下,以尽可能有效利用教室座位,为仔细的同学提供尽可能多的座位资源为主要准则进行编排。

在问题一中利用算法、程序得出的合理排课方案,再分别根据具体要求筛选优化,得出最佳方案。

三、条件假设1、不考虑单、双周,每周上课时间从星期一到星期五。

由于每门课按两节为单位上课,将每天上午下午分别按两大节计算,晚上按一大节计算。

对于某些3课时的课按两大节计算(由于占用某一节课,导致其他课程不能正常与其安排在同一半天)2、假设所有的教室在同一栋楼里,并且教室的编号是按照顺序编排的。

数学建模排班问题讲解学习

数学建模排班问题讲解学习

数学建模排班问题值班人员安排问题摘要某部队后勤值班室准备聘请4名兼职值班员和2名兼职带班员值班两种职位,相应的报酬也不同。

为使部队的支出最少,现需合理的设计出一张人员的值班时间表,在安排兼职值班员的过程中,需要考虑多方面的的问题与因素.因此,一个合理有效的兼职值班时间表的安排是非常有实际意义的.本次设计在综合了解一定的数学模型、以及LINGO软件中一些知识的基础上,以线性规划理论为基础,对实际例子进行一定的分析后,建立合理的整数规划模型.然后,利用LINGO软件求得结果.给出一个最优化的值班计划,使后勤值班室总支付的报酬为最少.关键词:值班时间表,LINGO软件,模型,报酬一.问题重述某部队后勤值班室准备聘请4名兼职值班员(代号为1,2,3,4)和2名兼职带班员(代号5,6)值班,已知每人从周一到周日每天最多可以安排的值班时间及每人每小时值班的报酬如下表.每人每天可值班的时间和报酬该值班室每天需要值班的时间为早上8:00至晚上22:00,值班时间内须有一名值班员值班.要求兼职值班员每周值班不少于10h,兼职带班员每周值班不少于8h.每名值班员每周值班不超过4次,每次值班不少于2h,每天安排值班的值班员不超过3人,且其中必须有一名兼职带班员值班.试为该值班室安排一张值班人员表,使总支付的报酬为最少.二.模型的假设(1)兼职员在可安排的时间内无特殊情况发生均可按时值班;(2)值班室需要值班的时间稳定不变;(3)值班员的兼职工资稳定不变.三.符号的说明ijx表示第i个值班员在星期j是否值班,如果值班,则ijx=1,否则ijx=0。

ija表示第i个值班员在星期j的值班时间。

ik表示第i个值班员值班一个小时所能够获取的报酬,ijA表示第i个值班员在星期j的值班时间的上限。

四.问题设计本题是在通过安排不同人员的值班时间来是部队支付的报酬最少,在给定的约束条件和每人每天的工作时间和报酬来设计。

由于知道员工每天的工作时间和报酬,这样就可确定目标函数,再通过给定的约束条件来解答,从而得出最优的值班时间表。

数学建模课表安排

数学建模课表安排

文理学院新校区课表安排问题编号:J4004摘要:每学期的开学初,总有许多老师对新校区的课程安排很有意见,本文选取文理学院某系某专业的师生情况、课程、教室间数为研究对象,以课程与上课时间之间的关系矩阵为目标矩阵,通过用各影响矩阵优化目标矩阵的方法,对新校区各系各专业的课表进行了重排。

在具体模型建立过程中采用了0-1矩阵法,矩阵的乘法等数学方法,建立优化类数学模型来求解有效矩阵,根据有效矩阵初排课表,结合多方面因素建立修正矩阵,对初排课表逐层修改,得出最优排课表,最后通过lingo软件加以实现。

运用我们建立的数学模型,对文理学院数学系08级信息与计算科学专业的课表进行重排,将所得新课表与现有的课表进行比较,显然新排的课表更加合理化、人性化。

根据新课表中每节课对应的相关因素(课程名称、教室、老师、班级)进行分析整合,可衍生出新的安排表(如通过对不同时间段上课老师人数的研究安排校车的接送)。

我们以学校、教师和学生对所排课表满意度作为衡量标准,以文理学院数学系08级信息与计算科学专业的课表为例,可得学校、教师和学生对我们所排课表的满意度主因素分别为校车接送次数、在新区逗留时间、专业课排在早上,计算得评价指标分别为 0.88、1、1,可见对本模型使三方的满意度基本均衡且都超过80%,即做到了三者兼顾的满意最大化。

最后,通过我们建立的模型,我们给教务处排课表问题给处了一些合理的、可行性的建议。

关键字:排课问题 0-1矩阵矩阵的乘法优化目标矩阵满意度一. 问题重述每学期的开学初,总有许多老师对对新校区的课程安排进行抱怨,还有许多老师要求调课,教务处对这一问题很是头疼。

根据文理学院院的实际情况,用数学建模的方法解决这一问题,既要让老师满意,又要让同学和学校满意。

让老师满意,就是要让每位老师在一周前往新校区上课的乘车次数尽可能少,同时还要使每位老师在新校区逗留的时间尽可能少,比如安排尽量少出现像同一天同一位老师上1-2节,7-8节;让同学们满意,可从以下几方面考虑,比如,同一班级同一门课程,至少应隔一天上一次,另外对学生感到比较难学的课程尽量安排在最好的时段;同时为避免下课楼道拥挤,对于上午有四节课的班级,在教室功能允许的情况下,应尽量避免更换教室;让学校满意,就是要节约支出,每周派往新校区的车次尽可能的少。

数学建模请你来排课表

数学建模请你来排课表

数学建模请你来排课表请你来排课表摘要每学期的开学初,学校都会根据时间、课程、课时要求、教室、班级人数、教师等因素对各学院各专业的课表进行重排。

我们首先对题目的要求进行分析,将题目归类为优化模型问题,主要运用运筹学的知识来建立模型。

确定了分别将教师、课程、教室三个因素优化组合进行讨论,并分配到课表上的不同时间段上最终形成满足要求的课表的解决方案。

首先,我们确定了各优化因素之间的约束关系,然后根据各因素间约束关系的要求不同,编制出各因素间的效用矩阵。

其中我们采用了多重约束条件,将各约束条件分为硬约束(强制要求)和软约束(用偏好系数表示);其次,我们为课表上的每一个时间段随机分配课程;再次,我们用逐级优化和0-1规划的方法分别将教师、教室分配到课表上的不同时间段上,按时间+课程+教师+教室的组合,形成了一份尽可能多地满足课程、教师、教室要求的课表。

最终根据题目给的数据,通过MATLAB软件编程进行模型验证,求出了所需课表,且在方案合理性分析中用计算机模拟的方法分析了偏好系数的变化、教室的种类对排课结果的影响。

文尾我们给出了教师、教室的配置建议。

关键词:排课模型随机分配优化目标矩阵多重约束条件0-1规划目录1 问题重述与分析 (4)1.1问题的重述 (4)1.2问题的分析....................................... (4)2 问题的假设 (4)3 符号说明 (5)4 模型的建立与求解 (5)根据分析,关联关系有课程—上课时间、课程—教室、教师—课程、教师—上课时间、教师—教室一共五个,该模型中存在的联系可由下图给出,其中实线表示“硬约束”,虚线表示“软约束”。

根据关联关系,由此可以得到刻画每个关系的效果指标矩阵,依次建立A1,A2,A3,A4 四个效用矩阵。

其中,为强制约束的有A2、A4,偏好约束有A1、A3,矩阵表示如下图所示。

1A 矩阵:()ij a A 1 刻画i 教师上j 教室的偏好效果指标,其中:10≤≤ij a (当ij a =0时表示i 教师不希望在j 教室上课,ij a =1时表示i 教师希望在j 教室上课,10 ij a 时表示i 教师在j 教室上课的偏好程度适中,赋值越大说明偏好越大)2A 矩阵:()ij a A 2 刻画i 教师上j 课程时的效果指标,其中:ij a =0,1(当ij a =0时表示i 教师不能上j 课程,ij a =1时表示i 教师能够上j 课程)3A 矩阵:()ij a A 3 刻画i 教师上j 时间段课时的偏好效果指标,其中:10≤≤ij a (当ij a =0时表示i 教师不希望在j 时间段上课,ij a =1时表示i 教师希望在j 时间段上课,10 ij a 时表示i 教师在j 时间段上课的偏好程度适中,赋值越大说明偏好越大)4A 矩阵:()ij a A 4 刻画i 课程在j 教室上时的效果指标,其中:ij a =0,1(当ij a =0时表示i 课程不能在j 教室上,ij a =1时表示i 课程能够在j 教室上)(2)对时间段S i 进行编号由于每门课程以2节课为单位进行编排,因此可以用i S 表示各段时间,如下图所示:(3)对课程的处理由于有些课程的课时数为奇数,因此对这些课程进行适当的处理及调整,具体做法如下: 当某一课程的课时数为奇数时,取大于它的最小偶数,若该课程的课时数为偶数时则不改变其值。

排课建模

排课建模

请你来排课现有N个教学班①需要排课。

我们为这些教学班提供了一定的教室②,和可以排课的时间③。

请你给每个教学班排出它所开课的时间和地点。

需要满足以下一些限制:1.同一自然班不可能在同一时候参加不同教学班的授课;2.同一教师不可能同时参加不同教学班的授课;3.一个教室不能同时开两门课程;4.满足课程的教室类型需求;5.学生人数不能超过教室容量;6.同一门课程尽量不要同一天开课两次及以上;7.一个自然班的课程尽量分布均匀到每天;8.教师上课尽量集中,同时一天尽量不要超过6节,最好4节9.晚上尽量不排课。

名词解释:①教学班:在学分制开放式选课的环境中自然班的定义已经比较模糊了。

其教学管理部门通常会根据选修学生人数和教师、教室等资源情况将选课学生划分成为一个或多个教学班。

教学班可以被定义为{}束容量、任课教师,周学课程,选课集合,课程。

时,教室需求,其他约Ps.表1.如上表(这里只解释关键数据)“教学班id”唯一标识一个教学班;“课时组合id”唯一标识一次上课;课时表示一次课的长度;“教师id”唯一标识一名教师;“班级id”唯一标识一个自然班;“人数”教学班人数;“教室类型”上课所需教师类型。

②教室:是指提供给授课使用的场所以及附带设备的统称。

包括普通理论教室、带多媒体教室、语音、实验室、实训场所、体育操场等。

定义为{}=Room类型、大小、数量Ps.③排课时间:是指最大排课时间。

如一般大学授课以结为单位,每节45至50分钟不等,每天8到13节,每周40到84节不等。

视不同的教学单位而定。

在我校一般星期一至五排课上午排4节下午排4节晚上排3节。

2011全国数学建模竞赛暑期培训课表2

2011全国数学建模竞赛暑期培训课表2
最短路径、最小生成树、最大匹配算法及编程;TSP问题及算法;数字图像简介;血管的三维重建;校内竞赛C题评讲。
龚劬
7月11——16日
实践内容:校内竞赛A题(垃圾分类处理与清运方案设计)
或2005年B题(DVD在线租赁)
或2007年B题(乘公交,看奥运)
肖剑
龚劬
7月17日至19日
模拟竞赛(1)
A理119
龚劬
A理005
另外,也请老师们上午就把下午要让学生实践练习的题目布置了,中午可到梅园1幢休息,请带上你们的校园卡。同学们下午可以把自己的笔记本电脑带到机房.机房有空调。
龚劬
上午讲座:
DZ121
下午论文指导或辅导:
D区数学与统计学院楼1楼数学实验中心
7月12日、14日、16日
论文排版(公式、作图等),校内竞赛A题评讲、优化模型及Lingo软件,DVD在线租赁,决策分析。
肖剑
7月11——16日
实践内容:校内竞赛A题(垃圾分类处理与清运方案设计)
或2005年B题(DVD在线租赁)
8月31日
模拟竞赛(1)B评讲,论文及写作指导
荣腾中
9月1日
模拟竞赛(2)A评讲,论文及写作指导
何仁斌
9月2日
模拟竞赛(2)B评讲,论文及写作指导
龚劬
9月7日星期三晚
竞赛注意事项,落实竞赛场地等
龚劬
A理005
注:全国竞赛时间:9月9日(周五)8时至9月12日(周一)8时
另外,也请老师们上午就把下午要让学生练习的题目布置了,因为机房只有90台左右的机器,同学们下午可以把自己的笔记本电脑带到机房.机房有空调。
7月20日
休息
7月21日
23,25日

课程时间安排-数学建模

课程时间安排-数学建模

课程时间安排的优化模型摘要排课是教务运作中的一项重要工作,同时排课问题也是一个复杂的组合优化问题,对此问题的建模和求解,难度都非常大。

多数情况下我们只是满足于求解问题的一个可行解,而对此可行解的进一步优化往往通过手工完成,效率很低。

目前有很多计算机专家和数学专家都致力于对大规模排课问题的研究,在此我们给出一个规模相对较少,约束相对较少的较为简单的排课问题。

解决排课中的问题,既能满足老师授课上机的要求又能满足学生对上机时间的合理安排。

让学校、老师和同学的满意。

让老师满意,就是安排尽量少出现像同一天同一位老师上1-2节,7-8节,最好是1-2节面授然后4-5节课上机;让同学们满意,可从以下几方面考虑,比如,同一班级同一门课程,至少应隔一天上一次,另外对学生感到比较难学的课程尽量安排在最好的时段,上机时间要安排在面授课之后;让学校满意,就是尽量减少因出现问题而不得不为老师调课的次数。

根据实际情况在具体模型建立过程中采用了0-1矩阵法,矩阵的乘法等数学方法,建立优化类数学模型来求解有效矩阵,根据有效矩阵初排课表,结合多方面因素建立修正矩阵,对初排课表逐层修改,得出最优排课表。

并通过matlab实现算法和给出模型的解。

先将123班级课表和20张老师课表转换为0-1变量,有课改为0,没课改为1,组成两个矩阵,然后可用VB编程得到一个新的矩阵,两矩阵中元素都为1时,新的矩阵对应的元素就为1,即老师和班级同时有空时为1。

将多目标函数转换为单目标函数,其他的要求可直接在约束条件中满足。

然后用lingo软件编程解决(其约束条件和目标函数都可用lingo的语句表示出来)关键词:排课问题 0-1矩阵矩阵的乘法优化目标矩阵 lingo VB1 问题重述排课是教务运作中的一项重要工作,同时排课问题也是一个复杂的组合优化问题,对此问题的建模和求解,难度都非常大。

多数情况下我们只是满足于求解问题的一个可行解,而对此可行解的进一步优化往往通过手工完成,效率很低。

数学建模排课系统

数学建模排课系统

监制: 数学建模协会计算机上机课安排摘要本模型用于较为方便的排课,其步骤主要分三个部分。

第一部分主要解决那些学生空课特别少的特殊班级,由于此种班级可供选择的空课时间不多,故而最为优先的进行考虑。

这一部主要靠人工完成。

第二部分也就是本模型的核心部分,用于初步解决余下班级的排课问题。

首先将老师和学生的课表转化成相应的0-1分布的形式,然后利用所确定的优先级别,对课表中学生空课状态(记为X1),老师在原任课天内空课情况(记为X2)根据不同时段的空课情况赋予不同的值,以及实验室每个时段的上机占有情况(X3),即可通过参数的大小反应各个空课处优先被安排的程度,然后将老师的课表矩阵与其所教班级的课表矩阵相加,使得学生上午优先、教师指导自己班学生最大化及实验室占有情况同时考虑,找出Y(Y= (X1+ X2 +X3)*e)最大值处的坐标,即为该班级上机实践应该安排在课表中的位置。

而将0-1分布的矩阵转化为带有优先级别的矩阵通过Matlab很容易的实现,两个矩阵的相加也可以通过Matlab实现。

这一模块将在智能化排课的过程中用到两次。

第一次,把老师任课天内可以指导自己所教班级最大限度的排满。

然后通过C程序选出需要加天的老师,及具体哪天,使得被选择的那天为所有可选天中,最大化指导学生的那天。

关键代码将在附录二中给出。

而后再对于还没有排课的班级进行下一轮的排课,这时只需可虑老师所附加来校的那一天。

这样就保证老师尽可能多的指导自己所教班级,教师来学校的意义最大化。

以上的两轮排序,较为简便并且智能的实现了课表的基本确定。

第三部分主要依靠人工完成。

此部分主要考虑因第二部分机械排序以后还存在没有排到课的班级,这些班级是那些在老师加天后还无法在这几天中被自己老师指导到的班级,对于这样的班级,只能交给管理员指导。

由于这只是极少的一部分,不会给人工排课人员带来很大的工作量。

我们优先级别的确定原则:1.通过首次全部用人工进行课表的实际抄做安排所出现的现象,发现学生的空课时间主要集中在下午(见附录一表1),若不考虑上午优先的话,则所有班级很难安排下去并且会出现下午一定面积的溢出。

排课建模

排课建模

排课问题的数学建模摘要为了解决日益繁琐的排课问题,针对本校情况,我们将在本文对排课问题进行分析和讨论(课程分类,课室条件,老师要求等),利用排课软件,设计程序,建立各种模型来进行排课。

背景由于受教育人口的增加,教育制度的改革完善,科学领域的日益广泛,人们将面对越来越多排课问题。

据了解,很多学校机构还是用人工排课,人工操作不仅工作量大而且容易出错。

因此,利用计算机建立排课模型,模拟排课是非常有必要的。

问题提出随着现代教学的改革及各项教育工程的实施,新的教育体制对课表的编排提出了更高的要求。

但现实生活中,排课问题屡屡皆是,小学如此,中学如此,大学更是如此,不仅科目多样,而且教室、老师多变,这使得排课问题往往是很令人费解的。

经过分析,排课问题就是多资源组合问题,问题的求解就是找出各个元素之间的对应关系。

进而将各个元素之间的联系进一步确定,转化成一个可以量度其大小的值,从而确定优先级。

下面我们将通过分析得出数学模型来模拟排课。

关键词课程分类优先考虑分2个课表软件排课程序排课分元素排课数据收集与分类首先确定排课的对象,这里我们以本校为对象,考虑到学校课程规模过于庞大,为简化问题,这里把对象缩小为信息工程的应用电子技术方向专业的课程。

经过我们的收集和分类,课程总共可分为1公共基础理论课,2专业基础理论课,3实验实习实训课,4专业基础理论课,5专业理论课,6设计课这六类课程。

然后我们把地点,也就是教室分为1(400人),2(200人),3(100人),4(50人),5体育馆,6实验室这六个场地。

接着是老师,由于对老师的情况并不十分了解,而且老师的特性分化不明显,这里简单地把老师分为1男教师和2女教师。

数据性质和意义公共基础理论课:该课程数目多,课时长,而且需要的教室多为大教室,但是课程类型表现明显,所以排这类课规模大但容易排。

专业基础理论课:科目多,一般为两个班同时授课,容易排。

专业理论课:课程不难安排,最大问题是老师的分配。

数学建模请你来排课表

数学建模请你来排课表
7.1 模型的优点 ................................................. 12
7.2 模型的缺点 ................................................. 12 8 参考文献 .............................................12 附录 ...................................................13
节课为单位进行编排,同类课程尽可能不安排在同一时间。
你所要解决的问题:
1. 请你结合实际情况建立数学模型,通过编程计算,给出较为合理的课表编排
方案,分析你所给出的方案的合理性。
2. 如果不准晚上排课,排课结果是否有所变化,如何变化,
3. 对教师聘用,教室配置给出合理化建议。
1.2 问题的分析
本题的目标是将所有课程按照一定的约束条件安排到课表中。由于课程的总
1、问题重述与分析
1.1 问题的重述
现有课程40门,编号为C01,C40;教师共有25名,编ቤተ መጻሕፍቲ ባይዱ为T01,T25;教
室18间,编号为R01,R18。具体属性及要求见附表1,附表2,附表3。
课表编排规则:每周以5天为单位进行编排,每天最多只能编排8节课(上
午4节,下午4节),特殊情况下可以编排10节课(晚上2节),每门课程以2
1 问题重述与分析.........................................4
1.1 问题的重述...................................................... 4
1.2 问题的分析......................................................... 4

数学建模竞赛暑期培训课表

数学建模竞赛暑期培训课表
下午:2:30----5:40
地点:南山四、六阶
注:学生需在放假前到教材科购买《实用数学建模教程》(刘建州主编)
教师组
ቤተ መጻሕፍቲ ባይዱ考试、评卷
7月15日上午、下午
教师组
组队、试卷讲评
第二阶段
时间
任课教师
授课内容
8月5日上午
冯春生
数学软件
8月6日上午
成央金
赛题讲解
8月7日上午
刘红良
赛题讲解
8月8日上午
周光明
赛题讲解
8月9日上午
刘树人
赛题讲解
8月10日上午
岳慧
赛题讲解
8月11日上午
文志武
赛题讲解
上午:8:00----11:40
数学建模竞赛暑期培训课表
第一阶段
时间
任课教师
授课内容
7月10日上午
周光明
线性规划、整数规划
7月10日下午
成央金
非线性规划
7月11日上午
成央金
动态规划
7月11日下午
冯春生
图论模型
7月12日上午
刘红良
层次分析法
7月12日下午
刘树人
随机模型
7月13日上午
文志武
微分方程模型
7月13日下午
岳慧
模糊数学
7月14日上午、下午

数学建模排课

数学建模排课

承诺书我们仔细阅读了竞赛规则。

我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与队外的任何人(包括指导教师)研究、讨论与赛题有关的问题。

我们知道,抄袭别人的成果是违反竞赛规则的, 如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。

我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。

如有违反竞赛规则的行为,我们将受到严肃处理。

我们参赛选择的题号是(从A/B中选择一项填写):A我们的参赛报名号为(如果设置报名号的话):A201267所属院系(请填写完整的全名):参赛队员(打印并签名) :1.2.3.日期:2012年4月22 日编号专用页评阅编号(由组委会评阅前进行编号):高校教学任务的合理安排【摘要】本文要解决的问题是在现有的教学资源下,有计划地安排高校教师工作,适量安排合堂以便使学生和教师都满意。

在对课表的编排上。

其中涉及的关键要素很多, 包括教师、班级、教室和授课时段等,根据排课总体目标、约束条件、及优先级, 充分利用紧缺资源,分析2011-2012学年第一学期mks学院的信息,通过用各影响矩阵优化目标矩阵的方法,对课表进行了重排。

在具体模型建立过程中采用了0-1矩阵法,矩阵的乘法等数学方法,建立优化类数学模型来求解有效矩阵,根据有效矩阵初排课表,结合多方面因素建立修正矩阵,对初排课表逐层修改,得出最优排课表,最后通过lingo软件加以实现。

运用我们建立的数学模型,对mks学院课表进行重排,将所得新课表与现有的课表进行比较,显然新排的课表更加合理化、人性化。

根据新课表中每节课对应的相关因素(课程名称、教室、老师、班级)进行分析整合,可衍生出新的安排表。

我们以学校、教师和学生对所排课表满意度作为衡量标准,以所给课表为例,可得学校、教师和学生对我们所排课表的满意度主因素分别为学生上课人数、教师上课时间、在专业课排在早上,计算得评价指标分别为 0.88、1、1,可见对本模型使三方的满意度基本均衡且都超过80%,即做到了三者兼顾的满意最大化。

课程时间安排-数学建模

课程时间安排-数学建模

课程时间安插的优化模型之杨若古兰创作摘要排课是教务运作中的一项次要工作,同时排课成绩也是一个复杂的组合优化成绩,对此成绩的建模和求解,难度都非常大.多数情况下我们只是满足于求解成绩的一个可行解,而对此可行解的进一步优化常常通过手工完成,效力很低.目前有很多计算机专家和数学专家都努力于对大规模排课成绩的研讨,在此我们给出一个规模绝对较少,束缚绝对较少的较为简单的排课成绩.解决排课中的成绩,既能满足老师授课上机的请求又能满足先生对上机时间的合理安插.让黉舍、老师和同学的满意.让老师满意,就是安插尽量少出现像同一天同一名老师上1-2节,7-8节,最好是1-2节面授然后4-5节课上机;让同学们满意,可从以下几方面考虑,比方,同一班级同一门课程,至多应隔一天上一次,另外对先生感到比较难学的课程尽量安插在最好的时段,上机时间要安插在面授课以后;让黉舍满意,就是尽量减少因出现成绩而不克不及不为老师调课的次数.根据实际情况在具体模型建立过程中采取了0-1矩阵法,矩阵的乘法等数学方法,建立优化类数学模型来求解无效矩阵,根据无效矩阵初排课表,结合多方面身分建立批改矩阵,对初排课表逐层点窜,得出最优排课表.并通过matlab实现算法和给出模型的解.先将123班级课表和20张老师课表转换为0-1变量,有课改为0,没课改为1,构成两个矩阵,然后可用VB编程得到一个新的矩阵,两矩阵中元素都为1时,新的矩阵对应的元素就为1,即老师和班级同时有空时为1.将多目标函数转换为单目标函数,其他的请求可直接在束缚条件中满足.然后用lingo软件编程解决(其束缚条件和目标函数都可用lingo的语句暗示出来)关键词:排课成绩0-1矩阵矩阵的乘法优化目标矩阵lingo VB1 成绩重述排课是教务运作中的一项次要工作,同时排课成绩也是一个复杂的组合优化成绩,对此成绩的建模和求解,难度都非常大.多数情况下我们只是满足于求解成绩的一个可行解,而对此可行解的进一步优化常常通过手工完成,效力很低.目前有很多计算机专家和数学专家都努力于对大规模排课成绩的研讨,在此我们给出一个规模绝对较少,束缚绝对较少的较为简单的排课成绩,请同学们加以解决.目前,某校的计算机上机课大都安插在计算机学院,计算机学院有5个机房用于先生上机,每个机房大约容纳90人.安插上机的课程共有4门,指点上机的教师共有24人,其中20人为课程的授课教师,见附件1,其他四人为机房的管理人员,顺次为陆老师,章老师,张老师和彭老师,其中陆老师负责2个机房.共有123个班级须要上机,具体名单见附件1.教师和先生的上机时间不克不及和他们的授课课程时间冲突,为此我们给出了各位教师和各个班级先生的课程表,见文件夹附件2.四名管理人员可全天进行上机指点,但只能在本人负责的机房进行.请求:(1)为了包管授课后果,学院规定每个老师在同一个时间段只能为1个班级进行指点;而同一时段答应有两名教师在同一个机房分别指点一个班级;(2)上机指点老师尽可能指点本人授课班级的先生;(3)周末尽可能不安插上机;其次早晨尽可能不安插上机.(4)为了减少教师到新校区的次数,上机时间尽可能与其授课时间安插在同一天.(5)还有其它请求可根据高校教学的情况,酌情给出,给出时要充分考虑教学规律、教学后果和大部分老师、先生的请求.2 条件假设1.每个机房大约容纳90人,每个班都在45人以下,所以假设每个机房在同一时间可容纳2个班,有5个机房.所以有2*5=10个班可同时上机.2.题目中请求(1)很容易满足,班级老师一对一.根据请求(2),可假设上机指点老师必须指点本人授课班级的先生.3.根据请求(3),可假设周末不安插上机,如许老师先生都情愿,并假设早晨可以安插上机.4.将请求(4)作为目标函数,(1)(2)(3)为束缚条件.3 符号说明在模型的求解过程中有说明4 成绩分析1,通过对所给附件中课表的安插发现影响排课的身分次要有以下几项:其中时间又有面授时间和上机时间之分分别以单箭头右边的为行右侧的为列建立两关系间的无效矩阵A、B、D,由A B⨯得矩阵C,再由C D⨯得矩阵E,确定其中的时间课程矩阵B为目标矩阵,以A、C、D影响矩阵为束缚对目标矩阵进行点窜即可得所求的最优目标矩阵B,以最优目标矩阵B初排课表,再根据批改矩阵E对初排课表进行批改即可得最优排课表.2,应用我们建立的模型,对所给黉舍专业的课表进行了重排,并和现有的该专业的课表进行了对比分析;3,通过我们建立的排课模型,综合优缺点分析,对黉舍教务处排课表成绩中出现的成绩给出合理的、可行性的建议.5-6.模型的建立与求解4.1由于周末不安插上机,早晨可安插上机,所以一周有25节课可以上机.每节课序号如下:周一周二周三周四周五1-2节 1 6 11 16 213-4节 2 7 12 17 225-6节 3 8 13 18 237-8节 4 9 14 19 249-10节(早晨)5 10 15 20 25老师编号和班级编号如下:老师编号老师姓名老师全天没课老师上机指点的班级班级编号1 陈英周3,周5 材控1103(35) 1材控1104(37) 2物理1101(31) 3物理1102(31) 4 2 丁胜1,3,5 金材1101(40) 5金材1102(41) 6金材1103(39) 7土木1101(29) 8土木1102(43) 9土木1103(42) 10机工1105(38)11机工1106(38)123 黄远林 5 平安1101(34)13平安1102(35)14平安1103(34)15化工1104(47)16化工1105(46)17化工1106(46)18采矿1101(37)19采矿1102(38)20采矿1103(37)21环工1101(35)22环工1102(34)23 4 王思鹏3,5 矿加1101(37)24矿加1102(36)25矿加1103(37)26交工1101(33)27交工1102(35)28交工1103(33)29化工1101(45)30化工1102(47)31化工1103(47)32材控1101(37)33材控1102(36)34 5 张葵2,5 机电1101(36)35机电1102(38)36机电1103(38)37机电1104(38)38 6 廖建平 3 人力1101(44)39人力1102(43)40社保1101(30)41英语1101(30)42英语1102(28)43英语1103(28)44行管1101(36)45行管1102(36)46社保1102(29)47信息(电专)481101(34)信息(电专)491102(31)7 刘琼1,3 法学1102(31)50法学1102(31)51德语1101(35)52国贸1103(36)53国贸1104(37)54工商1101(43)55工商1102(44)56 8 田萍芳 5 工管1101(29)57工管1102(30)58工管1103(31)59会计1101(40)60会计1102(40)61会计1103(41)62财务1101(31)63财务1102(30) 64财务1103(30)65 9 吴志祥1,3,5 建筑1101(25) 66建筑1102(24)67建艺1101(33)68装潢(专)1001(41)69 10 杨治1,3,5 土木1104(41)70土木1105(41)71无材1101(43)72无材1102(42)73无材1103(43)74给排水1101(36)75给排水1102(36)76 11 胡慧君1,3,5 冶金1102(29)77冶金1103(30)78冶金1104(33)79环设1101(32)80环设1102(32)81环设1103(32)82车辆1101(财产)83(34)车辆1102(37) 84 12 涂新辉1,3,5 土木1106(42)85土木1107(43)86冶金1101(32)87冶金1101(英才)88(40)13 李琳2,4,5 给排水1103(37)89给排水1104(35)90工业1101(40)91工业1102(39)92 14 王磊 5 机工1101(40)93机工1102(40)94交运1101(36)95交运1102(36)9615 何亨2,3,5 营销1101(36)97营销1102(34)98英语1104(30)9916 乔瑞1,3,5 机工1107(38)100机工1108(38)10117 张志辉2,4,5 国贸1101(38)102国贸1102(35)10318 欧阳琳3,5 热能1101(40)104热能1102(40)105生物1101(40)106城乡1101(34)107车辆1103(37)108汽服1101(38)109汽服1102(38)11019 黄莉2,5 机工1103(40)111机工1104(40)11220 余志兵1,3,4 预防1101(40)113预防1102(40)114预防1103(37)115药学1101(34)116药学1102(35)117临床1101(44)118临床1102(43)119临床1103(43)120临床1104(44)121临床1105(44)122临床1106(45)123 4.2以第一名老师为例,第一名老师陈英课表如下:老师有课时不克不及指点先生上机,在一周25节课中老师没课改为1,有课改为0则第一名老师的课表转换为0-1则得到:1 1 1 1 1将表格转换为一维数组有25列(对应25节课),则A1=(11101 10111 11111 10011 11111 ),同理第二位老师的课表转换为0-1,则得到A2=(11111 00011 11111 00011 11111),那么20位老师是否有空指点先生上机构成了一个20行25列的矩阵A,如下:4.3同理将每个班级课表也转换为0-1变量,第一个老师教了4个班:材控1103(35)、材控1104(37) 物理1101(31)、物理1102(31).第一个老师教的4个班构成一个4行(按顺序对应4个班)和25列(对应25节课)的矩阵:第二个老师教了8个班,这8个班的的课表转换为0-1后构成一个8行25列的矩阵:同理可得B3,B4…….B20(B20为第20个老师所教的班构成的矩阵).那么这20个老师教的123个班级构成一个123行25列的矩阵:只要老师和先生同时有空,先生才干上机.矩阵A1中1暗示老师有空,B1暗示老师所教的班有空.由矩阵A1和B1可得矩阵C1.矩阵C1暗示老师和其所教的班级同时有空 A1=(11101 10111 11111 10011 11111 )所以A1和B1中的对应的元素同时为1是,C1中响应的元素才为1,根据VB 编程可得C1(见附表1),所以同理由A2,B2可得C2,将C1,C2…….C20构成一个123行25列的矩阵,得: 确定束缚条件设x 是一个123行25列的矩阵一周25节课中每个班只须要一个老师指点一次,所以矩阵每行中只须要一个1,束缚条件(1)如下 只要当老师先生同时有空时才干上机:根据假设在同一时间最多只要10个班课以上机,即ij x 的每列之和小于等于10 确定目标函数第一名老师周三周五全天没课,即第11到15节,20到25节没课,i 为1,2,3,4暗示第一个老师指点标号为1,2,3,4的4个班上机,所以令m1=∑∑==+2520126j ij j ij x x (i=1,2,3,4)第二位老师周一周三周五全天没课,i 为5,6,7,8,9,10,11,12暗示暗示第二个老师指点标号为5,6,7,8,9,10,11,12的8个班上机令m2=∑∑==+151151j ij j ij x x +∑=2520j ij x (i=6,7,8,9,10,11,12)以此类推,可得m3,m4 (20)由于在lingo 中@sign 暗示当x<0时返回-1,x>=0返回1 所以令M=sign(-mi)+sign(-m2)+……..+sign(-m20)由于m1 为0或1,在其前加一个负号,所以-m1取0或-1,再用数值函数,可得目标函数: max=M (即老师全天没课时尽可能不来指点上机)7.模型的推广与评价长处:1,用0-1规划解决彼此束缚成绩.构成“时间段-课程-教师-机房“组合,科学合理;2,慢慢优化,层层递进,思路清晰,简单易懂;3,本模型充分考虑教师、先生和黉舍的满意度请求,课表的设置更加合理和人性化;4. 本模型在建立过程中对上课时间巧妙赋值,将实际成绩数值化. 缺点:本模型在建立时,未考虑单双周排课成绩,若把此身分加以考虑,将使模型更加的完好.8.参考文献[1] 姜启源,谢金星,叶俊.数学模型(第三版).北京:高等教育出版社 2008.[2] 雷英杰,MATLAB遗传算法工具箱及利用,西安电子科技大学出版社,2005[3] 林志雄,排课数学模型及其算法,龙岩学院学报第六期,2006年12月.9.附录:附录一:VB编程代码Private Sub command1_click()Dim a(25), b(25), c(25)X1 = WordStr(Text1.Text, " ", "")X2 = WordStr(Text2.Text, " ", "")q = Len(X2)Print Len(X2)For k = 0 To q \ 25 - 1Print Len(X2)h = 25 * kFor i = 1 To 25a(i) = Mid(X1, i, 1)b(i) = Mid(X2, i + h + 2 * k, 1) a(i) = Val(a(i))b(i) = Val(b(i))c(i) = a(i) * b(i)n = n + 1Print c(i);NextPrintNextEnd Sub输入数据得到的结果:老师0111101 10111 11111 10011 11111 先生00101 00111 01101 01011 00111 00101 00111 01101 01011 00111 00011 00011 00011 00111 00011 00011 00011 00011 00111 00011 00001 00111 01101 00011 00111 00101 00111 01101 01011 00111 00001 00011 00011 00011 00011老师0211111 00011 11111 00011 11111先生00011 00011 01101 00011 00111 00011 00011 01111 00011 00011 00011 00011 01101 00011 00111 00101 00011 00001 00011 00111 00001 00011 00011 00011 00111 00001 00011 00011 00011 00111 00001 00001 00111 00011 00011 10001 00001 00111 00001 00011老师301111 00011 11011 00011 11111先生00011 00111 00111 00111 00001 01011 01011 00111 00111 00011 01011 00101 00111 00111 10011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 01011 00111 10011 01001 0011111011 00011 00011 00011 00111 01011 01011 00111 00011 01011 00011 00011 00011 00011 00001 01011 00001 00011 00011 00011 01011 00001 00011 00011 10011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 00011 01011 00011 10011 00001 00111 01011 00011 10011 00001 00111 01011 00011 00011 00011 00111 01011 00011 00011 00011 01011老师400111 01001 11111 00011 11111先生01001 00001 00111 00011 00011 01001 00001 00011 00111 00011 01001 00001 00011 00111 00011 00011 00011 01011 10011 01111 00011 00111 00011 10011 01111 00011 00111 01011 00011 0111100011 00001 00011 00011 0011100011 00001 00011 00011 0101100001 10011 01111 00111 0011100111 10011 01111 00001 00111老师500011 11111 10011 11011 11111先生00011 01001 00011 00011 0001100011 00011 00011 00011 0001101110 11110 00111 01001 0001100011 00011 00111 10011 111000,0,0,1,1,0,1,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,0,1,1,1,1,0,0,0,0,1,1,0,1,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,1,0,0,1,1,1,1,1,0,0,老师611101 00111 11111 00101 00111先生00001 00111 00101 00011 0001100001 00111 00101 00011 0001101001 10011 11110 01001 0001100001 00011 10101 10111 00011 01001 00101 00011 01111 01001 00001 10011 00011 10001 00011 00001 01011 00001 10011 00011 00001 00011 01001 10001 00011 00011 00011 01001 00001 00111 00001 00011 00011 01001 00111老师711111 00011 11111 10011 11101先生00011 00111 00011 00111 00001 10011 00011 00011 00111 00001 00001 00011 10001 00111 00001 10101 00011 10111 00001 00111 00101 00011 00111 00011 01111 00011 01011 00101 01011 00011 00111 01011 00011 00011 00011老师810111 00111 10111 00111 11111先生00111 01001 00011 01001 0001100101 01001 00111 01001 00011 00011 01011 00101 00101 00111 00011 01011 01001 00011 00111 00011 01011 01001 01011 00011 00011 10111 00101 00111 00001 00011 00111 00101 00111 00101 00011 10111 00011 00011 00011老师900111 00111 01111 00111 01111先生00001 00001 00001 00111 10111 00001 00001 00001 00001 00111 00001 10001 00001 00001 00011 00011 00001 00011 00011 00011老师1011111 00011 11111 00011 11111先生00001 00011 00011 00011 00111 00101 00001 00011 00011 00111 00011 00011 01101 00011 00111 00011 00011 01011 00011 0011100111 00011 00111 01011 00111 00101 00011 00111 01011 01111老师1111111 00001 11111 00011 11111先生00101 01001 01011 00101 00111 00001 01001 01111 00110 01001 00011 00001 00001 00101 00111 00111 00111 00011 00111 00111 00111 00111 00011 00111 00111 00011 00111 01011 00111 00111 00001 01001 00011 00101 01101 10001 00101 00101 00001 01011老师1211111 00101 11111 01001 11111先生00001 00001 00011 10101 00111 00011 00001 00011 10001 00111 00011 10001 01011 10001 00111 00001 00001 01001 00001 00011老师13先生00111 00111 00011 01011 00111 00101 00111 01011 01011 00111 00001 00001 00111 00001 00011 00001 01001 00111 00001 00011老师1411011 01111 01111 01111 11111先生00011 00001 00111 00001 00011 10001 00001 00111 00001 00011 00011 00111 00011 00111 01001 00001 00111 00011 00111 01111老师1511011 11111 11111 01111 11111先生00001 00111 00011 00011 00011 00001 00111 00011 00011 00011 00001 00101 01101 00111 00111老师1611111 11011 11111 11011 11111先生00001 00001 00111 00001 00011 10001 01001 00111 00001 00011老师1700011 11111 00011 11111 11111先生00011 00011 00111 00111 00111 00111 00011 00011 00111 00111老师1811001 10111 11111 00101 11111先生01011 00011 11001 10001 01111 00011 00111 01011 01101 01011 00011 00101 01011 00101 00011 01101 01011 00011 00111 01111 10001 00101 00001 00001 01011 00001 00011 00111 00111 01011 01001 00011 01011 00101 01011老师1911001 11111 11101 11101 11111先生00011 00101 00111 00001 00011 10001 00101 00111 00001 00011老师2011111 00101 11111 11111 10111先生00011 00000 00111 00111 01111 00011 00000 00111 00111 01111 00011 00000 00111 00111 01111 00111 00011 01001 01001 00001 00111 00011 01001 01001 00001 00111 01001 00111 00001 00001 00111 01001 00111 00001 00001 00111 01001 00111 00001 00001 01111 00011 01111 00000 00011 00111 00001 01011 00011 00011 10111 00001 01001 00011 00011附表2;lingo编程model:sets:class/1..123/:;kebiao/1..25/:;mat(class,kebiao):c,x; endsetsdata:c=0,0,1,0,1,0,0,1,1,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,1,0,1,0,0,1,1,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,1,1,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,1,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,1, 1,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1, 0,1,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,1,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,1,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,1,0,1,1,0,0,0,1,1,1,0,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,1,0,1,1,0,0,0,1,1,1,0,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,0,1,0,1,0,1,1,0,0,0,1,1,0,1,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,1,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,1,0,1,1,0,0,0,1,1,0,1,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,1,0,1,1, 0,0,0,0,1,0,0,0,0,1,0,1,1,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,1,1,1,0,0,0,0,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,1,1,0,1,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,0,1,1,1,1,0,0,0,0,1,1,0,1,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,1,0,0,1,1,1,1,1,0,0, 0,0,0,0,1,0,0,1,1,1,0,0,1,0,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,0,1,0,0,1,1,1,0,0,1,0,1,0,0,0,0,1,0,0,0,1,1, 0,1,0,0,1,0,0,0,1,1,1,1,1,1,0,0,0,0,0,1,0,0,0,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,0,1,0,0,0,0,0, 0,0,0,0,1,0,0,0,1,1,1,0,1,0,1,0,0,1,0,1,0,0,0,1,1, 0,1,0,0,1,0,0,1,0,1,0,0,0,1,1,0,0,1,0,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1, 1,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1, 0,0,0,0,1,0,0,0,1,1,1,0,0,0,1,0,0,0,1,1,0,0,0,0,1, 1,0,1,0,1,0,0,0,1,1,1,0,1,1,1,0,0,0,0,1,0,0,1,0,1, 0,0,1,0,1,0,0,0,1,1,0,0,1,1,1,0,0,0,1,1,0,1,1,0,1, 0,0,0,1,1,0,0,0,1,1,0,0,1,0,1,0,0,0,1,1,0,0,0,0,1, 0,0,1,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,1, 0,0,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,1,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,1,0,1,0,0,1,0,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,1,1,0,0,1,1,1,0,0,1,0,1,0,0,1,1,1,0,0,0,0,1, 0,0,0,1,1,0,0,1,1,1,0,0,1,0,1,0,0,1,1,1,0,0,1,0,1, 0,0,0,1,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,1,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,1,1,0,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,1,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,1,1,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,1,1,1,0,0,0,1,1,0,0,1,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,1,0,1,0,0,0,1,1,0,0,1,1,1,0,0,0,1,1,0,1,1,1,1, 0,0,1,0,1,0,0,0,0,1,0,1,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,1,1,1,1,0,0,0,1,0,0,1,0,0,1, 0,0,0,1,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,1,1,1, 0,0,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,1,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,1,0,1,1,0,0,0,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,1,1,0,1, 1,0,0,0,1,0,0,0,0,1,0,0,1,0,1,0,0,0,0,1,0,1,0,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,0,1,0,1,0,1,1,0,0,0,0,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,1,0,0,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,1,1,1,0,0,0,1,1,0,1,0,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,0,1,0,1,1,0,0,1,1,1,0,0,0,0,1,0,1,0,0,1,0,0,0,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,1,1, 1,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,1,1,1,0,0,0,1,1,0,0,1,1,1,0,1,0,0,1, 0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,0,0,1,1,1,0,1,1,1,1, 0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,0,1,0,0,1,1,1,0,0,0,1,1,0,0,0,1,1,0,0,0,1,1, 0,0,0,0,1,0,0,1,0,1,0,1,1,0,1,0,0,1,1,1,0,0,1,1,1, 0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,1,1, 1,0,0,0,1,0,1,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1,0,0,1,1,1, 0,0,0,1,1,0,0,0,1,1,0,0,0,1,1,0,0,1,1,1,0,0,1,1,1, 0,1,0,0,1,0,0,0,1,1,1,1,0,0,1,0,0,0,0,1,0,1,1,1,1, 0,0,0,0,1,0,0,1,1,1,0,1,0,1,1,0,0,1,0,1,0,1,0,1,1, 0,0,0,0,1,0,0,1,0,1,0,1,0,1,1,0,0,1,0,1,0,0,0,1,1, 0,1,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,1,0,1,0,1,1,1,1, 1,0,0,0,1,0,0,1,0,1,0,0,0,0,1,0,0,0,0,1,0,1,0,1,1, 0,0,0,0,1,0,0,0,1,1,0,0,1,1,1,0,0,1,0,1,0,1,0,1,1, 0,1,0,0,1,0,0,0,1,1,0,1,0,1,1,0,0,1,0,1,0,1,0,1,1, 0,0,0,0,1,0,0,1,0,1,0,0,1,0,1,0,0,0,0,1,0,0,0,1,1, 1,0,0,0,1,0,0,1,0,1,0,0,1,0,1,0,0,0,0,1,0,0,0,1,1,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,1,1,1,0,0,0,0,1,0,1,0,0,1,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,1,0,0,1,0,1,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,1,1,1,0,0,0,0,1,0,0,0,0,1,0,1,1,1,1,0,0,0,0,1,0,1,1,1,1,0,0,0,0,0,0,0,0,1,1,0,0,1,1,1,0,0,0,0,1,0,1,0,1,1,0,0,0,1,1,0,0,0,1,1,1,0,1,1,1,0,0,0,0,1,0,1,0,0,1,0,0,0,1,1,0,0,0,1,1;enddatamax=@sign(-@for(class(i)|i#ge#1#and##le#4):@sum(kebiao(j)|j#ge#11#an d##le#15 #or# j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#5#and##le#12):@sum(kebiao(j)|j#ge#1#an d##le#5 #or# j#ge#11#and##le#15 #or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#13#and##le#23):@sum(kebiao(j)|j#ge#21# and##le#25:x(i,j)))@for(class(i)|i#ge#24#and##le#34):@sum(kebiao(j)|j#ge#11# and##le#15 #or# j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#35#and##le#38):@sum(kebiao(j)|j#ge#11# and##le#15:x(i,j)))+@sign(-@for(class(i)|i#ge#39#and##le#49):@sum(kebiao(j)|j#ge#11# and##le#15:x(i,j)))+@sign(-@for(class(i)|i#ge#50#and##le#56):@sum(kebiao(j)|j#ge#1#a nd##le#5 #or# j#ge#11#and##le#15:x(i,j)))+@sign(-@for(class(i)|i#ge#57#and##le#65):@sum(kebiao(j)| j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#66#and##le#69):@sum(kebiao(j)|j#ge#1#a nd##le#5 #or# j#ge#11#and##le#15#or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#70#and##le#76):@sum(kebiao(j)|j#ge#1#a nd##le#5 #or# j#ge#11#and##le#15#or#j#ge#21#and##le#25:x(i,j)))@for(class(i)|i#ge#77#and##le#84):@sum(kebiao(j)|j#ge#1#a nd##le#5 #or# j#ge#11#and##le#15#or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#85#and##le#88):@sum(kebiao(j)|j#ge#1#a nd##le#5 #or# j#ge#11#and##le#15#or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#89#and##le#92):@sum(kebiao(j)|j#ge#6#a nd##le#10 #or# j#ge#16#and##le#20#or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#93#and##le#96):@sum(kebiao(j)| j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#97#and##le#99):@sum(kebiao(j)|j#ge#6#a nd##le#10 #or# j#ge#16#and##le#20#or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#100#and##le#101):@sum(kebiao(j)|j#ge#1 #and##le#5 #or# j#ge#11#and##le#15#or#j#ge#21#and##le#25:x(i,j)))@for(class(i)|i#ge#102#and##le#103):@sum(kebiao(j)|j#ge#6 #and##le#10 #or# j#ge#16#and##le#20#or#j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#104#and##le#110):@sum(kebiao(j)|j#ge#1 0#and##le#15 #or# j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#111#and##le#112):@sum(kebiao(j)|j#ge#6 #and##le#10 #or# j#ge#21#and##le#25:x(i,j)))+@sign(-@for(class(i)|i#ge#113#and##le#123):@sum(kebiao(j)|j#ge#1 #and##le#5 #or# j#ge#11#and##le#15#or#j#ge#16#and##le#20:x(i,j)));@for(mat:@bin(x));@for(class(i):@sum(kebiao(j):x(i,j))=1);@for(class(i):(kebiao(j):x(i,j)=1#And#c(i,j)=1));@for(kebiao(J):@sum(class(i):x(i,j))#LE#10);end。

2014年贵州财经大学大学生数学建模暑期培训课程计划表(初稿)

2014年贵州财经大学大学生数学建模暑期培训课程计划表(初稿)

2014年贵州财经大学大学生数学建模暑期培训课程计划表(初稿)
1、总体时间安排(院领导和系部讨论制定):19周至22周,每周星期一至星期五;
2、培训内容:主要根据近几年本科竞赛试题题型所需知识点,并结合本人的经验制定,因此具有主观性;
3、论文写作规范培训放在下学期集训期间进行;
4、培训人员主要根据本人对分院各位老师的了解情况,给出提议人选,最后由院领导定夺(希望学院将
舒亚东和常佳佳两位老师作为重点考虑对象,因为这二人曾获得过全国一等奖,具有丰富的参赛经验。

数学建模实践班课表

数学建模实践班课表

2 2 2 3 3 3 3 3
24 16 16 16 16 16 16 16
12 24 24 48 48 48 48 48
创新实践班课程 数模创新实践班 数模创新实践班 数模创新实践班 数模创新实践班 数模创新实践班 数模创新实践班 数模创新实践班
300 75 75 50 50 40 40 40
任选 考查 任选 考查 任选 考查 任选 考查 任选 考查 任选 考查 任选 考查 任选 考查
数学建模实 3 1720550 践(二)
数学模型专 4 题研究 1720570 (二)
667 668
创新实验学院
*上课起止周
2-9周 2、4、6、8、10、12 10、 2、4、6、8、10、12 10、 3、5、7、9、11、13 3、5、7、9、11、13 3、5、7、9、11、13、14、15 2、4、6、8、10、12 3、5、7、9、11、13


3 3学时/次 学时/ 3学时/次 学时/ 3学时/次 3学时/次 2学时/次 3学时/次 3学时/次
周二9-11节
综合楼借教 室
否 否 否 否 否 否 否 否
2
数学模型选 1720530 读
潘秋惠 潘秋惠 贺明峰 潘秋惠 王震 潘秋惠 潘秋惠
周二9 11节 研教楼920 周二9-11节 研教楼920 周四9 11节 研教楼920 周四9-11节 研教楼920 周二9 11节 研教楼920 周二9-11节 研教楼920 周四9 11节 研教楼920 周四9-11节 研教楼920 周一9 10节 研教楼901 周一9-10节 研教楼901 周一9 11节 研教楼901 周一9-11节 研教楼901 周三9 11节 研教楼901 周三9-11节 研教楼901

课表编排问题 数学建模

课表编排问题 数学建模

魅力数模美丽力建力建学院第六届数学建模竞赛自信坚强团结创新论文题目课表编排0-1规划模型参赛编号 2008tj0804 监制:力建学院团委数学建模协会(2010年11月)力建学院第六届数学建模竞赛承诺书我们仔细阅读了第六届建工数学建模竟赛的竞赛规则。

我们完全明白,在竞赛开始后参赛队员不能以任何方式(包括电话、电子邮件、网上咨询等)与本队以外的任何人(包括指导教师)研究、讨论与赛题有关的问题。

我们知道,抄袭别人的成果是违反竞赛规则的, 如果引用别人的成果或其他公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正文引用处和参考文献中明确列出。

我们郑重承诺,严格遵守竞赛规则,以保证竞赛的公正、公平性。

如有违反竞赛规则的行为,我们愿意承担由此引起的一切后果。

我们的参赛编号为:2008tj0804参赛队员(签名) :队员1:叶庆队员2:靳小龙队员3:胡传鹏课表编排问题第一部分摘要:本文根据制定课表时需考虑的问题,建立了冲突最少的0-1规划模型;求解得课表,并根据所得结果对教师聘用,教室的配置,来做出合理的建议。

考虑目标函数时,分析课表编排要符合的条件为:课程要求、教师课程编排尽量分散、同课程编排尽量分散、教师超出工作量尽量少。

则我们目标函数冲突最少分解为:各门课程各自不符合程度总和最少、各教师各自课程编排分散程度总和最大、各门课程编排分散程度总和最大、各教师超出工作量程度总和最少。

考虑约束条件时,分析附录中的相关数据,得到课程编排的影响因素有,时间,教室,课程等,则可以根据此来约束目标函数。

根据以上考虑因素建立系统递阶图,使目标更清晰。

建立空间向量,已知数据与空间向量一一对应。

根据课程要求与实际编排差距最少原理,建立目标函数。

加上课表编的约束条件,进行优化,用Matlab求解课表.再根据求解得课表与相关系数指标为教师聘用,教室的配置,来做出合理建议.关键词:课表编排系统递阶图空间向量第二部分一、问题重述某高校现有课程40门,编号为C01~C40;教师共有25名,编号为T01~T25;教室18间,编号为R01~R18。

排课表问题

排课表问题

一.问题重述每学期的开学初,总有许多老师对课程安排进行抱怨,还有许多老师要求调课,教务处对这一问题很是头疼。

假设你是一名刚刚毕业的大学生,被分配到了教务处,领导安排你负责排出课表,请你们根据实际情况,用数学建模的方法解决这一问题,既要让老师满意,又要让同学和学校满意。

让老师满意,就是要让每位老师在一周内前往上课的乘车次数内尽可能少,同时还要使每位老师在逗留的时间尽可能少,比如安排尽量少出现像同一天同一位老师上1-2节,7-8节;让同学们满意,可从以下几方面考虑,比如,同一专业同一门课程,至少应间隔一天上一次,另外对学生感到比较难学的课程尽量安排在最好的时段;让学校满意,就是要节约支出,每周车次尽可能的少。

请你们从实际情况出发(自己收集相关数据),用数学建模的方法解决以下问题:1)建立排课表的数学模型,并研制出排课表的软件包;2)利用你的模型及软件对本学期校区的课表进行重排,并与现有的课表进行比较;3)给出评价指标评价你的模型,特别要指出你的模型的优点与不足之处;4)对学校教务处排课表问题给出你的建议。

二.基本假设1、课程对于教室的要求都一样,不存在特定课程对应特定教室的现象;2、老师与工作人员的满意度与到校区的次数有关,与课程安排的教室位置无关;3、教室足够多,不存在教室不够用的情况;4、周一至周五每天上四节课;5、对于任一专业,某门课程一周内的授课时间数(节数)是固定的,即不考虑单双周情况;6、教室足够大,相同专业在一起上课,共用一个课表;7、每辆校车最多乘坐50人;8、校车每天开四次,即每次上完课都有校车发车;9、校车在规定时间到达乘车点后,所有人员应在该点上车的乘客均上车,校车为满员状态,不考虑校车单独去接个别人员的情况。

三.符号约定四.问题分析1、让老师满意让老师满意,就是要让每位老师在一周内前往上课的乘车次数内尽可能少,同时还要使每位老师在教学时间尽可能的集中,比如安排尽量少出现同一天同一位老师上1-2节,7-8节。

课表安排

课表安排

2012广技师数学建模竞赛编号专用页赛区评阅编号(由赛区组委会评阅前进行编号):全国统一编号(由赛区组委会送交全国前编号):全国评阅编号(由全国组委会评阅前进行编号):课表的安排摘要本模型的主要特点是:通过我们的逻辑推理,使课表逐渐的清晰。

在建模时我们用到的数学知识主要有数值推理。

求解思路主要是根据课程的对教室座位最大要求、对教室类别要求、对时间要求、课程所需上的课时数以及教师对课室类别的要求、对时间的要求、对周最大课时数、能胜任的课程类别等它们相互之间的重要性进行排课。

首先我们将教师能胜任的课程分为第一步。

将课程所需的教室类别及教师所要求的教师类别分为第二步。

将课程对时间的要求及教师对时间的要求分为第三步。

综合第一第二类将教室类别、课程编号、教师编号进行综合,分为第四步。

以此类推,将要求的重要性进行一步一步的往下推直到课表出现。

一、问题重述现有课程40门,编号为C01~C40;教师共有25名,编号为T01~T25;教室18间,编号为R01~R18。

具体属性及要求见表1,表2,表3:课表编排规则:每周以5天为单位进行编排;每天最多只能编排8节课(上午4节,下午4节),特殊情况下可以编排10节课(晚上2节),每门课程以2节课为单位进行编排,同类课程尽可能不安排在同一时间。

你所要解决的问题:1.请你结合实际情况建立数学模型,通过编程计算,给出较为合理的课表编排方案,分析你所给出的方案的合理性。

2.如果不准晚上排课,排课结果是否有所变化,如何变化?3.对教师聘用,教室配置给出合理化建议。

二、问题分析由于教师周最大课时数的总数少于课程课时的总数所以考虑让某些教师上多几个课时(满足一个单位课时的情况下)。

或者聘请一些老师上那些没安排到教师上的课。

(待完成)三、基本假设a)假设有些课程没教师上的情况下,能胜任此课程的教师可以加一些课时,并且学校给予相应的补贴。

b)假设教师意愿的上课时间可以调配。

c)假设教师要求要在普通课室上课可以调配到多媒体课室上课。

数学建模所需课程

数学建模所需课程

重要课程:1.概率论与数理统计(做概率问题)高等数学(是数学专业的更好)数据结构(编程时会用到里面的思想)数学规划(做优化问题,经常用的)随机过程(做随机问题,比如产生随机数,马尔可夫过程……)图论知识重要软件2.Matlab(超强的数学软件) Lingo&lindo优化软件还有统计软件(最基本的Excel)spss、sas都可以 VC++重要算法3.神经网络算法模拟退火算法蒙特卡罗算法遗传算法图论算法……一般大二开学开始准备竞赛,九月中旬正式比赛,如果想参加,就要做好付出辛苦的准备,很考验人的耐性。

如果自己的计算机不强,找队员时可以找计算机很强的组队,三人一定要各怀绝技。

有人做算法(实际中的建模结果都是计算机才能算出来),有人会数学推导(上升到理论性的高度),有人写得漂亮得论文……早准备最好,但注意不要求全责备,把自己得正常课都耽误了,因为数模用到的知识太多,需要我们得发散思维,所以知识面要广博,但更不要博而不精。

各个学校情况不一样,有的是学校组织集体培训,有的不是,这就要自己关注了平时嘛,我想至少要懂一些算法,然后,玩转Matlab软件,这个2.1G 的软件,功能相当庞大,几乎可以替代所有其他软件,里面也可以编程呦!数学模型的分类:1、按研究方法和对象的数学特征分:初等模型、几何模型、优化模型、微分方程模型、图论模型、逻辑模型、稳定性模型、统计模型等。

2、按研究对象的实际领域(或所属学科)分:人口模型、交通模型、环境模型、生态模型、生理模型、城镇规划模型、水资源模型、污染模型、经济模型、社会模型等。

数学建模需要丰富的数学知识,涉及到高等数学,离散数学,线性代数,概率统计,复变函数等等基本的数学知识同时,还要有广泛的兴趣,较强的逻辑思维能力,以及语言表达能力等等、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、不可能投入太多精力的同学可参考:1 概率论和数理统计不需要你学的很深,懂原理即可,重要的是你学习的能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

请你来排课表摘要每学期的开学初,学校都会根据时间、课程、课时要求、教室、班级人数、教师等因素对各学院各专业的课表进行重排。

我们首先对题目的要求进行分析,将题目归类为优化模型问题,主要运用运筹学的知识来建立模型。

确定了分别将教师、课程、教室三个因素优化组合进行讨论,并分配到课表上的不同时间段上最终形成满足要求的课表的解决方案。

首先,我们确定了各优化因素之间的约束关系,然后根据各因素间约束关系的要求不同,编制出各因素间的效用矩阵。

其中我们采用了多重约束条件,将各约束条件分为硬约束(强制要求)和软约束(用偏好系数表示);其次,我们为课表上的每一个时间段随机分配课程;再次,我们用逐级优化和0-1规划的方法分别将教师、教室分配到课表上的不同时间段上,按时间+课程+教师+教室的组合,形成了一份尽可能多地满足课程、教师、教室要求的课表。

最终根据题目给的数据,通过MATLAB软件编程进行模型验证,求出了所需课表,且在方案合理性分析中用计算机模拟的方法分析了偏好系数的变化、教室的种类对排课结果的影响。

文尾我们给出了教师、教室的配置建议。

关键词:排课模型随机分配优化目标矩阵多重约束条件0-1规划目录1 问题重述与分析 (4)1.1问题的重述 (4)1.2问题的分析 (4)2 问题的假设 (4)3 符号说明 (5)4 模型的建立与求解 (5)4.1 模型的准备 (5)4.1.1对教师、课程、上课时间联系的刻画 (5)4.1.2 对时间段S i进行编号 ......... . (6)4.1.3 对课程的处理 (7)4.2 模型的建立 (7)4.2.1 随机分配课程到各个时间段 (7)4.2.2 给每一个时间段安排教师 (7)4.2.3为每一个时间段安排教室 (9)4.2.4 安排课程表 (11)5 模型的求解 (11)5.1编号并随机分配课程 (11)5.2分配教师 (11)5.3分配教室 (12)5.4编排课表 (12)6 模型的合理性分析 (12)7 模型的评价 (12)7.1 模型的优点 (12)7.2 模型的缺点 (12)8 参考文献 (12)附录 (13)1、问题重述与分析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、符号说明主要符号 符号意义4321A A A A 、、、 效用矩阵i C 原课程编号 i K 新的周课时数编号 j T 教师编号k R 教室编号偏好系数(表示教师对教室、教师对上课时间的偏好系数)i S 课程表上时间段的编号j ST j T 教师的要求课时数i SC i C 课程的要求课时数S={u j i j R T Y ,,} 课程表上某一时间段的课程-教师-教室组合4、模型的建立与求解 4.1模型的准备(1)对教师、课程、上课时间联系的刻画根据分析,关联关系有课程—上课时间、课程—教室、教师—课程、教师—上课时间、教师—教室一共五个,该模型中存在的联系可由下图给出,其中实线表示“硬约束”,虚线表示“软约束”。

根据关联关系,由此可以得到刻画每个关系的效果指标矩阵,依次建立A1,A2,A3,A4 四个效用矩阵。

其中,为强制约束的有A2、A4,偏好约束有A1、A3,矩阵表示如下图所示。

1A 矩阵:()ij a A 1 刻画i 教师上j 教室的偏好效果指标,其中:10≤≤ij a (当ij a =0时表示i 教师不希望在j 教室上课,ij a =1时表示i 教师希望在j 教室上课,10 ij a 时表示i 教师在j 教室上课的偏好程度适中,赋值越大说明偏好越大)2A 矩阵:()ij a A 2 刻画i 教师上j 课程时的效果指标,其中:ij a =0,1(当ij a =0时表示i教师不能上j 课程,ij a =1时表示i 教师能够上j 课程)3A 矩阵:()ij a A 3 刻画i 教师上j 时间段课时的偏好效果指标,其中:10≤≤ij a (当ij a =0时表示i 教师不希望在j 时间段上课,ij a =1时表示i 教师希望在j 时间段上课,10 ij a 时表示i 教师在j 时间段上课的偏好程度适中,赋值越大说明偏好越大)4A 矩阵:()ij a A 4 刻画i 课程在j 教室上时的效果指标,其中:ij a =0,1(当ij a =0时表示i 课程不能在j 教室上,ij a =1时表示i 课程能够在j 教室上) (2)对时间段S i 进行编号由于每门课程以2节课为单位进行编排,因此可以用i S 表示各段时间,如下图所示:(3)对课程的处理由于有些课程的课时数为奇数,因此对这些课程进行适当的处理及调整,具体做法如下:当某一课程的课时数为奇数时,取大于它的最小偶数,若该课程的课时数为偶数时则不改变其值。

对所有课程的课时数进行调整后所得到的新的课时数为i K (i=1,2,3…….40,即有40门课程),原课程的编号为i C (i=1,2,3…….40,即原有的40门课程),ij Y (i=1,2,3…….40,为原有的课程编号,j=1,2,3……21∑iK),现目标就是对集合{ij Y }进行排课。

4.2 模型的建立(1)随机分配课程到各个时间段由于课程的上课时间(上午,下午)要求为强制性约束,利用excel 表格的筛选功能分别选出上、下午的课程集合B上午={ij Y }, B下午={ij Y }。

我们随机给B上午的每一个元素抽取一个上午的时间段,B 下午中的每一个元素抽取一个下午的时间段,组成时间段—课程{i S i j Y }组合。

此时,=i S ij Y (某一时间段对应的某一课程)。

如此,就已经完成随机分配,使得每个时间段编号都有一个课程赋值。

(2) 给每一个时间段安排教师A.结合效用矩阵2A 的i S根据教师j T 对课程Cj 的效用矩阵2A ,对i S 进行第二次赋值。

当第i 个时间段上的初值是i j Y ,若ij a =1,则i S =1,否则,i S =0。

B. 结合效用矩阵3A 的i S根据教师j T 对上课时间的偏好3A 矩阵,对i S 进行第三次赋值,i S =i S +ij a 。

C. 结合效用矩阵 1A 的 i S根据教师j T 对i S 时间段上的课程所要求的教室的偏好1A 矩阵,对i S 进行第四次赋值,i S =i S +ij a 。

最终得到ji Sjis s s s s s s s s j j i i (2)12222111211由此,我们可以得到下表教师j T 对时间段i S 的效用指标表:1s 2s … … … … i s1T 11s 12s … … … … i s 1 2T21s 22s … … … … i s 2… … … … … … … … … … … … … … … …j T 1j s 2j s … … … … ji s表2D. 利用0-1规划将教师j T 分配到不同的时间段上由于目标是将j T 教师分配到不同的时间段上,约束条件是分配结果必须使得教师的课时数要求与课程的周课时数要求同时满足。

用ji X 表示j T 教师在时间段i S 的上课情况(其中,ji X =1说明j T 教师能在时间段i S 上课,ji X =0说明j T 教师不能在时间段i S 上课),因此,问题转化为求以下有约束条件的0-1 规划问题:目标函数:max z=∑∑==⨯ni nj ji jiS x11约束条件:∑=nj jix1=i SC 21∑=ni jix1=j ST 21ij x =0,1由上面问题可求出解为:=ji Xjix x x x x x x x x j j ii (2)12222111211 将教师安排到最优的时间段,即此时所得的课表即为:{j i j T Y ,} (当ji x =1时,将jT与i j Y 排在一起),若无最优解,则重回模型建立第一步,重新随机分配课程。

(3)给每一个时间段安排教室A.结合效用矩阵4A 的i S根据教师j T 对课程j c 的效用矩阵2A ,对i S 进行第一次赋值。

当第i 个时间段上的初值是i j Y ,若ij a =1,则i S =1,否则,i S =0。

B. 结合效用矩阵1A 的i S根据教师j T 对i 教室的偏好程度1A 矩阵,对i S 进行第二次赋值,i S =i S +ij a 。

最终得到ji Sjis s s s s s s s s j j i i (2)12222111211由此,我们可以得到下表教室k R 对时间段i S 的效用指标表:1s 2s … … … … i sk R 11s 12s … … … … i s 12R21s 22s … … … … i s 2… … … … … … … … … … … … … … … … k R 1k s 2k s … … … … ki s表3C. 利用0-1规划将教室k R 分配到不同的时间段上目标是将教室k R 分配到不同的时间段上,约束条件是分配结果必须满足同一间教室在四张课表的同一时间段不重复。

相关文档
最新文档