数学建模优秀论文

这在2007年数学模型竞赛中获奖:

坐公交车看奥运

双符号解释

:I号公交线路,i=1,2 …10400,为时表示上行公交线路,为时表示上行线路对应的下行公交线路;

:经过I路公交线路的G路公交站号;

:J号地铁路线,j = 1,2;

:穿过j地铁线的h地铁站的编号;

:转n次的路线;

:选择第k条路线的总时间;

:选择第K路的公交换乘次数;

:选择第k条线路的地铁换乘次数;

:选择K路线地铁和公交的换乘次数;

:选择K路线到地铁的公交换乘次数;

:K路线及乘坐M路公交车的收费方式,其中:

表示实行单一票价,表示实行分段计价;

:k路线,坐m公交的费用;

:选择K路线的总成本;

:选择K路线,乘坐多站公交的M路公交车;

:选择第K条路线,乘坐有多个地铁站的第N条地铁;

:表示对于第k路公交车的路线是否选择步行,变量为0-1,表示不选择步行,表示选择步行;

:第K条路线第N条地铁的路线是否选择步行是一个变量0-1,表示不选择步行,表示选择步行;

三模式假说

3.1基本假设

1.相邻公交站点平均行程时间(含停靠时间):3分钟。

2.相邻地铁站平均出行时间(含停靠时间):2.5分钟。

3.从公共汽车到公共汽车的平均换乘时间:5分钟(包括步行2分钟)。

4.地铁换乘地铁平均时间:4分钟(含步行2分钟)。

5.从地铁换乘公交的平均时间为7分钟(包括步行4分钟)。

6.从公共汽车换乘地铁的平均时间:6分钟(包括步行4分钟)。

7.公交票价:分为单一票价和分段计价;

单程票价:1元。

其中,分段票价为:0 ~ 20站:1元。

21 ~ 40站:2元。

40站以上:3元

8.地铁票价:3元(不考虑地铁线之间是否有换乘)

9.假设同一地铁站对应的任意两个公交站都可以通过该地铁站换乘,无需支付地铁费。

3.2其他假设

10,查询人换乘公交车的次数不得超过两次;

11.所有环形公交线路都是双向的;

12,地铁T2线也是双向环线;

13,所有公交车运行正常,不会堵车;

14,公交车和火车停靠车站。

四个问题的分析

在北京奥运会期间,公众如何在众多的交通路线中选择最佳的公交路线或换乘路线来观看奥运会是我们要解决的核心问题。为了解决这个问题,我们考虑从公交路线的角度寻求最佳路线。首先找出任意两个站点(公共场所和奥运场馆)的所有路线,存储起来,形成数据文件。这些线路可能包括直达公交线路,也可能由两条公交线路交汇形成(此时需要换乘一次公交),甚至有更多的公交线路交汇。然后在这些可行的路线中搜索最佳路线。

对于路线的评价,可以分别以总出行时间、总换乘次数、总费用为指标,也可以将三个指标标准化,赋予不同的权重,形成综合指数。最佳路线应该是最短的总旅行时间、最少的总成本或最少的总换乘次数,或者三者兼而有之。之所以这样考虑目标,是因为不同年龄的询问者会追求不同的目标。比如年轻人更热衷于比赛,所以会选择在最短的时间内到达奥运赛场观看比赛。而中年人可能更喜欢综合指数最低的,也就是更快,更经济,换乘不多。老年人总是愿意以最经济的方式观看奥运会。对于残疾人来说,转移的总次数是最少的。

不同的路线查询需求如下图4.1所示:

图4.1公交线路查询目标地图

经过分析,该问题的解决归结为寻找最短路径,但传统的Dijkstra最短路径算法并不适合该问题,因为Dijkstra算法采用的存储结构和计算方法难以应对总线网络拓扑的复杂性,并且由于执行效率的原因,难以满足实时系统的严格时间要求。

为此,在实际求解过程中,我们采用高效的广度优先搜索,其基本思想是每次搜索指定点,并将其所有未暴露的邻居加入搜索队列,循环搜索过程,直到队列为空。这种方法将在后面详细描述。

建模前的准备

为了方便后期的建模和编程,我们有必要在建立这个模型之前做一些准备工作。

5.1数据存储

因为给定的数据格式不是很标准,所以我们需要把它处理成我们需要的数据存储格式。从给定文件中读取该行上的站信息,并将其存储在txt文件中。存储格式为:两行数据,第一行表示上行的站点信息,第二行表示下行的站点信息,其中下行路由标签需要在原有标签的基础上加520,以区分上行和下行。

如果上行和下行的站名不完全相同,那么两行存储的数据也相应地不完全相同。以L009路公交为例:

l009:3739 0359 1477 2159 2377 2212482 2480 3439 1920 1921180 2020 3027 2981

l529:2981 3027 2020 0180 1 1920 3439 3440 2482 221 2377 21 2159 1478 0359 3739

L529是L009对应的下行链路。

如果下行是按上行原来的方式返回,那么两行存储数据中的站信息的顺序正好相反。以公交线路L001为例:

l 001:0619 1914 0388 0348 0392 0429 0436 3885 3619 3524 0820 3914 0128 0710

l 521:0710 0128 3914 0820 3524 0819 3612 3885 0436 0429 0392 0348 0388 19 0614 0619

如果是一个循环(如图5.1),可以等效为两行:

顺时针:s 1→S2→S3→S4→s 1→S2→S3→S4;

逆时针方向:s 1→S4→S3→S2→s 1→S4→S3→S2。

经过分析,这两条“单向路线”与原来的环形路线具有相同的功能。

图5.1圆形电路示意图

以循环公交线路L158为例。该环形总线的存储数据如下:

l 153:534 649 2355 12 812 176 5438+0 170 811 2600 172 1585 814 264 3565438

l673:534 2606 2604 251 17 1215 3513 264 814 1585 172 2600 811 170

这里,L153被视为上行线路,L673被视为下行线路。这样,可以为每条总线线路获得两行线路存储信息。

5.2搜索途经各站的公交线路。

对5.1中得到的信息进行处理,找出所有经过各站的公交线路,存储在数据文件中。

例如,通过站S0001的线路和通过站S0002的线路如下:

经过S0001的线路有:L421。

穿过S0002的线路有:L027 L152 L365 L395 L485。

5.3统计任意两条公交线路的交叉(相似)站点。

依次统计任意两条公交线路之间相交(相似)的站点,存储在1040×1040的矩阵A中,但这个矩阵的元素是维数不确定的向量,在具体实现中可以用队列来表示。

例如,公交线路L001与公交线路L025相交的站点为A [1] [25] = {s0619,s605438+0914,S0388,S0348}}。

六种模型的建立和求解

6.1模型1建立

针对第一个问题,模型只考虑公交线路,先找出经过任意两个公交站点最多换乘两次公交车的线路,然后根据不同查询者的需求搜索最优线路。

6.1.1公交路线的数学表达式

在任意两个站之间的路线中有许多情况。如果最多允许换乘两次,换乘路线分别对应图6.1中的四种情况。在这个图中,A和B是始发站和终点站,C、D、E和F是换乘站。

图6.1公交路线图

对于任意两个公交站点和,经过的公交线路表示为,是;通过的公交线路表示为,是;

1)直接路由(如图6.1(a))表示为:

2)转移路线(如图6.1(b))表示为:

其中:SC是的交集;

3)两次换乘的路线(如图6.1(c))表示为:

通过上面换乘路线的建模过程,我们可以看到,不同的换乘次数之间可以有一个迭代关系,然后就可以找到换乘次数更多的路线。但考虑到实际情况,转移次数不宜超过2次,故本文不讨论转移3次及以上的情况。

6.1.2最优路径模型的建立

找出任意两个公交站之间的可行路线,你可以根据不同的需求选择这些路线,找出最优路线:

1)以最短时间为最优路径模型:出行时间等于上车时间和换乘时间之和。

(6.1公式)

其中,第k条路线为上述换乘路线中的一条或多条。

2)换乘次数最少的模型为最优路径;

(公式6.2)

该模型相当于按照直达、一次换乘、二次换乘的优先顺序考虑上述换乘路线。

3)以最低成本为最优路径的模型:

(类型6.3)

式中(公式6.4)

6.1.3模型的算法描述

针对该问题的优化模型,我们采用广度优先搜索来寻找任意两个站点之间的可行路径,然后搜索最优路径。现在将这个算法应用到这个问题上,参考图6.2描述如下:(在这个图中,,,,代表公交站,,,代表公交线路。其中,图(a)、(b)、(c)分别表示点对点直达、一次换乘和两次换乘的情况)。

图6.2公交直达和换乘示意图

(1)首先输入要查询的两个站和(假设始发站是终点站);

(2)搜索出经过的公交线路(I = 1,2,...,m)和路过的公交线路(= 1,2,...n)并将它们存储在数据文件中;判断是否有相同的路线,如果站与站之间有直达路线(如图6.2),那么这条路线就是换乘次数最少的路线(换乘次数等于0),如果有多条直达路线,可以在此基础上找出时间最少的路线;通过这种方式,可以找到所有直接路由并将其存储在数据文件中;

(3)在经过的公交线路中另找一个站点(如图6.2),在经过的公交线路中另找一个站点。判断和之间是否有相同点。如果有(如图6.2),车站和(如图6.2)之间有换乘路线,同一点是换乘站。以这种方式,找到另一个传输路径并存储在数据文件中;

(4)搜索出除该线路上的站点外,经过另一站点(如图6.2所示)的公交线路(如图6.2所示),并找出该公交线路上的其他站点;判断如果与途经公交线路中的其他站点存在相同点(如图6.2),则与之间存在第二条换乘线路(如图6.2,,),相同点和点为换乘站;将第二传送路线存储在数据文件中;

(5)根据上述存储的经过两个站点的不同路线的不同模型搜索最佳路线,得到查询者满意的最佳路线。

6.1.4模型1的解决方案

根据上述算法和前面建立的第一个模型,用VC++编程(程序见附录),可以得到不同目标下的最优路线。

1)以时间消耗最小为目标的最优路线。

从始发站S3359到终点站S1828至少需要64分钟,耗时最少的最优路线(换乘次数少、费用低的路线)有28条(注:表6.1选取其中的10);

从始发站S1557到终点站S0481至少需要106 min,有两条最优路线耗时最少。从始发站S0971到终点站S0485至少需要106分钟,有两条最优路线耗时最少。从始发站S0008到终点站S0073至少需要67分钟,有两条最优路线耗时最少。从始发站S0148到终点站S0485至少需要106分钟,有三条最优路线耗时最少。从始发站S0087到终点站S3676至少需要46分钟,耗时最少的最优路径为12。耗时最少的最优路径如表6.1所示。

表6.1耗时最少的最优路径表

公交线路始发站换乘站公交线路换乘站公交线路换乘站公交线路换乘站公交线路终点站换乘次数

s 3359 l 0535s 2903 l 1005s 1784 l 0687s 1828 2 3

s 3359 l 0535s 2903 l 1005s 1784 l 0737s 1828 2 3

s 3359 l 0123s 2903 l 1005s 1784 l 0687s 1828 2 3

s 3359 l 0123s 2903 l 1005s 1784 l 0737s 1828 2 3

s 3359 l 0652s 2903 l 1005s 1784 l 0687s 1828 2 3

s 3359 l 0652s 2903 l 1005s 1784 l 0737s 1828 2 3

s 3359 l 0844s 2027 l 1005s 1784 l 0687s 1828 2 3

s 3359 l 0844s 2027 l 1005s 1784 l 0737s 1828 2 3

s 3359 l 0844s 1746 l 1005s 1784 l 0687s 1828 2 3

s 3359 l 0844s 1746 l 1005s 1784 l 0737s 1828 2 3

s 1557 l 0604s 1919 l 0709s 3186 l 0980s 0481 2 3

s 1557 l 0883s 1919 l 0709s 3186 l 0980s 0481 2 3

s 0971 l 0533s 2517 l 0810s 2480 l 0937s 0485 2 3

s 0971 l 0533s 2517 l 0296s 2480 l 0937s 0485 2 3

s 0008 l 0198s 3766 l 0296s 2184 l 0345s 0073 2 3

s 0008 l 0198s 3766 l 0296s 2184 l 0345s 0073 2 3

s 0148 l 0308s 0036 l 0156s 2210 l 0937s 0485 2 3

s 0148 l 0308s 0036 l 0156s 3332 l 0937s 0485 2 3

s 0148 l 0308s 0036 l 0156s 3351 l 0937s 0485 2 3

s 0087 l 0541s 0088 l 0231s 0427 l 0097s 3676 2 3

s 0087 l 0541s 0088 l 0231s 0427 l 0982s 3676 2 3

s 0087 l 0541s 0088 l 0901s 0427 l 0097s 3676 2 3

s 0087 l 0541s 0088 l 0901s 0427 l 0982s 3676 2 3

s 0087 l 0206s 0088 l 0231s 0427 l 0097s 3676 2 3

s 0087 l 0206s 0088 l 0231s 0427 l 0982s 3676 2 3

s 0087 l 0206s 0088 l 0901s 0427 l 0097s 3676 2 3

s 0087 l 0206s 0088 l 0901s 0427 l 0982s 3676 2 3

s 0087 l 0974s 0088 l 0231s 0427 l 0097s 3676 2 3

s 0087 l 0974s 0088 l 0231s 0427 l 0982s 3676 2 3

s 0087 l 0974s 0088 l 0901s 0427 l 0097s 3676 2 3

s 0087 l 0974s 0088 l 0901s 0427 l 0982s 3676 2 3

2)以换乘次数最少为目标的最优路线。

始发站S3359到终点站S1828的最小换乘次数为1,有两条换乘次数最少的最优路线(时间更短、费用更低的路线)。

始发站S1557到终点站S0481的最小换乘次数为2,换乘次数最少的两条最优路径与耗时最少的路径相同(见表6.1,下同);

始发站S0971到终点站S0485的最小换乘次数为1,换乘次数最少的最优路径为1;

始发站S0008到终点站S0073的最小换乘次数为1,换乘次数最少的最优路径有9条;

始发站S0148到终点站S0485的最小换乘次数为2次,换乘次数最少的三条最优路径与耗时最少的最优路径相同;

始发站S0087到终点站S3676的最小换乘次数为2,换乘次数最少的6条最优路径与耗时最少的最优路径相同;

其余换乘时间最少的最佳路线如表6.2所示。

表6.2最短换乘时间的最优路径表

始发站公交线路、中转站公交线路、终点站公交线路耗时成本

s 3359 l 0956s 1784 l 0687s 1828 101 3

s 3359 l 0956s 1784 l 0737s 1828 101 3

s 0971 l 0533s 2184 l 0937s 0485 128 3

s 0008 l 0679s 0291 l 0578s 0073 83 2

s 0008 l 0679s 0491 l 0578s 0073 83 2

S0008 L0679 S2559 L0578 S0073 83 2

S0008 L0679 S2683 L0578 S0073 83 2

s 0008 l 0679s 3614 l 0578s 0073 83 2

S0008 L0875 S2263 L0345 S0073 83 2

S0008 L0875 S2303 L0345 S0073 83 2

s 0008 l 0875s 3917 l 0345s 0073 83 2

S0008 L0983 S2083 L0057 S0073 83 2

3)以费用最小为目标的最优路径。

始发站S3359到终点站S1828费用最少为3元,费用最少的最优路线(时间较短、换乘次数较少的路线)有30条,其中28条路线耗时64 min,换乘次数为2次,另外两条路线耗时101 min,换乘次数为1。

始发站S1557到终点站S0481费用最少为3元,有两条费用最少的最优路线,所需时间为106 min,换乘次数为2次;

始发站S0971到终点站S0485费用最少为3元,费用最少的最优路线有三条,其中两条耗时106 min,换乘次数为两次,另一条耗时128 min,换乘次数为1;

始发站S0008到终点站S0073费用最少2元,费用最少的最优路线有9条,所需时间83 min,换乘次数1次;

始发站S0148到终点站S0485费用最少为3元,费用最少的最优路线有三条,所需时间为106min,换乘次数为2次;

从始发站S0087到终点站S3676费用最少为3元,费用最少的最优路线为12,耗时46 min,有两次换乘。

成本最低的最优路径如表6.1和表6.2所示。

6.2.1模型2建立

针对第二个问题,模型同时考虑公交和地铁,找出可行路线,进而找到最优路线。对于地铁线路,也可以作为公交线路。本质上没有区别,只是票价、时间、换乘时间不同。所以地铁站可以相当于公交站,地铁和公交的换乘站可以作为两者的交汇点。因此,该车型的公交换乘路线模型与车型1基本相同。现在建立了模型2下的最优路径模型。

1)以最短路径为最优路径模型:可行路径的总时间为公交(公交地铁)时间与公交地铁换乘时间、公交地铁换乘时间之和。

(类型6.5)

其中,第k条线路是公交、地铁的换乘线路中的一条或多条。

2)以换乘次数最少的路线作为最优路线的模型;

(公式6.6)

该模型相当于以上换乘路线按照直达、一次换乘、二次换乘(包括公交与地铁之间的换乘)的优先顺序考虑。

3)以费用最少的路线作为最优路线模型:可行路线的费用是公交和地铁费用之和。

(类型6.7)

其中,(6.4)还是比较满意的。

6.2.2模型2的解决方案

不难发现,第一个问题是第二个解决方案的一部分。在第二个问题中,新生成的最优解主要来自于换乘地铁的路线和到附近一个车站的路线,如下图所示:

从A点到B点,图(A)显示了在两条公交线路上通过相邻公交站点S1和S2的换乘;图(b)为地铁站二次换乘;图(c)显示另一条公交线路作为二次换乘的中介。

铁路线的引入使得解决问题更加困难。为了直观地了解为数不多的两条铁路之间的交叉关系,我们通过matlab编程制作了两条铁路的位置关系图(程序见附录),如图6.3所示。

图6.3t 1与T2铁路位置的关系

注:图4中直线代表T1铁路线,圆圈代表T2铁路线,数值代表车站。例如,1代表T1铁路线上的D1火车站,26代表T2铁路线上的d 26火车站。这张图和网上找到的北京地铁示意图一致(如图6.4)。

图6.4北京地铁示意图

同样,将地铁线路等效为公交线路得到任意两站之间的可行路线,然后用模型2建立的模型表达式表示目标函数,用VC++编程得到考虑地铁情况的最优路线(程序见附录)。

1)以换乘次数最少为目标的最优路线。

始发站S0008到终点站S0073的最小换乘次数为1,换乘次数最少的最优路径为1;

始发站S0087到终点站S3676的最小换乘次数为0,即有直达路线,直达路线下的最优路线为1;

始发站S0148到终点站S0485的最小换乘次数为2次,换乘次数最少的最优路径为10;

始发站S0971到终点站S0485的最小换乘次数为2次,换乘次数最少的最优路径有20条(其中10列在表6.4中)。

始发站S1557到终点站S0481的最小换乘次数为2次,换乘次数最少的最优路径为17(其中10列在表6.4中)。

始发站S3359到终点站S1828的最小换乘次数为两次,换乘次数最少的最优路径有两条。

2)以时间消耗最小为目标的最优路径。

从始发站S3359到终点站S1828至少需要64分钟,耗时最少的最优路线(换乘次数少、费用低的路线)有28条(注:表6.1选取其中的10);

从始发站S1557到终点站S0481至少需要109 min,耗时最少的最优路径为17,与换乘次数最少的最优路径相同。

从始发站S0971到终点站S0485至少需要96分钟,耗时最少的20条最优路径与换乘次数最少的路径相同。

从始发站S0008到终点站S0073至少需要55分钟,有三条最优路线耗时最少。

从始发站S0148到终点站S0485至少需要87.5 min,耗时最少的最优路径有10条,与换乘次数最少的最优路径相同。

从始发站S0087到终点站S3676至少需要33分钟,耗时最少的最优路径为1,与换乘次数最少的最优路径相同。

3)成本最低的最优路径

始发站S3359到终点站S1828费用最少为3元,有两条费用最少的最优路线(时间较短、换乘次数较少的路线);

始发站S1557到终点站S0481成本最少的是3元,有17条成本最少的最优路线;

从始发站S0971到终点站S0485的最小成本是5元,有20条成本最小的最优路线。

从始发站S0008到终点站S0073费用最少的是2元,有1条费用最少的最优路线;

从始发站S0148到终点站S0485费用最少的是5元,有10条费用最少的最优路线;

从始发站S0087到终点站S3676成本最小的是2元,有1条成本最小的最优路线;

在这种情况下,我们只考虑可以通过地铁站换乘的情况,不通过地铁站的情况就是模型1的求解结果。模型2的求解结果见附录1。

6.3.1模型3建立

针对第三个问题,模型在出行方式中考虑了步行方式,更符合实际。因为当起点和换乘点、终点站或者换乘站和换乘站之间只有几站的时候,当然在这个路段选择步行方式更好。

因此,做出以下假设:

1.如果有某条路线,且其两端之间的停靠站数小于等于2(即最多经过4站),那么这条路线将通过步行到达目的地。其他情况由模式2处理。其中,线路两端之间的停靠站数量根据公交直达换乘线路确定。

2.相邻公交车站(包括地铁站)之间的平均步行时间为5分钟。

3.如果选择走公交线路,公交车之间的换乘次数会减少1;如果选择走地铁线,地铁之间的换乘次数会减少1,除了直达线。

直达和一两条换乘路线需要步行的路段示意图如图6.5所示。图(A)中表示起点A和终点B可以直达,相隔站数等于2,所以我们选择步行;在图(B)中,表示一次换乘即可到达起点A和终点B,其中AC段的停靠次数等于2,所以我们选择步行。同样,如果CB段的停靠站数小于2,我们也选择步行。图(c)中选择行走方式的依据是类似的。

图6.5行走示意图

是否选择步行模式的功能:

(公式6.8)

其指示第M条公交线路是否在行走,以及第N条地铁线路是否在行走;

对于直达路线,如果起点和终点之间的站数少于2站,则步行,否则乘坐公共汽车。需要转移的路线的最佳路线模型讨论如下:

1)以最短路径为最优路径模型:总路径时间等于乘车时间加上步行时间,再加上换乘时间。

(类型6.9)

其中,第k条线路是公交、地铁的换乘线路中的一条或多条。

2)以换乘次数最少的路线为最优路线模型:每走一次路,换乘火车就少一次。

(类型6.20)

该模型相当于以上换乘路线按照直达、一次换乘、二次换乘、三次换乘(包括公交与地铁之间的换乘)的优先顺序考虑。

3)以成本最小的路线作为最优路线的模型;

(公式6.21)

其中,(6.4)还是比较满意的。

七种模型的优缺点及其改进

7.1模型评估

7.1.1模式的优势

1,模型由简单到复杂逐步建立,更接近现实。

2.本文模型简单,算法直观,易于编程。

3.该模型更加注重数据的处理和存储,大大提高了查询效率。

4.这种模式注重效率的提高。通过提取大量的特征信息,结合有效的算法,完全可以满足实时系统的要求。

7.1.2模型缺点

在建模和编程的过程中,使用的数据只是真实数据的一个近似值,因此结果可能与真实情况有所不同。

7.2模型的改进

以上模型主要是以公交线路为基础,寻找公交线路的交汇站作为换乘站,然后找出可能经过任意两个站点的公交线路。我们还可以从公交站点的角度建立一个有向加权图(如图7.1)。这个有向加权图是针对第三个问题建立的图论模型,第一个和第二个问题只是这个模型的简化。图7.1是公交线路标签,是公交线路的上行或下行,、、和是公交线路上的站标;代表地铁线号,有两个方向,、、是地铁线上的站号;公交地铁可以在公交站和地铁站之间换乘。如果把图7.1中的地铁线换成公交线,为了表示公交之间换乘所需的时间或费用,同样的换乘站要用两个站来表示。

图7.1公交线路有向加权图

根据不同的目标,对不同站点之间的边赋予不同的权重。然后利用图论的相关算法找到对应的最短路径。

1)以最短时间为目标时,赋予每条边时间的权重。给同一条线上任意两个站点之间的边赋值时,其权重等于站点之间的公交线路数与平均时间的乘积。当某条线两点间的停靠次数小于3时,选择步行,线的重量等于步行时间。在不同的公交和地铁之间换乘时,要给出不同的权重来表示换乘时间。

例如(如图7.1所示):

当j & gt在4点钟,边缘重量为;,

从换乘到不必要的换乘,但是根据假设,你应该选择步行,而且它的边重;,

从到,要么乘公共汽车,然后换乘火车,要么步行。根据行走的假设,站与站之间的间隔小于2,所以选择行走,其边权值;,

当g & gt4、和之间的边权重;,

的边缘重量;

的边缘重量;

当j & gt4、g & gt在4点钟位置,到的路径长度为:

当,g & gt4点,选择从走到,再坐地铁到,路径长度为;;

在求出任意两点间可行路径的路径长度后,及时搜索最短路径的可行路径作为最优路径。

2)以最小成本为目标时,赋予每条边成本的权重。

公交车站之间的路权根据(6.4)分配。

当公交线路按单一票价收费时,对于世界上任意两个公交车站和公交车来说,

如果是,选择走;如果是,那么;

公交线路分段计价时,如果,那么;如果是,那么;如果是,那么;如果是,那么;

地铁线上任意两个站和站,如果有,选择步行;如果是,那么;中转站和中转站的边权重都是0,即;那么从换乘站到车站的可行路线的路径长度为:

如果是,那么选择从走到;

如果,那么;

也可以求出任意两点间可行路径的路径长度,然后搜索最短路径作为代价最优路径。