建模的排课问题
教务处排课系统建模

教务处排课系统建模摘要:为解决教务处排课系统选课问题,通过对问题的分析,设计解决问题的主要数据结构,再设计出算法程序,从时间、教师、周开课次数、冲突检测及解决等方面处理排课问题;关键词:排课系统,数据结构,算法,冲突检测,建模;每年开学时需要选课,有时排课系统会出现各种各样的问题,一部分是因为排课系统本身的算法问题;设计一个合理算法对于学生选课方便至关重要,以下是一个排课系统的介绍;1.排课系统的基本要求:1.必修课尽可能的排在上午;例如,数学、英语、专业课等安排在上午,而体育、计算机、实验等安排在下午;2.一个教师如果上午连续上四节课,尽可能的将四节课都安排在一个教室;3.一周上多次的课程尽可能间隔至少一天,比如高数,如果一周上六节课,则尽可能安排周1、3、5上午上课;因此同一节的课程一周最多上六节课,且只能在周一、周三、周五;4.同一专业的课程不能有冲突;2. 问题的描述:根据排课的优先级,应该先将全校各个专业本学期的专业课安排好,再考虑教师的教学问题,即如果某一个教师某天上午或下午连续教四节课,确保后一节课的教室号与前一节相同;判断同一课程一周上几次,一次则可以在五天中无课程的时间中随机抽取一天安排课程,两次则可以分为周一和周三、周二和周四、周三和周五三周时间来排课,三次则只能是周一、周三、周五一种排课时间;3.基本算法的描述:设要安排的课程为{ C1 , C2 , ., Cn} ,课程总数为n , 而各门课程每周安排次数为{ N1 , N2 , ., Nn} ;每周教学日共5 天,即星期一~至星期五;每个教学日最多安排4 次课程教学,即1 ~ 2 节、3 ~ 4 节、5 ~ 6 节和7 ~ 8 节以下分别称第1 、2 、3 、4 时间段 . 在这种假设下,显然每周的教学总时间段数为5 ×4 = 20 ,并存在以下约束关系:n ≤20 (1)N = 6n, i =1, Ni ≤20 (2)自动排课问题是:设计适当的数据结构和算法, 以确定{ C1 , C2 , ……, Cn } 中每个课程的教学应占据的时间段,并且保证任何一个时间段仅由一门课程占据.4. 主要数据结构对于每一门课程,分配2 个字节的“时间段分配字”无符号整数 :{ T1 , T2 , ., Tn} . 其中任何一个时间段分配字假设为Ti 都具有如下格式:Ti 的数据类型C为:unsigned int ; Ti 的最高位是该课程目前是否是有效的标志,0 表示有效,1 表示无效如停课等 ;其它各位称为课程分配位, 每个课程分配位占连续的 3 个位bit ,表示某教学日星期一~星期五安排该课程的时间段的值,0 表示当日未安排,1 ~ 4 表示所安排的相应的时间段超过 4 的值无效 .在这种设计下, 有效的时间段分配字的值应小于32 768 十六进制8000 , 而大于等于32 768 的时间段分配字对应于那些当前无效的课程既使课程分配位已设置好也如此 , 因此很容易实现停课/ 开课处理.5.排课算法在上述假设下,自动排课算法的目标就是确定{ C1 , C2 , ., Cn} 所对应的{ T1 , T2 , ., Tn} .从安排的可能性上看,共有20 / 20 - N 种排法;如果有4 门课,每门课一周上2 次,则N = 8 ,这8 次课可能的安排方法就会有20 / 20 - 8 = 5 079 110 400 ,即50 多亿种. 如果毫无原则地在其中选择一种方案,将会耗费巨大量的时间. 所以排课的前提是必须有一个确定的排课原则;采用轮转分配法作为排课原则:从星期一第 1 时间段开始按{ C1 , C2 , ., Cn} 中所列顺序安排完各门课程之后每门课安排1 次 ,再按该顺序继续向后面的时间段进行安排,直到所有课程的开课次数符合{ N1 , N2 , ., Nn} 中给定的值为止. 在算法描述中将用{ C1 , C2 , ., C n } 表示{ C1 , C2 , ., Cn} , 对{ N1 , N2 , ., Nn}和{ T1 , T2 , ., Tn} 也采用同样的表示法.算法1 排课算法输入{ C1 , C2 , ., Cn} 、{ N1 , N2 , ., Nn} .输出{ T1 , T2 , ., Tn} .①初始化:星期值week = 1时间段值segment = 1{ T 1 , T 2 , ., T n } 中各时间段分配字清零②新一轮扫描课程:置继续处理标志flag = 0对课程索引值c-index = 1 ,2 , ., n 进行以下操作:如果Nc-index > 0 ,则做以下操作:把segment 的值写入Tc-index 的第week - 1 3 3~week 3 3 - 1 位中Nc-index 的值减1如果Nc-index > 0 ,则置flag = 1如果week = 5 并且segment = 4则:置flag = 1 并转③否则:如果segment = 4则:置segment = 1 且week 增1否则:segment 增1检测是否已全部安排完毕:如果flag = 1则:转②否则:转③③检测是否成功:如果flag = 1则:开课次数过多否则:课程安排成功④算法结束6.冲突检测算法有时在自动排课完毕后,需要人工调整某些课程的安排时间,如把第i 门课程在人工干预下改成星期数为week 、时间段为segment 的位置,则根据上述数据结构需做如下运算:T i = T i &~ 7 << week - 1 3 + segment << week - 13 ,其中&、~和n 分别为按位与、按位取反和按位左移运算符下同 .问题是如何判断是否已有其它课程安排在同一个时间段上. 设人工调整的时间段分配字为T1 ,则该问题描述为:判断时间段分配字T 1 与{ T2 , T 3 , ., T n } 中的某个分配字是否存在相同课程分配位上的相等的非零时间段值, 或者说{ T 2 , T3 , .,T n } 中是否存在与T 1 冲突的时间段分配字. 为简化起见,在以下算法描述中假设所有时间段分配字的最高位为0.算法2 冲突检测算法输入T1 和{ T2 , ., Tn} .输出与T1 冲突的{ T2 , ., Tn} 中的时间段分配字.①对c-index = 2 ,3 , ., n 做以下操作:初始化屏蔽字mask = 7对星期值week = 1 ,2 ,3 ,4 ,5 做以下操作:如果T1 & mask 等于Tc-index & mask ,而且二者不等于0则: T 1 与Tc-index 相冲突,转①mask 左移3 位或乘8②算法结束7.总结:通过以上算法及数据结构,将其编写为程序,可以对教务处的排课系统进行数据处理,从而可以解决出现的一部分问题;。
最新 开放教育排课问题约束分析与数学建模-精品

开放教育排课问题约束分析与数学建模1 引言(Introduction)随着体制改革的不断深化,高校信息化建设成为提升教育教学水平、提高管理效率、保证教学质量、全面增强学校综合竞争力的关键因素。
“十三五”规划发展期间,同属于国家高等教育序列的开放大学正在逐步进行结构调整和教学模式的转型与优化。
培养目标、专业设置、课程设置等方面的重新定位,教育教学资源的优化配置,为开放教育教学管理提出了更高的要求。
随着教学模式的改革、学生人数的日益扩大、开设专业的不断创新、开设课程的不断增多,教师教室资源的相对减少等因素,严重制约了开放教育的发展。
尤其对于排课工作,传统的手工排课由于上述制约因素无法编制有效地课表,一方面造成人力和物力的极大浪费,工作效率不高,保密性较差,文件数据维护、更新难度大,教学资源没有发到最优化配置。
另一方面,手工编制的课表会因为人为的错误而扰乱正常的教学秩序。
因此,有效解决具有开放教育特征的排课问题[1],编制科学的课程表是提高开放教育教学管理水平的关键。
2 问题描述(Problem description)实际上排课管理工作可以归结为基于时空组合的教学资源分配问题[2,3]。
排课问题是一个复杂难解的非线性、多约束、模糊多目标优化的问题,且已经被证明是一种NP完全问题[4]。
高校作为一个教学实施的整体,编排课程表需要考虑全校性的、多方面的因素,包括教师、教室、课程、班级、时间等对象,也就是说在满足一系列的约束性条件的前提下,使得学校教学资源能够得到最优化配置。
开放教育是以学生为中心,运用现代通信技术与各种多媒体进行远程教育和面授相结合,并实行学分制的教育类型。
学生对课程的选择、媒体的适用具有一定的自主性。
在学习方式、学习进度、学习地点、学习时间等方面,可由学生根据自身的情况自主决定;学生基本来自在职人群,学生修读完本专业规定的毕业学分,颁发国家承认的本、专科学历证书。
基于这些特征,开放教育的课程均安排在周一至周五的晚上,周末的白天与晚上。
matlab 数学建模 排课

TOMLAB课表编排问题我们老师让我们做一个课表编排问题,题目见/bbs/viewthread.php?tid=1799我试图用基于MATLAB的一个软件TOMLAB做,因为他有一个例子:见/examples/tomsym_collegetimetable.html由于我对MATLAB、TOMLAB应用不熟练,我试图先写一个程序尽可能和例子相似。
我将问题简化,先安排第一类课程,有三个老师,5门课。
并且我不考虑教室问题。
由于每堂课是以两个课时为一个单位,五门课每周分别上2 2 322堂课,每个老师教任意的课,他们的每周最大课时数分别是2 2 3,每天可以上4节课(晚上不排课)(以上的“一节课”均指两小节课)优化目标:1:最好在每天的第2、3节安排课程,第一节、第四节尽可能不安排课2:尽可能满足老师们的最大课时数,使他们加班尽可能少。
程序(TOMLAB实现)teacher=[1 2 3];lesson=[1 2 3 4 5];lesson_times=[2 2 3 2 2];slots=4*5;t=tomArrayIdx('t',1:3);l=tomArrayIdx('l',1:length(lesson));s=tomArrayIdx('s',1:20);teach=tomArray('teach',[3,5,20]); %create a array of 3*5*20(teacher*lesson*slots)bnds1={0<=teach<=1}; % All variables are binarybnds2={sum(sum(teach(t,l,s),s),t)==lesson_times};%所有的课程必须全部安排进课表bnds3={sum(sum(teach(t,l,s),t),l)<=1};% Teacher constraint, one teacher per slotbnds={bnds1,bnds2,bnds3};not_so_good_slots=tomArrayIdx('l',[1,4,5,8,9,12,13,16,17,20]); objective1=sum(vec(teach(l,t,not_so_good_slots)));%the goal is to minimize teaching courses in these no so good slotsmax_work=[2 2 3];objective2=0;for i=1:3overwork=sum(sum(teach(i,l,s),s),l)-max_work(i)if overwork>0objective2=objective2+10*abs(overwork);endend但是,当我输入objective1=sum(vec(teach(l,t,not_so_good_slots)));后,提示:Error in ==> tomArray.subsref at 78checkIndexes(o);我输入for i=1:3overwork=sum(sum(teach(i,l,s),s),l)-max_work(i)if overwork>0objective2=objective2+10*abs(overwork);endend后提示Function 'gt' is not defined for values of class 'tomArray'.Error in ==> gt at 18[varargout{1:nargout}] = builtin('gt', varargin{:});。
排课问题的数学模型研究

排课问题的数学模型研究
排课问题是在排定学期课程表的过程中面临的一个重要问题,通过分析特定的条件,寻找出最优解来解决该问题是解决之道。
排课问题可视为一种约束优化问题,是应用数学模型来解决的一类复杂问题,其运用约束条件,求解一组变量使得整体成本最小,具有很强的实际意义。
排课问题的数学模型可以根据实际情况和应用需求来制定,一般情况下,可以采用贪心算法、费用流算法、回溯算法、动态规划算法等多种算法来解决。
贪心算法是一种简单但有效的算法,原则就是每一步取当前最优解。
其优点是算法简单,易于实现,缺点是无法保证全局最优解。
费用流算法是一种有效的排课算法,它采用图论中的费用流模型,追求最大流量决策,可以找出满足资源约束条件的最优解,即满足每一节课最少需要的资源。
回溯算法又称为试探法,按照深度优先搜索,遍历全部节点,枚举所有可能的情况,最终找到可行的解决方案。
动态规划算法是一种优化算法,它的基本思想是,对于每个时期的课程安排,给出最优解,在此基础上,不断更新,最终求出最优解。
排课问题是一个复杂而又实用性很强的问题,受到越来越多人的重视。
数学模型是解决该问题的重要手段,历来受到各大学者的关注。
通过贪心算法、费用流算法、回溯算法、动态规划算法等,可以找到满足条件的最优解。
只要模型,算法和数据得到合理的设计与使用,
排课问题的解决方案有可能实现。
总而言之,数学模型是解决排课问题的重要手段。
模型的设计应该以实际情况为准,考虑各种约束条件,寻求出真正能够满足需求的优化解决方案。
只有这样,才能高效、准确地解决排课问题,实现客观有效地排课。
排课问题的数学模型研究

排课问题的数学模型研究排课问题是指如何有效地将教室、教师和学生等资源进行有效的安排,使得课程的安排能够满足教学需求,进而提高教学质量,所以排课问题属于一类组合优化问题,它经常用于求解学校中教学计划的安排。
随着计算能力的不断提升和发展,排课问题也在得到广泛的应用,并且其复杂的特征也意味着它的解决非常困难。
在许多排课问题的研究中,数学模型是有效的工具,可以帮助解决排课问题,并提供有效的模型解决思路。
具体而言,数学模型是一种量化方法,将排课问题表达为一个数学模型,使其问题能够明确表达,从而可以帮助解决排课问题。
首先,引入数学模型可以减少排课问题复杂性,并且使求解更加高效。
将排课问题表示为数学模型后,面临的主要问题就是模型的优化,以获得最佳的排课方案。
即以最优的方式将教室、教师和学生等资源安排起来,以满足学校课程的安排需求,从而提高教学质量。
其次,在求解排课问题时,数学模型可以提供改进算法的方法和优化方法。
通过研究优化算法,可以探索如何有效的求解排课问题,并探究应如何使用优化算法解决排课问题。
此外,研究优化问题的方法也可以指导实践,从而可以为求解排课问题提供更加有效的解决方案。
最后,将排课问题表示为数学模型后,可以运用计算机计算,求解排课问题,提供更优质的排课方案。
这是因为,模型可以将排课问题表示为精确的数字形式,可以快速计算出最优的排课方案,提高效率。
总之,排课问题属于一类深度优化问题,在求解排课问题时,数学模型可以提供有效的优化方法。
通过将排课问题表示为数学模型,可以有效的缩小问题的规模,从而求解排课问题,提供最佳的排课方案,满足学校课程的安排需求,有效改善教学质量,从而达到优化教学效果的目的。
数学建模课表安排

文理学院新校区课表安排问题编号:J4004摘要:每学期的开学初,总有许多老师对新校区的课程安排很有意见,本文选取文理学院某系某专业的师生情况、课程、教室间数为研究对象,以课程与上课时间之间的关系矩阵为目标矩阵,通过用各影响矩阵优化目标矩阵的方法,对新校区各系各专业的课表进行了重排。
在具体模型建立过程中采用了0-1矩阵法,矩阵的乘法等数学方法,建立优化类数学模型来求解有效矩阵,根据有效矩阵初排课表,结合多方面因素建立修正矩阵,对初排课表逐层修改,得出最优排课表,最后通过lingo软件加以实现。
运用我们建立的数学模型,对文理学院数学系08级信息与计算科学专业的课表进行重排,将所得新课表与现有的课表进行比较,显然新排的课表更加合理化、人性化。
根据新课表中每节课对应的相关因素(课程名称、教室、老师、班级)进行分析整合,可衍生出新的安排表(如通过对不同时间段上课老师人数的研究安排校车的接送)。
我们以学校、教师和学生对所排课表满意度作为衡量标准,以文理学院数学系08级信息与计算科学专业的课表为例,可得学校、教师和学生对我们所排课表的满意度主因素分别为校车接送次数、在新区逗留时间、专业课排在早上,计算得评价指标分别为 0.88、1、1,可见对本模型使三方的满意度基本均衡且都超过80%,即做到了三者兼顾的满意最大化。
最后,通过我们建立的模型,我们给教务处排课表问题给处了一些合理的、可行性的建议。
关键字:排课问题 0-1矩阵矩阵的乘法优化目标矩阵满意度一. 问题重述每学期的开学初,总有许多老师对对新校区的课程安排进行抱怨,还有许多老师要求调课,教务处对这一问题很是头疼。
根据文理学院院的实际情况,用数学建模的方法解决这一问题,既要让老师满意,又要让同学和学校满意。
让老师满意,就是要让每位老师在一周前往新校区上课的乘车次数尽可能少,同时还要使每位老师在新校区逗留的时间尽可能少,比如安排尽量少出现像同一天同一位老师上1-2节,7-8节;让同学们满意,可从以下几方面考虑,比如,同一班级同一门课程,至少应隔一天上一次,另外对学生感到比较难学的课程尽量安排在最好的时段;同时为避免下课楼道拥挤,对于上午有四节课的班级,在教室功能允许的情况下,应尽量避免更换教室;让学校满意,就是要节约支出,每周派往新校区的车次尽可能的少。
数学建模选课问题

1.问题提出对于问题一,我们必须考虑在学校和院系的规定的条件下对同学选课最少进行求解。
所以我们先从已知条件入手,把他们转化为约束条件,然后建立0-1整数优化模型,利用LINGO软件对其进行求解。
对于问题二,我们同样考虑在选修学分最少的情况下对同学选课最多进行求解。
但两者不能同时都满足,所以我们必须把这个双优化模型转化为单优化模型,然后再利用LINGO对其进行求解。
问题三则是考虑了选修课程限选人数的问题,所以必须针对不同的学生类型设计相应的选择方案。
同时考虑到选修的课程能否如愿选上,需要在已只知不同课程限选人数的情况下,利用对不同目标加权的方法对问题进行优化。
2符号说明与模型假设2.1符号说明表2:符号说明表注:其它符号在文中另加说明2.2模型假设(1):各个同学在选修课程时不受其他因素影响,只受学分和选修课程门数影响。
(2):学生选课是独立的,相互之间不影响。
(3):选课的学生有两种类型,一类是对这门课真正感兴趣的,另一类是“混学分”的,且这两类各占选课学生人数的一半。
(4):学生的信息是不公开的。
(5):问题三中没有提到的课程表示人数没有限制。
3模型建立和求解3.1问题一的解决3.1.1模型的建立用xi表示选修表中按照编号顺序的18门课程的选择(i=1,2,…18),其中xi 取值为1或者0。
其定义如下:采用目标规划的方法,考虑到学校的各种约束条件,将约束条件用数学表达式表示为一下几点:1:要使选修课程的总学分数不少于18,既有下面的不等式:2:任选课程的比例不能少于所修总学分的1/6,也不能超过1/3:3:课程号为5、6、7、8的课程必须至少选一门:4:选修某些课程必须同时选修其他课程,可以表示为:在达到以上要求的情况下,只考虑选修课程最少的情况,相应的目标函数为:在Lingo[1]中可以对该目标函数进行优化,其中约束条件为①②③④,由于上述条件中有大于关系,可以在两边乘以—1将约束条件全部转换成小于关系,这样便于在Lingo中求解.最后本文建立了如下的优化模型3.1.2模型的求解利用LINGO软件求解可以得到3.1.3问题一的结果最后本文得到了在学校和院系的要求下选课最少是选五门,选择方案是选择课程1,2,6,10,14。
数学建模请你来排课表

数学建模请你来排课表请你来排课表摘要每学期的开学初,学校都会根据时间、课程、课时要求、教室、班级人数、教师等因素对各学院各专业的课表进行重排。
我们首先对题目的要求进行分析,将题目归类为优化模型问题,主要运用运筹学的知识来建立模型。
确定了分别将教师、课程、教室三个因素优化组合进行讨论,并分配到课表上的不同时间段上最终形成满足要求的课表的解决方案。
首先,我们确定了各优化因素之间的约束关系,然后根据各因素间约束关系的要求不同,编制出各因素间的效用矩阵。
其中我们采用了多重约束条件,将各约束条件分为硬约束(强制要求)和软约束(用偏好系数表示);其次,我们为课表上的每一个时间段随机分配课程;再次,我们用逐级优化和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)对课程的处理由于有些课程的课时数为奇数,因此对这些课程进行适当的处理及调整,具体做法如下: 当某一课程的课时数为奇数时,取大于它的最小偶数,若该课程的课时数为偶数时则不改变其值。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
3.1 模型的假设 (1)对问题一的假设: 1、假设安排监考的每个监考教师、巡考教师在考试的时候可以正常监考、巡 考; 2、假设每个院系都有足够多的教室,可以将每个院系的考试课安排在同一栋 楼; (2)对问题二的假设: 1、假设考试时间如我们调查的结果一致,统一为 110 分钟; 2、假设安排考试时间内均可以正常考试,并无各类突发事件发生; (3)对问题三的假设: 1、假设考试安排的教室在考试期间可以正常使用,不影响正常考试; 2、假设安排考试的教室凳子桌子无严重损坏、排列整齐,均可以正常使用; 3、考试期间每个考生都可以正常考试,无缺考便于计算考室的利用率; 4、为更充分地利用考试教室,假设有混合考的情况发生; 5、考试安排中,涉及重修的同学与其所选直系班级一同参加考试;
针对问题二:考虑到方便学生合理的安排和分配复习时间,我们采用分段考试的方 法,避免每个学生因相邻两门考试时间间隔较短而出现一系列的问题,由于每科考 试时间均为 110 分钟。考虑到有些考试课程中有重修的同学,为缓解他们的压力, 给予他们充分的考试复习时间,避免因考试时间冲突而给考生带来的不便。我们首 先安排 14 级的学生进行考试,有重修课程的同学在上午考完自己本专业的课程后, 可有足够时间复习参加下午的课程考试,而 15 级学生中有重修课程的学生可在上
2
午和 16 级的学生一同考试,之后再参与下午的考试。所以我们规定准确的三个考 试时间段 :
8:30—10.20 14 级所有考生 14:00—15:50 16 级所有考生 16:10—18:00 15 级所有考生
针对问题三:考察了教室的实际大小,我们将教室做了较为系统的划分,教室分为 三类;大教室、中教室、小教室。大教室可容纳 60 名考生,中教室可容纳 45 名考 生,小教室可容纳 30 名考生。根据题目要求大教室用 4 名监考老师、中教室用 3 名教师监考、小教室用 2 名监考老师监考。为了将考试教室得到充分的利用,考场 中会有混合考场的出现,在安排考场时,优先考虑大教室、其次为中教室、小教室。 运用最优化模型得到最优解,使得教室利用率达到最高。
学(专升本)1 班
数学软件与实验
2015 数学与应用数学 1、2015 数学与应用数学 2、2015 信息与计算科 学1
3 114
教育教学典型案例分 2014 数学与应用数学 1、2014 数学与应用数学 2、 2016 数学与应用数
3 51
析
学(专升本)1 班、
数学分析选讲
2014 数学与应用数学 1、 2014 数学与应用数学 2、 2016 数学与应用 5 34
电子技术 1 班、2016 物理学 1 班
2015 应用电子技术(对口)1、 2016 市场营销 1 班、2015 化学工程与工
概率统计 BZ
艺 1、2015 化学工程与工艺 2、2015 制药工程 1、2015 制药工程 2、2015 7 298
新能源材料与器件 1
教师技能训练
2014 数学与应用数学 1、2014 数学与应用数学 2、2016 数学与应用数 3 84
学与应用数学 2、2016 数学与应用数学(专升本)1
2015 建筑设计技术 1、2016 应用电子技术 1、2016 应用电子技术(对
高等数学(专下)2
3 101
口)2
2016 会计(合办)1 班、2016 会计(合办)2 班、2016 会计 1 班、2016
线性代数 BZ
会计 2 班、2016 会计 3 班、2016 会计 4 班、2016 会计 5 班、2016 应用 9 368
3.2 符号说明 符号说明: 1. Xi (i=1、2、3、4):可容纳 30 个人的教室的编号 2. Xi (i=5、6、):可容纳 45 个人的教室的编号 3. Xi (i=7、8、9、10):可容纳 60 个人的教室的编号 4. Hi (i=1-14,i 均为整数);考查课科目编号 5. Wi (i=1-25,i 均为整数):考试课科目编号
学(专升本)1 班
操作系统原理
2014 信息与计算科学 1 2014 信息与计算科学 2
2 78
人工智能
2014 信息与计算科学 1 2014 信息与计算科学 2
2 78
数据库原理及其应用
2014 信息与计算科学 1、2014 信息与计算科学 2
2 38
表(2)参与考试课班级及班级数目人数 注:课程从数学分析 II——常微分方程依次为 G1-G25
课程名称
数学分析 II 高等代数 II
班级名称
2016 数学类 1 班、2016 数学类 2 班、2016 数学类 3 班 2016 数学类 1 班、2016 数学类 2 班、2016 数学类 3 班
班级 数 3 3
人数
127 118
5
高等代数(1)
2016 数学教育 1 班、2016 数学教育 2 班、2016 数学教育 3 班、2016 4
6. :2014 级数学教育专业
3
7. :2014 级数学与应用数学专业、2016 级数学与应用数学专业(专升本) 8. :2014 级信息与计算科学专业 9. :2015 级数学教育专业 10. :2015 级数学与应用数学专业 11. :2015 级信息与计算科学专业 12. :2016 级数学教育专业 13. :2016 级数学类 14. (i=1-29,i 均为整数):监考老师编号 15. (i=1-21,i 均为整数):巡考老师编号 16. Pt :总利用率 17. P :平均考场容量利用率
关键词:满意度;非线性规划;排列组合;最优化模型;0-1 模型
1
1.问题的重述
由于高校的在校学生的增多,学校在安排期末考试时总会碰到各种难题,如不能错 开学生的各门课的考试时间,监考教师不足,或学生参加考试时间过于集中等。这些问 题在大面积课程, 如高等数学、线性代数和概率统计的考试,和一些全校性的公修课的 考试时的影响是非常明显的,而对于承担这些课程教学工作的数学与信息科学学院来 讲,如何合理的安排这些课程的考试,是一个最为紧要的问题。通常的做法是考试课程 和考查课程分开,各有一周考试时间,考查课随堂考;大面积课程另行安排---通常这样 使得大面积课程的考试和其他考试课程考试同时进行,增加考试安排的难度。想要解决 考试安排问题就需要解决以下几个问题:
数学教育 4 班
数学分析(6)
2016 数学教育 1 班、2016 数学教育 2 班、2016 数学教育 3 班、2016 4
数学教育 4 班
数学建模
2015 数学教育 1、2015 数学教育 2
2
实变函数论
2014 数学与应用数学 1、2014 数学与应用数学 2、 2016 数学与应用数 3
学(专升本)1 班
2.问题的分析
针对问题一:运用线性规划的方法得到最多可以使用多少个考场,才能避免因监考 教师人数不足所产生的问题。为了公平合理起见,我们对考查课考试做了一系列调 整,我们在复习周的时候统一安排进行考查课的考试,因为可监考的教师较少,因 此需要进行不限制安排教师监考。在考试课中,每个巡考教师巡考需要一个院系, 且带有红色工号的教师不能进行考试课的监考工作。对于非数学系的学生来说,尽 量将每个院系的考试考场安排在一栋楼中,以方便巡考老师巡考。尽量安排所教授 该门考试课程的老师进行巡考,以方便当考试试卷出现问题时进行及时修改。
对监考安排的方案优化
摘要 随着高校在校学生的增多,学校在安排期末考试时总会遇到各种难题,比如:教室 的容量要比考室的容量要多得多;监考教师数量不足;所安排的教师监考科目时间不够 合理;每个学生相邻两门课程考试时间间隔时长时短,导致学生不能合理安排复习时间, 从而间接影响考试成绩;容量不同的考室不能得到合理地运用等一系列问题。针对这些 问题以往通常采用人工编排的方法,然而,随着教学规模的日益扩大,安排考试涉及面 广,各项之间关系复杂,依靠手工操作存在风险,在很大程度上人工很难去排除所有冲 突,处理起来耗时费力,为了避免出现这样失误,但又想要合理分配有限的场地、教师 资源从而让学生考出最优秀的成绩,我们采用建立合理的数学模型,通过计算机网络进 行考试考场安排。本文从时间安排、考场安排、监考安排三个方面建立数学模型,分别 解决了考试时间、考场、考试专业以及监考教师安排的问题,得到一个学生、老师和学 校都满意的方案。 针对问题一,我们首先运用Excel对题目中所给数据进行处理,然后对得到的数据 进行了分析,采用线性规划确定采用的考试模式。在假设所安排的有限个监考老师监考 的前提下,建立考场安排与监考教师安排模型。再结合人工通过排列组合的方法进行排 考,将具有特殊情况的教师安排考查课监考,并得出考场安排表,建立最优化的模型, 力求使学生在合理的考试安排下在最短的时间内完成考试。对于每个教室是否作为考试 的考场,采用0-1规划模型进行处理。通过Lingo数学软件对所建立的模型进行处理,求 得合理的数值。 针对问题二,假设考试课程每个专业的学生每天均考一门,每场考试采用 10 个考 场,利用所建立的最优化模型求解出合理的考试时间间隔、考试时间段。 针对问题三,对不同容量的教室,充分利用其容量的大小进行考试教室的安排,建 立合理的模型,利用 Lingo 软件求得最优解。 此外,我们通过平均考场容量利用率来对所建立的模型进行评价,分析各时间段考 场安排的合理程度,得出本文所建模式的平均考场容量利用率,此利用率对于一整天的 考场而言虽然较小,但对于整个考试考场而言,却起着至关重要的作用。
数值分析
2014 信息与计算科学 1、2014 信息与计算科学 2
ห้องสมุดไป่ตู้
2
信息论基础
2014 信息与计算科学 1 2014 信息与计算科学 2
2
初等数学研究
2014 数学与应用数学 1、2014 数学与应用数学 2、 2016 数学与应用数 3
学(专升本)1 班