公交车排班方案
数学与统计学院
2011-2012学年第一学期课程论文
《数学建模*》
我们选择的题号是(从A/B/C/D/E中选择一项填写):_____D           
所属班级(请填写完整的全名):2009级数学与应用数学(师范)1班           
成员 (打印并签名) :1. ____200902114013   X X             
                  2. ____200902114019   XXX             
                  3. ____200902114049  XXX          _ 
                  4.                                       
                                        日期: 2011  12 29
评阅成绩:
公交司机排班方案
摘要
本文主要研究南昌市公交司机排班问题。在最少班次问题上,将五月份分为节假日和非节假日两部分建立模型,在司机排班问题上,考虑到司机存在上班、不上班两种情况,将选择使用0-1变量、随机均匀函数,最终得到合理分配方案。文中涉及Lingo、Matlab、Excel数据分析等多种算法。
针对问题一:
首先:据题意将五月份分为节假日(9天)和非节假日(22天)两部分。
其次:而非节假日中包括平常、高峰两个时段。
最后:根据每段时间间隔,取每个班次间隔时间的最大值,即可得出五月份的最少班次总数为2377。
针对问题二:
其一:公交车司机为了充分利用资源,提高公司效益,对司机的工作时间做了相关规定,但同时还要考虑到安全问题等因素,规定:司机每天上班不得超过八个小时,连续开车不得超过四个小时,但每个月至少必须得完成120个班次的任务,这与实际情况相符。
其二:司机的排班方案设计上,属于典型的分配问题。考虑约束条件司机每天上班时间不超过8小时等,参考问题一模型,求解出每天最大班次133,在Matlab中用均匀分布函数产生出每天每个班次的运行时间。在lingo中编程得出节假日、非节日的排班方案(表一、二)。
针对问题三:
其一:每天需要的司机人数,参考问题二的数据,整理即可得出节假日每天至少需要17人,非节假日每天至少需要13人。
其二:首先,根据模型二的数据,建立模型,得出每周需要的最少人数为23人。其次,司机每周总数最少的排班方案,选择0-1变量,参照问题二的模型。且要使每个司机每周连续
工作五天休息两天。最后,在Lingo中建立模型整理得出司机排班方案(见附录四)
关键词:最少班次、Lingo编程、0-1模型、排班方案
一、问题重述
目前,随着南昌市经济进一步的发展,道路变得越来越多。为此南昌市公交总公司开辟了各种线路,以满足老百姓出行需要。而现实是有的线路司机不足,常常存在向其他车队借调司机和车辆跑班,影响其他线路的排班秩序;有的线路司机需要每天开车12~13小时,影响司机的休息,从而给交通留下安全隐患;有的线路因经常堵车,打乱了线路调度计划,使得交接班司机和乘客怨声载道一般,公交公司按月给司机排班。
下面是某条线路的基本情况,请你根据有关数据完成下列问题。
规定
(1)司机每天上班时间不超过8小时;
(2)司机连续开车不得超过4小时;
(3)每名司机至少每月完成120班次。
已知该线路有司机15人目前该线路的排班间隔是:
非节假日:平时:8~10分钟/班; 高峰(上下班):6:00~8:30,11:30~13:30,16:30~18:00:4~8分钟/班
节假日:5~10分钟/班
该线路的开收班时间:
夏令(12月~3月):6:15~18:20, 冬令(4月~11月):6:20~18:10
该线路的运行时间是:
正常:80~85分钟/班分钟/班,高峰:100~120分钟/班
问题一
根据五月份的节假日情况,求出当月最少班次总数;
问题二:
阐述你对上述规定的理解,并根据你的理解建立适当的数学模型,合理地设计五月份该线路的司机排班方案;
问题三:
根据五月份该线路的司机排班方案,计算出每天需要的司机人数,假如规定每个司机每周连续工作五天,休息两天。请你通过某周(周一至周日)需要司机人数求出司机总数最少的排班方案。
二、模型假设
(1)假设五月份有九个节假日;风的成语
(2)假设一司机开第一个班次与开第二个班次之间相隔十个班次,这种称为连续的班次;
(2)公交车发车间隔取整分钟,行进中公交车彼此赶不上且不超车,到达终点站后掉头变为始发车;
(3)从起始站出发到终点站再回到起始站为一个来回,记作一个班次;
(4)乘客流量保持不变且不用在两辆车的间隔内等太久;
(5)交通情况,路面状况良好,无交通堵塞和车辆损坏等意外;
(6)假设司机都不缺勤,允许自由调班;
三、符号说明
符号
单位
意义
什么空调最好
五月份总班次
五月份节假日总班次
五月份非节假日总班次
五月份总天数
五月份节假日天数
五月份非节假日天数
我明白 太放不开你的爱
时段发车班次
时段发车间隔
时段时长
节假日发车间隔
每天每个司机每班次的运行时间矩阵
每天的最大班次量
每天的班次量
每人每天连续开的班次数
每名司机至少每月完成班次
联合国总部所在地
min
手表调日期每天最多工作时间
节假日每天需要的人数
非节假日每天需要的人数
一周需要的总人数
四、问题分析
本文主要通过建立模型、使用随机均匀分布函数、0-1变量等,在Lingo、Matlab、Excel中解决公交车最少班次、合理司机排班等问题,以提高公交车公司资源的有效利用。
4.1问题一
   
就问题一而言:求出当月最少班次的总数。
分析题意,首先:将五月份分为节假日排班方案、非节假日的排班方案。当节假日和非节假日的排班方案中的班次数达到最少,则当月的排班总次数达到最少。
其次:计算出每天的班次,分别通过建立模型求出和非节假日模型求出,节假日按天计算,非节假日按天计算。
最后:由公式 计算出结果。
4.2问题二
4.2.1问题2.1
结合生活实际情况,考虑到安全问题,司机每天上班时间不能超过八个小时,且连续开车不能超过四个小时,考虑到公司的效益问题,每名司机每个月必须完成至少120个班次。
4.2.2问题2.2
设计五月份的司机排班方案,属于典型的分配问题。结合本题约束条件,为了充分满足司机的排班方案,参照问题一中已经建立的非节假日的模型,计算出每天的最大班次,在matlab中运用随机均匀函数得出最大的班次各时段长数据表。在lingo建立模型,得出司机的排班方案。
4.3问题三
4.3.1问题3.1
根据问题二的司机排班方案的结果表,可以在Excel中直接整理得出每天所需司机人数。
 
4.3.2问题3.2
    在问题二的模型基础上,结合每个司机连续工作五天、休息两天的约束条件,写出模型,在Lingo中编程得出司机总数最少的排班方案。
五、模型建立与求解
  5.1问题一
5.1模型的建立
首先,五月份共计有天;两种情况,其中节假日为天,非节假日为天;
  两个时段;
其次,(1)建立节假日每天最少班次模型:
    目标函数:                (1)
  其中,T表示五月份每天的上班总时间,t为时间间隔,单位为分钟。
 
(2) 建立非节假日每天最少班次模型:
目标函数:                            (2)
其中,表示一天的班次总数。
约束条件:
              (3)
最后,由公式:计算得出五月份额最少班次排班方案。
5.1.模型的求解
首先,五月份共计31天,其中节假日为9天,非节假日为22天;
其次,(1)、运用excel对节假日(1)式求解如下:
看花灯                  (4)                        已知T=710,当t=10时即可以求得每天最少班次。
                                                       
                  (5)     
那么五月份的节假日最少班次为:           (6)
(2)、利用Lingo对(2)、(3)式编程解出五月份非节假日每天的最少班次(见附录一)如下:
                            (7)
那么五月份的非节假日最少班次为:          (8)
最后:五月份的最少班次为:              (9)
5.2问题二
5.2模型的建立
公交司机排班问题具有复杂性,必须考虑到多个约束条件限制,到“合理、令人满意的方法”,并且也要使公交车公司获得最大的利益。
首先,参考问题一的模型计算出每天的最大班次量B。
其次,在Matlab中运用随机均匀函数产生出每一天B个班次中每个司机每个班次的运行时间矩阵
最后:(1)参照每天最多的班次量,且司机不能连续开四个小时即不能连续开班次,(2)每名司机至少每月完成班次。(3)司机每天工作不超过小时,转化为不超过分钟。
为了求解需要的司机数及排班方案,我们建立如下模型:
          (10)
约束条件:     (11)
在lingo中编程得出结果
5.2模型的求解
首先参考问题一的模型计算出每天的最大班次133。
其次,在Matlab中运用随机均匀函数产生出133班次的每个司机班次的运行时间矩阵。将其保存在Lingo相应文件中,以备调用。
然后, (1)参照每天最多的班次量133,且司机不能连续开四个小时即不能连续开3个班次,(2)每名司机至少每月完成120班次。(3)司机每天工作不超过8小时,转化为不超过480分钟。为了求解需要的司机数及排班方案,我们建立如下模型:
                    (12)
约束条件:       (13)
在Lingo中编程得出结果(见附录三)
最后,根据运行结果整理得出第一天的节假日排班方案,由第一天的司机排班分析可知:第一天的第一个班次可能安排多个司机,而第五个班次没有安排司机。结合公交车公司不可能将让某个班次不安排司机、司机连续开车不超过三班车等,重新对结果进行合理调节得出节假日排班方案(表一)、非节假日排班方案(表二)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。