校车问题

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

数学建模论文
——校车配置问题
目录
摘要 (3)
关键词 (3)
1问题重述 (3)
1.1问题背景 (3)
2问题分析 (3)
2.1问题现状 (3)
2.2解决方法 (3)
3.模型假设 (4)
3.1变量说明 (4)
3.2模型建立于求解 (4)
1.只买51座 (5)
2.39座和51座均买 (6)
4.买车租车对比 (7)
4.1买车模型 (8)
4.2租车模型 (9)
4.2对比分析 (10)
5.模型评价 (11)
6附录 (12)
校车问题
——租车、买车对比摘要:本文针对西安工程大学金花、临潼两校区之间的运行问题,是购买还是租校车?通过合理的抽象假设。

把校车配置问题抽象成一个清晰完整的数学模型,并求解,为学校制定合理的购车或租车方案,并确定一天中(只考虑周一到周五)不同时刻校车的最优分配方案,使学校能有效的降低成本,减少开支,讨论该配置的合理性及可行性,并作改进。

在问题解决过程中使用了最优化方法,分析、建模、求解过程中利用MATLAB、Excel对数据进行分析处理,并用C语言实现某些算法。

最终得出结论。

1.买51座和39座比只买51座合算。

2.第九年之前买车贵,租车便宜。

即年限小于9时可考虑租车。

3.等到九年之后租车贵,买车划算。

即所用年限大于9时可考虑买车。

关键词:最优化方法、MATLAB、Excel
1、问题重述
1.1问题背景
许多学校都建有新校区,常常需要将老校区的教师和工作人员用校车送到新校区。

由于每天到新校区的教师和工作人员很多,往往需要安排许多车辆。

那就会产生额外费用,那么买车还是租车划算,就此问题假设、建模。

2、问题分析
2.1问题现状
学校配置的校车为51座的大型车,和39座中型车,两种类型的车,根据各个时刻乘车人数的不同灵活分配校车的种类和数量。

2.2解决方法
无论是买车还是租车,过路费都需要额外支出,因此在此对比问题中均可忽略过路费这一因素。

3、模型假设
规定年限为5年,10年,15年
A买车模型假设
下表是校车型号,以及相应型号的百公里耗油量和购买市场价格
校车型号百公里耗油/L 价格/万元
ZK6117HA 25 72
ZK6109H2Z 17 79
ZK6107H9 24 76
ZK6122HQ9 24 74
ZK6126HQC9 22 69
ZK6119H2Y 18 67
ZK6116HB 25 68
ZK6127HQ 25 76
ZK6110H 24 79
ZK6127HA 25 78
均值22.9 73.8 在excel中分析得到51座校车均价为73.8万元,百公里耗油量有22.9升,以及柱状图表。

同理得到39座车平均价格40.2万元,百公里耗油18.6升
每天平均有450人从金花到临潼
路线状况
参数总长耗时路况
km min
1 25.3 25-30 不易堵车
2 32.5 40-50 适中
模型假设
1.由于每天从金花到临潼的老师必然返回金花,我们将此模型简化为只考虑一天中老师在金花等车的五个时刻(为什么是5个时刻见表)的情况
2.不考虑周六、日到临潼上课的教职工对所需配置的校车数的影响。

3.上午到达临潼的校车中午全部返回到金花,下午和晚上的校车也必须返回金花校区。

4.在一天中五个时刻登车的老师人数与全天登车的人数之比服从0~1区间的均匀
分布
5.假设学校的校车每天均能正常的工作,不出现故障
6.假设校车运行时刻表是确定的,车辆的高峰期时间段也是确定的(7:00~9:00,12:00~13:00,17:30~19:30)
7.只考虑夏季工作时间,因为我校一年四季作息时间一样。

故认为影响校车配置和运行的因素不变
变量说明
Tj:一天中金花区的第j个发车时刻,其中1≤j≤5,j为整数;
Aij:第i天的Tj时刻在金花校区登车的教职工人数,其中1≤i≤10,i为整数
问题分析
我们应该在满足教职工准时上下班的前提下,合理安排各时刻的发送数量,使个时刻发出的校车数最少,由此得到需要购置的校车的最小值。

然后考虑综合运行时间,校车的耗油量制定一天中校车的分配。

我们的目标是求每一时刻发车的数量,发车数取决于时刻要运送的教职工人数,那么我们需要求出,T1,.T2,T3,T4,T5五个时刻从金花校区要运送的教职工人数,鉴于时间比较紧张,要统计一天各时刻需要登车的人数比较难,我们采用数学方法对题目所给的数据进行变换处理,即认为一天中五个时段需要登车的职工是随机的,各时刻登车的人数与全天登车人数之比服从0~1区间上的均匀分布,用计算机模拟产生450个0~1区间上的随机数,统计分别落入区间Ⅰ(0~0.2)Ⅱ(0.2~0.4)Ⅲ(0.4~0.6)Ⅳ(0.6~0.8)Ⅴ(0.8~01)上的随机数个数SUMij(表示第i次模拟落入区间j(取Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ上的随机数个数)以此估计出全天五个时刻登车的人数然后算出各时刻所需要分配的校车数,采用特定的算法算出某一天所需要校车的最小值ni 为保证计算结果的准确性,我们将十次模拟产生的数据用最大似然估计法取平均值,得到较为准确的校车配置数。

模型建立和求解
根据上课时间,同时保证时间最短,制定校车往返时刻表
出发时间方向到达时间
7:00(T1)金花到临潼7:50 8:30(T2)金花到临潼9:30 9:00(T3)金花到临潼9:50 10:00 临潼到金花10:40 11:50 临潼到金花12:40 13:00(T4)金花到临潼13:50 15:00(T5) 金花到临潼15:40 15:50 临潼到金花16:30 17:30 临潼到金花18:20 不考虑各时刻登车教职工人数的差异,假设这450名教职工在全天每个时刻上课时随机的,令产生的随机变量X表示各时刻等车的职工,若随机变量x~u(0,1),,即X服从(0,1)区间上的均与分布,则有
P(0≤X≤0.2)=0.2,
P(0.2≤X≤0.4)=0.2
P(0.4≤X≤0.6)=0.2
P(0.6≤X≤0.8)=0.2
P(0.8≤X≤1)=0.2
用计算机模拟产生450个0~1区间上的随机数,程序间附录。

统计分别落入区间Ⅰ(0~0.2)Ⅱ(0.2~0.4)Ⅲ(0.4~0.6)Ⅳ(0.6~0.8)Ⅴ(0.8~01)上的随机数个数SUMij(表示第i次模拟落入区间j(取Ⅰ、Ⅱ、Ⅲ、Ⅳ、Ⅴ上的随机数个数)我们认为某一时刻登车的人数近似等于该时刻X出现的频数,即SUMij=Aij,表示第i天的Tj时刻在金花校区登车的教职工人数。

由此我们会出十天中各时刻等待登车的教职工人数分布表
时刻
人数T1 T2 T3 T4 T5
次数
1 98 85 76 101 90
2 82 109 91 76 92
3 87 90 83 93 97
4 99 8
5 90 87 89
5 93 10
6 89 79 83
6 76 83 102 99 90
7 87 103 85 81 94
8 78 104 77 88 103
9 89 87 89 94 91
10 84 80 98 103 85 根据模拟产生的表可以算出第i天在Tj时刻所需要的校车最少数量为:
Mij=
ij
51
A
⎡⎤
⎢⎥
⎣⎦
(1≤i≤10,1≤j≤5,i,j为整数)
1)只买51座
我们规定上午上午T1,T2,T3时刻的车到达临潼校区收,才有第一批校车返回金花,因为在此情况下能够避免校车空载而回,增大耗油量,并且由于路况因素未知可能使接送的校车晚点,使等车的时间延长,若T1,T2,T3时刻发出的校车数总数是当日学校所能调动的最大校车量,此数量可能就是学校配置校车数。

因此将T1,T2,T3所在的时间段看成一个整体,又由于T4,T5所在时间段也可看成一个整体。

由于要保证所有教职工上下班时间准时,故在两个时段所需校车总数中取最大值为一天所需的校车数,为学校配置车数N。

保证计算结果的准确性,我们将十次模拟产生的数据用最大似然估计法取平均值,得到较为准确的校车配置数。

运行程序(见附录程序2)得到第i天所需校车总数为
Ni=max[(Mt1+Mt2+Mt3),(Mt4+Mt5)] 1≤i≤10 ,i为整数


1 2 3 4 5 6 7 8 9 10


6 7 6 6 7 6 7 7 6 6
该十个样本的样本均值n=
1
10
10
1
i Ni =∑=6.3
依据数据统计中相关参数的极大似然估计方法,统计出学校需购校车数量为n,取整为7
此样本方差S^2=2
10
1
1()10i Ni n =-∑=0.25 方差很小 可认为各天校车数与学校需配置
的数相当,故此方案合理。

2)51座和39座车都买各需要几辆
Xij:第i 天的Tj 时刻所需51座的校车数 Yij:第i 天的Tj 时刻所需39座的校车数
X -
:统计十次模拟数据得到学校购51座的期望值
Y -
统计十次模拟数据得到学校购39座的期望值
令Xij ,Yij 的初始值为0,对第i 天的Tj 时刻登车人数求各种类型车的算法如下 用Aij 除51 商p 余数q
当q 在[0,2]之间时 加一辆39座 否则加一辆51座 通过程序3算法得到下表
车次 次数 51 39 51 39 51 39 51 39
1 2 0 2 0 2 0 2 0 2 3 0 2 0 2 0 2 0 3 2 0 2 0 2 0 2 0 4 2 0 2 0 2 0 2 0 5 3 0 2 0 2 0 2 0 6 2 0 2 0 2 0 2 0 7 2 1 2 0 2 0 2 0 8 2 1 2 0 2 0 2 1 9 2 0 2 0 2 0 2 0 10 2 0 2 0 2 1 2 0
同样根据Xi=max[(Xt1+Xt2+Xt3),(Xt4+Xt5)] Xt 表示第i 次需要51座车数量 Yi=max[(Yt1+Yt2+Yt3),(Yt4+Yt5)] Yt 表示第i 次需要39座车数量 得到结果如下表
车型座 车次 51 39 次数
1 6 0
2 7 0
3 6 0
4 6 0
5 7 0
6 6 0
7 6 1
8 6 1
9 6 0 10
6 1
统计出X -
=6.2 取整数7 Y -=0.3 取整数1
根据实际情况51座7辆 39座1辆
对比两个方案,因为汽车使用年限足够长,柴油价格耗费上节约很多钱,那么方案1优于方案1 即买车的话 买51座7辆 39座1辆
买车租车对比(10年为对比)
买车
总开支(w )=固定成本+其他
=买车成本(F )+车检费(P1)+保险费(P2)+司机总工资(P3)+维修费(P4)+车辆系统缴费(P5)+燃油费(P6) 有关参数值如下表
两地距离/km 油价元/L 车年检费/元 维修费 车辆系统缴费 保险费 司机工资
30.25 6.95 300 3500 3500 2600 2500 拟合函数为W=556.8+31.17t t 为年限 当t=5时: 其中F=73.8×7+40.2=556.8万元 P1=300×8×5=1.2万元(t 为年数) P2=2600×8×5=10.4万元 P3=8×10×n×t=8×10×2500×5=100万元(其中10个月,n 为每个司机工资,假定工资不涨) P4=3500×8×5=14万元 P5=3500×8×5=14万元
P6=300×5×(0.229×14+0.186×2)×30.25=16.235175万元 总计买车5年花销为w=712.635175近似为713万元 当t=10时: 其中F=73.8×7+40.2=556.8万元 P1=300×8×10=2.4万元(t 为年数) P2=2600×8×10=20.8万元 P3=8×10×n×t=8×10×2500×10=200万元(其中10个月,n 为每个司机工资,假定工资不涨)
P4=3500×8×10=28万元
P5=3500×8×10=28万元
P6=300×10×(0.229×14+0.186×2)×30.25=32.47035万元
总计买车10年花销为w=868.47035近似为868.5万元
当t=15时:
其中F=73.8×7+40.2=556.8万元
P1=300×8×15=3.6万元(t为年数)
P2=2600×8×15=31.2万元
P3=8×10×n×t=8×10×2500×15=300万元(其中10个月,n为每个司机工资,假定工资不涨)
P4=3500×8×15=42万元
P5=3500×8×15=42万元
P6=300×15×(0.229×14+0.186×2)×30.25=48.705525万元
总计买车15年花销为w=1024.305525近似为1024.4万元
租车
下表是校车型号,租用校车时,其中的燃油费,司机工资,车辆维修费用,车辆保险等均由租车公司承担,学校一次性付清费用后就不会在承担任何费用。

另外,学校一年除去寒暑假期,开学时间只有十个月,所以一年按十个月的租金计算。

当t=5时:
Z(5)=(600×20×10×7+400×20×10×1)×5=460万元
当t=5时:
Z(10)=(600×20×10×7+400×20×10×1)×10=920万元
当t=5时:
Z(15)=(600×20×10×7+400×20×10×1)×15=1380万元
租车时只有过路费自己支付。

因为买车,租车都需要过路费所以对比中不考虑。

所以租车总费用:
拟合函数为Z= 92t t为年限
t=0:0.1:15; z=92*t;
w=556.8+31.17*t; plot(t,z,'k:',t,w,'r-'); grid on;
051015
200
400
600
800
1000
1200
1400
令Z=W 即有556.8+31.17t=92t 解出近似t=9.15 即在t=9.15之前租车划算,之后买车划算。

模型评价
1.只买51座模型简化了问题处理,一旦校车出现故障就会导致校车数得不到满足
2.39和51均买时,虽然数量多了,但校车使用年限足够长,若干年下来节省很多油费。

附录
程序1
Clear;
%产生随机数并统计
P=input('in p ut p:'); %p 中存储前四次
num=zeros(10,5);%初始化num
A=rand(10,450); %产生4500个10行450列随机数组
for i=1:10
for j=1:450
if A(i,j)<p(1)&A(i,j)>=0
num(i,1)=num(i,1)+1;
else if A(i,j)>=p(1)&A(i,j)<p(1)+p(2)
num(i,2)=num(i,2)+1;
else if A(i,j)>=(p(1)+p(2))&A(i,j)<p(1)+p(2)+p(3)
num(i,3)=num(i,3)+1;
else if A(i,j)>=(p(1)+p(2)+p(3))&A(i,j)<p(1)+p(2)+p(3)+p(4)
Num(i,4)=num(i,4)+1;
else if A(i,j)>=(p(1)+p(2)+p(3)+p(4))&A(i,j)<=1
num(i,5)=num(i,5)+1;
end
End
End
>>input
p:[98,85,76,101,90;82,109,91,76,92;87,90,83,93,97;99,85,90,87,89;93,106,89,79,83;76,83,102,99, 90;87,103,85,81,94;78,104,77,88,103;89,87,89,94,91;84,80,98,103,85];
程序2
>>num=[98,85,76,101,90;82,109,91,76,92;87,90,83,93,97;99,85,90,87,89;93,106,89,79,83;76,83, 102,99,90;87,103,85,81,94;78,104,77,88,103;89,87,89,94,91;84,80,98,103,85];
m=ceil(num/51) %m为num/51向右取整
Aml=sum(m(:,1:3),2); %前三列之和
Pm1=sum(m(:,4:5),2); %后两列之和
result1=max(Aml,Pm1); %打印结果
disp('result1:');
disp(result1);
m =
2 2 2 2 2
2 3 2 2 2
2 2 2 2 2
2 2 2 2 2
2 3 2 2 2
2 2 2 2 2
2 3 2 2 2
2 3 2 2 3
2 2 2 2 2
2 2 2
3 2
result1:
6
7
6
6
7
6
7
7
6
6
程序3
num=[98,85,76,101,90;82,109,91,76,92;87,90,83,93,97;99,85,90,87,89;93,106,89,79,83;76,83,10 2,99,90;87,103,85,81,94;78,104,77,88,103;89,87,89,94,91;84,80,98,103,85];
X=zeros(size(num));
Y=zeros(size(num));
for i=1:10
for j=1:5
X(i,j)=fix(num(i,j)/51);
q=rem(num(i,j),51);
if q>0&q<=2
Y(i,j)=Y(i,j)+1;
elseif q>=3
X(i,j)=X(i,j)+1;
end
end
end
disp('X=')
disp(X);
disp('Y=')
disp(Y);
AmX=sum(X(:,1:3),2);
AmY=sum(Y(:,1:3),2);
PmX=sum(X(:,4:5),2);
PmY=sum(Y(:,4:5),2);
result2=[max(AmX,PmX),max(AmY,PmY)];
disp('result2');
disp(result2);
X=
2 2 2 2 2
2 3 2 2 2
2 2 2 2 2
2 2 2 2 2
2 3 2 2 2
2 2 2 2 2
2 2 2 2 2
2 2 2 2 2
2 2 2 2 2
2 2 2 2 2
Y=
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 1 0 0 0
0 1 0 0 1
0 0 0 0 0
0 0 0 1 0
result2
6 0
7 0
6 0
6 0
7 0
6 0
6 1
6 1
6 0
6 1。

相关文档
最新文档