福建农林大学道路交通工程系统分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
交通与土木工程学院
实习报告
课程名称道路交通工程系统分析
设计题目交通系统分析应用程序设计姓名
专业年级交通工程
学号
指导教师
成绩
日期2013 年6 月23 日
评语
指导教师:
2012年月日
目录
1 线性归划 (3)
1.1 模型及分析 (3)
1.2 Matlab求解方法 (3)
1.3 Lingo求解方法 (4)
2 运输规划 (6)
2.1 模型及分析 (6)
2.2 Lingo求解方法 (8)
3 整数规划 (9)
3.1 模型及分析 (9)
3.2 Lingo求解方法 (9)
4 图与网络分析 (11)
4.1 模型及分析 (11)
4.2 Matlab求解方法 (11)
5 预测分析 (12)
5.1 模型及分析 (12)
5.2 R软件求解方法 (16)
5.3 Excel求解方法 (17)
6 参考资料 (18)
1 线性规划
实例:某桥梁工地用一批长度为8.4m 的角钢(数量充分多)制造钢桁架,因构造要求需将角钢截成三种不同规格的短料:2m 、3.5m 、4m 。这三种规格短料需求量分别为100根、50根、50根。试问怎样截料才能使废料最少。 1.1 模型分析
这个问题是线性规划中的截料优化问题,经过分析后可以知道该批角钢有六种截法如表1所示
钢材截取方法 表1
长度 根 数 截法 一
二
三
四
五
六
2m 2 2 0 0 0 4 3.5m 1 0 1 0 2 0 4.5m 0 1 1 2 0 0 废料长(m )
0.9
0.4
0.9
0.4
1.4
1.4
所以上述问题下列数学模型来表达:
x x x x x x z 4.04.14.09.04.09.0min 654321+++++=
⎪⎪
⎪⎩⎪⎪⎪⎨⎧≥=+
+=++=++且为整数0
,,,,,502502100422s.t.654321432531321.x x x x x x x x x x x x x x x 该问题为线形规划问题,为求得最优解,下面分别用Matlab 和Lingo 求解。 1.2 用Matlab 方法求解
该问题化为标准模型如下所示。 cx z =min
⎪⎪
⎩⎪
⎪⎨⎧≤≤=≤UB LB b x A b Ax x 11s.t.. 用命令:[x ,fval]= =linprog (c ,A ,b ,A1,b1,LB ,UB )在MATLAB 中求解。编写M 文件如下:
c=[0.9,0.4,0.9,0.4,1.4,0.4]; A=[];b=[];
A1=[2,2,0,0,0,4;1,0,1,0,2,0;0,1,1,2,0,0]; b1=[100;50;50]; LB=[0;0;0;0;0;0]; UB=[];
[x,fval]=linprog(c,A,b,A1,b1,LB,UB)
图1 线性规划模型Matlab 计算结果图
如图1所示:求得的最佳方案为 T
5.12,5.12,5.12,5.12,5.12,5.12X )(=
, m z 55min =
1.3 用Lingo 方法求解
在lingo 模型中输入以下代码(如图2所示):
min=0.9*x1+0.4*x2+0.9*x3+0.4*x4+1.4*x5+0.4*x6; 2*x1+2*x2+4*x6=100; x1+x3+2*x5=50;
x2+x3+2*x4=50; x1>=0 ; x2>=0 ; x3>=0 ; x4>=0 ; x5>=0 ; x6>=0 ;
点击运行后得到最优解为: T
25,25,25,0,0,0X )(=
,m z 55min =
所以取25根全截4m 的短料,25根全截3.5m 短料,25根全截2m 短料能达到最优
图2 线性规划模型Lingo 代码图
图3 线性规划模型Lingo计算结果图
2 运输问题
实例:某市区交通期望图有三个起点和三个终点,始点发生的出行交通量a i、终点吸引的出行交通量b j及始终点之间的旅行费用如表2所示,问如何安排出行交通量f ij才能使总的旅行费用最小?
各OD点间出行费用表表2
始点
点
D1D2D3a i 旅行费用
终点
O1 5 4 2 30
O210 4 7 30
O39 8 4 30
b j20 30 50 100
2.1模型及分析
该问题属于交通分配问题。
如表2所示,可设o1···········1,o2,…,o m为车辆出行的始点,a1,a2,…,a m为各始点发生的出行交通量。D1,D2,…,D m为出行的终点,
b 1
,b
2
,…,b n 为各终点吸引的出行交通量。
总的出行交通量为N 。
∑∑====n
j i m
i i b a N 1
1
,
设从始点o i 到终点D j 的出行量为f
ij
,出行费用为c ij 。
则总的出行费用为:f
c C ij
m
i n
j ij
∑∑===11
现在的问题是如何分配出行交通量f
ij
,使总出行费用为最少。即找出
f
ij
,
满足
⎪⎪⎪⎪⎩⎪⎪⎪⎪⎨⎧
======≥∑∑==1,2,...m)
(j 1,2,...m)(i 1,2,...n)
j 1,2,...m;(i 011b f a f f i m
i ij
i n
j ij ij
且使
f c C ij
m i n
j ij
∑∑===11
最小。
本题交通分配问题可用lingo 软件求解,求解过程如下 2.2 用Lingo 方法求解
在Lingo 模型中输入下列代码(如图4所示):
sets:
row/1,2,3/:a; arrange/1,2,3/:b;
link(row,arrange):c,x; endsets data:
a=30,40,30; b=20,30,50; c=5,4,2, 10,4,7, 9,8,4; enddata
[OBJ]min=@sum(link(i,j):c(i,j)*x(i,j)); @for(row(i):@sum(arrange(j):x(i,j))=a(i););
@for(arrange(j):@sum(row(i):x(i,j))=b(j););
@for(link(i,j):x(i,j)>=0;);
end