点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx

上传人:b****2 文档编号:14997943 上传时间:2022-10-26 格式:DOCX 页数:35 大小:134.44KB
下载 相关 举报
点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx_第1页
第1页 / 共35页
点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx_第2页
第2页 / 共35页
点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx_第3页
第3页 / 共35页
点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx_第4页
第4页 / 共35页
点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx_第5页
第5页 / 共35页
点击查看更多>>
下载资源
资源描述

点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx

《点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx》由会员分享,可在线阅读,更多相关《点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx(35页珍藏版)》请在冰豆网上搜索。

点线搜索逐步扩展的公交线路查询模型及算法Word格式.docx

(1)问题一,只考虑公汽线路时建立了模型与算法并利用所建模型求出了给定两个站的最优路线;

(2)问题二,同时考虑公汽与地铁线路时建立了模型与算法并利用所建模型求出了给定两个站的最优路线;

(3)问题三,假设任意两站之间的人的步行时间为10分钟,在考虑可以步行转乘的情况下建立了模型与算法。

并且比较得出若增加约束条件后最优路线可能改变的结论。

用程序验证了当站点数和线路数比目前所给的站点数和线路数更多时,所提出这种“点——线”逐步扩展搜索法在时间运行上几乎不受影响。

 

关键词:

有向图点线交替运算逐步扩展搜索法站点路线

一模型的分析

乘公交,看奥运比赛,其中大部分人将会乘坐公共交通工具(简称公交,包括公汽、地铁等)出行。

目前北京市的公交线路已达800条以上,使得公众的出行更加通畅、便利,但同时也面临多条线路的选择问题。

为此,某公司准备研制开发一个解决公交线路选择问题的自主查询计算机系统。

为了设计这样一个系统,其核心是线路选择的模型与算法,应该从实际情况出发考虑,满足查询者的各种不同需求。

需要解决如下问题:

1仅考虑公汽线路,给出任意两公汽站点之间线路选择问题的一般数学模型与算法。

并根据附录数据,利用所建立的模型与算法,求出以下6对起始站→终到站之间的最佳路线(要有清晰的评价说明)。

(1)、S3359→S1828

(2)、S1557→S0481(3)、S0971→S0485

(4)、S0008→S0073(5)、S0148→S0485(6)、S0087→S3676

2同时考虑公汽与地铁线路,解决以上问题。

3假设又知道所有站点之间的步行时间,给出任意两站点之间线路选择问题的数学模型。

因为站点数和线路数较多,因此这是一个在高度复杂网络中查找线路的问题,一般情况下用图论和矩阵的相应方法建立模型求解。

但本问题的拓扑结构复杂,可以有多种方法建立模型,大多数程情况下程序实现较为困难,特别是计算时间需要较长,不能适应适时快速查询的要求。

为此需要寻求一种快速、高效的方法。

问题涉及到的因素有人、道路、站点、车,还有省时、省钱的问题。

解决问题的关键为站点和线路的查找,因此建立一个站点与线路相对应的邻接矩阵,构造有向图;

又因为站点与线路的问题是元素与集合的问题,所以用集合理论来建立查找站点和路线,由站点找到线路,再进行优化,从而解决问题。

二问题初始化与模型假设

1.基本参数设定

A.相邻公汽站平均行驶时间(包括停站时间):

3分钟

B.相邻地铁站平均行驶时间(包括停站时间):

2.5分钟

C.公汽换乘公汽平均耗时:

5分钟(其中步行时间2分钟)

D.地铁换乘地铁平均耗时:

4分钟(其中步行时间2分钟)

E.地铁换乘公汽平均耗时:

7分钟(其中步行时间4分钟)

F.公汽换乘地铁平均耗时:

6分钟(其中步行时间4分钟)

注:

以上参数均为简化问题而作的假设,未必与实际数据完全吻合

2.定义集合与矩阵

A.线集合:

i=1,…1040;

B.站点集合:

i=1,…3957;

C.矩阵,i=1041,1042时为地铁线,1043步行。

前2到87列顺序记录线上所途径的站点,第88列记录票价情况,单一票价记为-2,分段计价记为-1,地铁线记为-3,。

D.矩阵,其中若站不在Li线上则,否则表示站位于Li线上的站点次序。

i=1,…1043;

j=1,…3957

3.假设以下几个条件:

A.公交车运行时间不因交通环境变化而改变。

B.乘环行公交到起始站乘客必须全部下车,重新乘车,视为换乘。

C.假设公交车的运量不受限制,车到站乘客即可上车。

D.假设同一地铁站对应的任意两个公汽站之间可以通过地铁站换乘(无需支付地铁费),只分别考虑一次地铁换公交,公交换地铁的时间,即13分钟。

E.假设人行走时的平均速度是一定的。

F.假设不论是公汽线,地铁线以及步行求最优解时只考虑单一因素。

三问题的预处理

该问题是要求给出公交查询系统的算法模型,便于乘客查询出行更加通畅、便利的乘坐路线。

以节省时间、最短路程、转乘次数最少建立模型进行优化,以适应不同需求的乘客。

该问题的重点在于找到直达,转乘一次可达,转乘两次以及两次以上可达的路线。

我们首先对题目中的数据进行了处理。

1.线路重编号

因为公交车的运行方式有三种:

单程,上下行,环行。

所以我们针对三类数据给出了三种处理方法。

单程是公交车上行和下行的站点完全相同,上下行是公交车的运行的过程有不同的站点,环行则没有起始站和终到站的区别。

这样我们把给出的520个编号的线路都分成了两条线,这两条线的编号相差520。

单程:

(以L001为例)

上行:

L001

S0619-S1914-S0388-S0348-S0392-S0429-S0436-S3885-S3612

-S0819-S3524-S0820-S3914-S0128-S0710

S0619

S1914

S0388

S0348

S0392

S0429

S0436

S3885

1

2

3

4

5

6

7

8

S3612

S0819

S3524

S0820

S3914

S0128

S0710

9

10

11

12

13

14

15

那么它的另一条路线是

下行:

L521(L001的反向线)

S0710-S0128-S3914-S0820-S3524-S0819-S3612-S3885-S0436

-S0429-S0392-S0348-S0388-S1914S0619

上下行(以L111为例)

L111

S3543-S0202-S1023-S2293-S3170-S1954-S1955-S1957-S2323-S2321-S2397

S3543

S0202

S1023

S2293

S3170

S1954

S1955

S1957

S2323

S2321

S2397

L531

S2397-S0147-S2321-S2323-S1957-S1955-S2962-S3170-S2293S2293-S1023-S3813-S3543

S0147

S2962

S3813

环行:

根据观察我们发现环行线有两种,可分别等价成两种不同的路线来考虑。

总的思想是去环。

单环(只是首尾相接的):

以L027为例,只需把他的首尾站去掉一个,然后当成只有去路的上行线来考虑。

它所对应的“下行线”的编号即为L547,它不通过任何一个站点。

第二种环:

采用破圈法以L425为例。

S1042-S0130-S3019-S0969-S3741-S1963-S3741-S3019-S0477-S1042,由S1963站点分开为上下行线。

L425S1042-S0130-S3019-S0969-S3741-S1963

S1042

S0130

S3019

S0969

S3741

S1963

L945S1963-S3741-S3019-S0477-S1042

S0477

据此,所有公交车都区分为上、下行线路。

这样所有线路相当于有1040路单行公交车。

这样做在计算中可以大大减少计算量:

(1)按先后顺序编号,可以看出公交车的运行方向,且只有编号小的站可以到达编号大的站。

(2)可以直接看出公交车各站点之间的距离。

2.站点处理

题目给出了3957个站点,若用关联矩阵建立任意两个点之间的关系,那么可以生成一个的矩阵,这样建立模型较为复杂。

所以先建立了一个简单的矩阵B。

它的行标为1—1043,列标为所有公交车线路中经过的最大站点数。

它反映的是i线上的车站顺序,即(i,j)元上存放的是在i线上的站点号。

并且在最后一列,增加一列,作为标志区分几种计价方式。

与前定义集合与矩阵中的B同。

3.费用计算

如果记录为-1,则为单一计价,此时费用c=1。

如果记录为-2,则为分段计价,需判断d与站数20,40的函数关系,进而求出费用c。

如果记录为-3,那么此时为地铁线路,这时判断两汽车站是否在同一地铁站点上,若在c=0,否则c=3。

如果记录为-4此时代表步行,c=0。

四模型建立

1算法思想

利用基于集合理论的“逐步点线扩展搜索法”。

核心思想:

根据所建立的关联矩阵,根据站点和线路的对应关系,“点——线——点”或“线——点——线”转换,即乘客在s站点,欲到t站点,则遍历所有经过s站点的公交线路,并求该路线上的站点组成的集合。

数学描述:

设表示经过站点的线路集,i=1,…3957;

表示经过第j条路线的站点集,j=1,…3957。

1.不需要转乘的情况:

在关联矩阵中表现为和两个不同的站点在同一行内可找到,即在同一条

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1