您好,欢迎访问三七文档
数学建模校内选拔赛论文值班问题姓名1:邓江学号:201520360304专业:数学与应用数学姓名2:黄林学号:201520360315专业:数学与应用数学姓名3:吴丛学号:201520360335专业:数学与应用数学学院/系部:抚州师范学院队长联系方式:TEL:18270569837Email:619122127@qq.com2016年5月13日1摘要...................................................21.问题的重述...........................................32.模型假设与符号说明...................................33.问题分析.............................................44.模型建立.............................................55.计算方法设计和计算机实现.............................76.结果分析与检验......................................177.讨论模型的优缺点....................................188.参考文献............................................199.附录................................................192值班问题摘要本文根据问题的条件和要求,建立了三个模型。主要运用运筹学求解方法、0-1模型求解方法、lingo线性规划问题求解方法对值班问题进行合理安排。针对问题(1)、(2)做了学生准时到达机房、忽略换班时间以及学生工作时长均为整数的假设,针对问题(3),为了不失一般性,根据周围同学们的课程表分别为学生1-7建立了相应的课程表,并将每天8:00-22:00以每两小时分为七个时间段,使得周一至周五的值班时间有了相对应的35个时间段(k=1…35),并用bikdik(bik表示学生i在k时段是否被安排值班,dik表示学生i在k时段是否有课)表示当学生有课时不能值班,无课时可值班也可不安排值班,使得问题(3)的计算算法设计更为简单。对于三个问题均建立了相应的单目标线性规划模型,得到了与问题分析相一致的值班安排表,使得问题(1)、(2)中的最小支付报酬为862元,问题(3)中的最小支付报酬为876元。31.问题的重述东华理工大学抚州校区某一机房聘用4名低年级本科生(代号1、2、3、4)和3名高年级本科生(代号5、6、7)值班答疑。已知每人从周一到周五最多可安排的值班时间及每小时值班报酬如下表机房开放时间为上午8:00到晚上22:00,开放时间内须有且仅需一名学生值班,又规定每名低年级本科生每周值班不少于8小时,高年级本科生每周值班不少于7小时。若某时段无人值班则每小时损失50元。要求(1)建立该机房总支付报酬最小的数学模型并求解。(2)在上述基础上补充下面两个要求,一是每名学生每周值班不超过3次,二是每天安排的学生不超过3人,重新建立数学模型并求解。(3)考虑到实际情况中,学生需要上课,学生只能在空闲时间值班(可以不考虑上表中的每天值班时间上限)。在此条件下建立数学模型,求解出支付报酬最小的值班方案。(学生课程表可以调查周围同学课程表或者按照一天2~6节课,一周两次晚自习的条件随机生成)。2.模型假设与符号说明2.1模型的假设(1)在问题(1)、(2)中,对模型进行了以下的假设每位同学都能准时到达机房,并且换班时间忽略不计;每位同学可值班的时间可以是任何时刻;每位同学工作时长均为整数。(2)在问题(3)中,对模型进行了以下假设根据周围同学1—10周的课程表,做适当修改,假设了1—7号同学的课程表(见附录1);每位同学若在晚自习有课,则不能在18:00~22:00时间段进行值班;每位同学的午休、晚饭时间均可以用以值班,且视为空闲;学生代号报酬(元/小时)每天最多安排的值班时间/小时周一周二周三周四周五110606072100606031248305412556045153048061606063717443054同学的课程时间段的安排(见附录1);每位同学都能准时到达机房,并且换班时间忽略不计;每位同学工作时长均为整数。2.2符号说明(1)问题(1)、(2)的符号说明y,表示需付总报酬;i=1...7,表示七位同学;j=1...5,表示星期;t(i,j),表示每人每天安排值班的时间;a(i,j),表示每人每天最多值班的时间;b(i,j),表示学生i在星期j是否被安排值班;c(i),表示学生i每小时的报酬。(2)问题(3)的符号说明y,表示需付总报酬;i=1...7,表示七位同学;k=1...35,表示一周的时间段(见附录2);b(i,k),表示学生i在k时段是否被安排值班;d(i,k),表示学生i在k时段是否有课;c(i),表示学生i每小时的报酬。3.问题分析对于问题(1)的目标是确定学生的值班安排,使得该机房总支付报酬最小。对于此类问题,通常可以借助lingo软件,求出最优解。而问题(2)、(3)是在问题(1)的基础上增减了一些限制条件,同样可借助lingo求解。3.1对问题(1)的分析先确定目标函数,根据题意可知,总支付报酬(y)等于每位学生总工作时间与每小时报酬的乘积之和(∑∑tijci5j=17i=1)。而要求最小总支付报酬(miny),则需要一些约束条件,根据已知条件可得到以下约束条件:七位学生每天总值班时间为14h(∑tij7i=1=14(i=1…7));每位学生每天总工作时间有上限(tij≤aij);学生1-4每周总工作时间不少于8h(∑tij5j=1≥8(i=1…4)),学生5-7每周总工作时间不少于7h(∑tij5j=1≥7(i=5…7))。3.2对问题(2)的分析根据题意,可知问题(2)只在问题(1)增加了以下约束条件:5每名学生每周值班不超过3次(∑bij5j=1≤3(i=1…7));每天安排的学生不超过3人(∑bij7i=1≤3(j=1…5))。3.2对问题(3)的分析问题(3)在问题(1)的基础上既增加了也减少了约束条件,使问题有了一定的复杂性。首先依据题干,为学生1-7建立了相应的课程表(见附录1)。再将学生是否有课用0(有课)、1(无课)表示(见附录1),为了计算中的方便,不以1表示肯定0表示否定。其次将每天8:00-22:00以每两小时分为七个时间段,使得周一至周五的值班时间有了相对应的35个时间段(见附录2)。接着便是用bik表示学生i在k时段是否被安排值班。然后用bikdik表示当学生有课时不能值班,无课时可值班也可不安排值班。最后用代数式(∑2bik35k=1dik)表示每位同学的总值班时间。目标函数的建立,最小总支付报酬(miny)等于每位学生工作总时间与每小时的报酬的乘积之和(∑∑2bikdikci35k=17i=1)再加上无人值班时间的总损失(50(70−∑∑2bikdik35k=17i=1))。根据以上可得到以下约束条件:bik等于0(否)或1(是);每个时间段最多只有一人值班(∑bik7i=1≤1);学生1-4每周总工作时间不少于8h(∑tij5j=1≥8(i=1…4)),学生5-7每周总工作时间不少于7h(∑tij5j=1≥7(i=5…7))。4.模型建立(1)问题(1)的模型建立目标函数miny=∑∑tijci5j=17i=1约束条件6{∑tij7i=1=14(i=1…7)∑tij5j=1≥8(i=1…4)∑tij5j=1≥7(i=5…7)tij≤aij(2)问题(2)的模型建立目标函数miny=∑∑tijci5j=17i=1约束条件{∑tij7i=1=14(i=1…7)∑tij5j=1≥8(i=1…4)∑tij5j=1≥7(i=5…7)tij≤aij∑bij5j=1≤3(i=1…7)∑bij7i=1≤3(j=1…5)(3)问题(3)的模型建立目标函数miny=∑∑2bikdikci35k=17i=1+100(35−∑∑bikdik35k=17i=1)约束条件7{bik=0或1∑bik7i=1≤1(k=1…35)∑2bikdik35k=1≥8(i=1…4)∑2bikdik35k=1≥7(i=5…7)5.计算方法设计和计算机实现计算方法设计运用lingo软件,进行编程,从而进行最优解的计算。这里对计算机实现的结果只保留了对学生值班安排的数据,详情见附录3。(1)问题(1)计算方法设计:model:sets:stu/1..7/:money;day/1..5/;link(stu,day):t,a;endsetsdata:money=10,10,12,12,15,16,17;a=6,0,6,0,70,6,0,6,04,8,3,0,55,5,6,0,43,0,4,8,00,6,0,6,34,4,3,0,5;enddatamin=@sum(link(i,j):t(i,j)*money(i));@for(day(j):@sum(stu(i):t(i,j))=14);@for(stu(i)|i#le#4:@sum(day(j):t(i,j))=8);@for(stu(i)|i#ge#5:@sum(day(j):t(i,j))=7);@for(link(i,j):t(i,j)=a(i,j));end计算机实现:8Globaloptimalsolutionfound.Objectivevalue:862.0000Infeasibilities:0.000000Totalsolveriterations:12VariableValueReducedCostT(1,1)6.0000000.000000T(1,2)0.0000000.000000T(1,3)6.0000000.000000T(1,4)0.0000000.000000T(1,5)7.0000000.000000T(2,1)0.0000000.000000T(2,2)6.0000000.000000T(2,3)0.0000000.000000T(2,4)6.0000000.000000T(2,5)0.0000000.000000T(3,1)1.0000000.000000T(3,2)7.0000000.000000T(3,3)0.0000000.000000T(3,4)0.0000000.000000T(3,5)0.0000000.000000T(4,1)0.0000000.000000T(4,2)0.0000000.000000T(4,3)6.0000000.000000T(4,4)0.0000000.000000T(4,5)4.0000000.000000T(5,1)3.0000000.000000T(5,2)0.0000000.000000T(5,3)2.0000000.000000T(5,4)2.0000000.000000T(5,5)0.0000000.000000T(6,1)0.0000000.000000T(6,2)0.0000000.000000T(6,3)0.0000000.000000T(6,4)6.0000000.000000T(6,5)1.0000000.000000T(7,1)4.0000000.000000T(7,2)1.0000000.000000T(7,3)0.0000000.000000T(7,4)0.0000000.000000T(7,5)2.0000000.000000(2)问题29计算方法设计:model:sets:stu/1..7/:money;day/1..5/;link(stu,day):t,a,b;endsetsdata:money=10,10,12,12,15,16,17;a=6,0,6,0,70,6,0,6,
本文标题:48数学建模论文
链接地址:https://www.777doc.com/doc-4403727 .html