当前位置:   article > 正文

2024年五一数学建模B题思路及实现(省一)

2024年五一数学建模B题思路及实现(省一)

题目

  随着城市化的持续发展,交通规划在新兴城市建设中显得尤为关键。在未来新城规划中,自动驾驶技术预期将成为交通出行的主导模式,彻底改变出行方式和城市规划的基础理念。自动驾驶车辆,得益于先进的传感器、智能算法和通信技术,能够自动遵循预设路线,无需人为操作。将自动驾驶技术整合到一个特定未来新城的交通需求规划中,以期实现更高效、更可持续的城市交通网络。
  交通需求指从特定起点出发,到达指定终点的交通量(车辆数)。以图1中的交通网络1为例,假设(起点,终点)对(1,4)的交通需求为100辆,其中40辆分配到路径1-2-4,60辆车分配到路径1-3-4,该过程称为交通需求分配。在道路完全通畅的情况下,从起点1到达终点4的交通量比例(以下称为“可达率”)为(40+60)/100=100%。而一旦产生突发状况,例如路段1-2发生了交通事故导致该路段无法通行,那么原本选择通过1-2-4路径的交通需求将无法满足。此时,只有通过路径1-3-4的交通需求才能够被实现,交通需求可达率为60/100=60%。
图1 交通网络1

图1 交通网络1

  假设每个(起点,终点)对之间使用的路径数不超过5(各路段长度均为单位1,优先选择距离短的路径)。假设交通网络中所有车辆均为无人驾驶车辆,并且所有车辆都服从系统预先规划的路径进行出行。注意:本题的图2和图3中的路段为双向路段,即路段2-3和路段3-2是两条不同的路段。在本题中,不要求交通流量值取整数,即交通流量值可以为任意的非负实数。请依据附件1~3,建立数学模型,完成以下问题:
问题1: 图2为一个小型交通网络。各(起点,终点)对之间的交通需求见附件1。请建立数学模型,给出各(起点,终点)对之间交通需求分配到对应路径上的交通量,使得网络中任意1条路段出现突发状况时(每个路段出现突发状况概率相同),网络中所有交通需求的期望可达率最大。在表1中填入指定(起点,终点)对规划的路径,以及对应分配的交通量(若规划路径数不足5条无需填满表格)。
在这里插入图片描述

图2 交通网络图2
表1 问题1结果
(起点)规划路径(依次给出经过的所有节点,例如:27-35-41-10-16-36-6)分配交通量
(1,9)
(3,7)

问题2: 在图3所示的交通网络中,各(起点,终点)对之间的交通需求见附件2。请建立数学模型,给出各(起点,终点)对之间交通需求分配到对应路径上的交通量,使得网络中任意5条路段出现突发状况时(每个路段出现突发状况概率相同),网络中所有交通需求的期望可达率最大。在表2中填入指定(起点,终点)对规划的路径,以及对应分配的交通量(若规划路径数不足5条无需填满表格)。
在这里插入图片描述

图3 交通网络3
表2 问题2结果
(起点)规划路径(依次给出经过的所有节点,例如:1-2-3-6-9)分配交通量
(27,6)
(19,25)

问题3: 在交通网络3中,各(起点,终点)对之间的交通需求见附件2,各路段的容量上限见附件3。请建立数学模型,给出各(起点,终点)对之间交通需求分配到对应路径上的交通量,使得网络中任意5条路段出现突发状况时(每个路段出现突发状况概率相同),网络中所有交通需求的期望可达率最大,且交通需求分配到对应的路径后,各路段上的交通量不能超过路段容量(路段交通量计算方法:路段交通量=经过该路段的路径交通量之和。例如,路径1-0-6与路径1-0-3均经过路段1-0,则路段1-0交通量=路径1-0-6交通量+路径1-0-3交通量)。在表3中填入指定(起点,终点)对规划的路径,以及对应分配的交通量(若规划路径数不足5条无需填满表格)。

表3 问题3结果
(起点)规划路径(依次给出经过的所有节点,例如:1-2-3-6-9)分配交通量
(32,39)
(17,8)

问题4: 现计划在交通网络3中新修建6条路段(单向直线路段且长度为单位1,例如节点31至节点32),新建路段起点和终点必须是交通网络中的任意两个节点,并且假设新建路段的容量足够大。新建路段不能跨越其他路段(例如,不能在节点21与节点39之间修建路段),只能在网络内部修建(例如,不能在节点4与节点34之间修建路段)。请建立数学模型,给出新修建路段方案,使得在新网络中任意5条路段出现突发事故时(包括新建路段,每个路段出现突发状况概率相同),网络中所有交通需求的期望可达率尽可能最大,且交通需求分配到对应的路径后,各路段上的交通量不能超过路段容量(新建路段容量足够大,不用考虑这个因素)。在表4中填入期望可达率最大的5种方案及其可达率。

表4 问题4结果
-新建路段1新建路段1新建路段1新建路段1新建路段1新建路段1可达率
方案1
方案2
方案3
方案4
方案5

关键词 :蒙特卡洛法   目标规划模型  Yen算法  CVRP目标规划模型

摘 要:

  本文针对交通路径规划问题进行研究,运用了蒙特卡洛法、Dijkstra算法、Yen算法、联合学习策略等方法进行分析,建立了目标规划模型、CVRP规划模型,旨在得出得出面对特殊情况都具有较高通达率的规划路径。
  针对问题一,本文基于Dijkstra算法求解出两站点间的最短路径,引入变量p评判各规划路径的正常与否,结合附件得出约束条件,建立目标规划模型: m a x W = p 1 q a + p 2 q b + p 3 q c + p 4 q d + p 5 q e + p 6 q f 180 max W=\frac{p_{1}q_{a}+p_{2}q_{b}+p_{3}q_{c}+p_{4}q_{d}+p_{5}q_{e}+p_{6}q_{f}}{180} maxW=180p1qa+p2qb+p3qc+p4qd+p5qe+p6qf  式中, q i q_{i} qi表示第 i i i条规划路径的分配交通量。求解时采用蒙特卡洛法随机生成各规划路径上的分配交通量,通过多次重复实验得出最后结果(见表5-3)。
  针对问题二,本文采用 Y e n Yen Yen算法对最短路径的求解进行改进,同时得出多条规划路径。在确立所有规划路径后仍然采用蒙特卡洛法,重复进行10000次实验,得出各规划路径上的理论分配交通量(见表5-6)。
  针对问题三,本文采用联合学习策略,将每条路段容量上限、流量动平衡、规划路径和行驶全长作为变量,将最终通达率为目标函数,建立 C V R P CVRP CVRP目标规划模型: m i n ∑ i , j ∈ A c i j x i j min\sum_{i,j\in A}c_{ij}x_{ij} mini,jAcijxij  通过Matlab求解得出每条规划路径上的分配交通量(见表5-7)。
  针对问题四,本文综合遍历搜索法、蒙特卡洛法和Yen算法,分别用于突发事故发生前后路径对比、随机生成6条新建路段、查找新建路段后任意两点间的多条规划路径。以全局可达率为目标函数,以路径容量、路径长度、新路选址为约束条件,建立全局可达率目标规划模型: w = 1 n ∑ 1 n ∑ n = 1 n 2 l ( i , j ) − l ′ ( i , j ) l ( i , j ) , i , j ∈ A , n ∈ N ∗ w=\frac{1}{n}\sum\frac{1}{n}\sum_{n=1}^{n}\frac{2l(i,j)-l^{'}(i,j)}{l(i,j)},i,j\in A,n\in N^{*} w=n1n1n=1nl(i,j)2l(i,j)l(i,j),i,jA,nN  通过Matlab得出5种可达率最高的建设方案(见表5-9)。

一、问题背景与重述

1.1问题背景

  随着人工智能和机器学习等技术的不断发展,自动驾驶技术也在不断进步和完善,方便了人们的出行,预计未来将在汽车行业以及交通运输领域发挥越来越重要的作用。自动驾驶技术是指利用各种感知器、计算机以及控制系统,使汽车自主地在道路上行驶而无需人工干预的技术。这项技术的发展可以大大提高交通安全性、减少交通事故、缓解交通拥堵、节约能源和减少排放等。自动驾驶技术作为近年的社会热点,引发了许多学者的研究讨论,如高镇海等人建立健全自动驾驶社会性行为的评价体系1
  基于上述情况,本文针对未来新城背景下,自动驾驶技术的交通需求规划和可达率进行研究。目前的自动驾驶技术没有那么完善,汽车的可达率受车流量、事故等的影响,不稳定因素导致车辆无法到达的问题亟待解决。以往的学者也研究过自动驾驶线路优化问题:丁志杰等人提出了一种矿山场景下的自动驾驶矿车节能路径规划方法2。在前人研究的基础上,本文建立模型,基于特定交通网络对不同道路的交通需求进行分析,旨在获取交通需求中的最大期望可达率。

1.2问题重述

  本文通过建立数学模型,解决以下问题:
1.建立数学模型,根据附件1的数据,求得所有交通需求的最大期望可达率,并完成表1规划的路径和对应的交通量;
2.建立数学模型,根据附件2的数据,求得所有交通需求的最大期望可达率,并完成表1规划的路径和对应的交通量;
3.在问题二的基础上,要求各路段上的交通量不能超过路段容量,将规划的路径,以及对应分配的交通量填入表3;
4.建立数学模型,给出新修建6条路段方案,在表4中填入期望可达率最大的5种方案及其可达率。

二、问题分析

2.1对于问题一的分析

  问题一要求结合各个路段的交通需求量,给出每个路径上最适合的交通量。本文结合附件所给出的交通需求量,首先求出起点和终点之间的一条最短路径作为基准路径。在得出一条最短路径的基础上,寻找其他最短路径,结合小路径可能发生突发状况的情况,通过多次重复实验得出最优分配交通量。

2.2对于问题二的分析

  问题二要求得出在任意5条路段出现突发状况时,期望可达率最大情况下各规划路径的分配交通量。对于这种较为复杂的KSP问题,本文基于Dijkstra算法对其进行优化,同时求出多条最短路径。随后将任意5条路段发生突发状况的事件考虑进去,通过多次实验得出最优分配交通量。

2.3对于问题三的分析

  问题三在问题二的基础条件上,加入了路段容量,要求在此基础上得出最优规划路径和分配交通量。对于该种有容量约束的车辆路径规划问题,采用传统的方法处理起来较为复杂,本文参考相关文献,结合图神经网络算法对该问进行求解,同时得出最短路径和分配交通量。

2.4对于问题四的分析

  问题四要求在原有交通网络的基础上新建6条路段,以确保新网格在任意5条路段发生突发情况下,任意两点间都存在着较高的可达率。本文考虑将可达率作为目标函数,将6条路段的选址、路段容量、5条突发情况的路段作为约束条件,通过不断生成随机数,通过大量训练寻找合适的修建路段。

三、模型假设

  结合本题的实际,为确保模型求解的准确性和合理性,本文排除一些因素的干扰,提出以下几点假设:
1.假设各个小路径之间相互独立;
2.假设交通网络不受恶劣天气等其他突发事件的影响;
3.假设每条小路径的都能够得到利用,不会出现不使用小路径的情况。

四、符号说明

  为便于问题的求解,本文给出以下符号说明:

符号说明
r ( i , j ) r(i,j) r(i,j)无突发状况下从 i i i点到 j j j点间的最短路径
r ′ ( i , j ) r^{'}(i,j) r(i,j)突发状况下从i点到j点间的最短路径
L ( i , j ) L_{(i,j)} L(i,j) i i i点到 j j j点的大路径上的总交通量
l ( a , b ) l_{(a,b)} l(a,b)从a点到b点的小路径交通量
p p p路径是否存在突发状况
x i , 0 x_{i,0} xi,0从起点到终点的路径
C C C容量上限集合
u u u顶点
v v v节点
B B B路径集合
A A A交通线路站点集合
n n n两点间所有最短路径的数量
q i q_{i} qi i i i条规划路径的分配交通量
l ( i , j ) l(i,j) l(i,j)无突发状况下两点间的最短路径长度
l ′ ( i , j ) l^{'}(i,j) l(i,j)发生突发状况下两点间的最短路径长度
x ( i , j ) x_{(i,j)} x(i,j)节点 ( i , j ) (i,j) ij之间是否存在规划的车辆路径

五、模型的建立与求解

  经过以上的分析和准备,本文将逐步建立以下数学模型,进一步阐述模型的实际建立过程。

5.1问题一的建立与求解

5.1.1基于Dijkstra算法的最短路径规划

  对于求解的规划路径,其中包含了一系列的小路径,因此在求解时需要去综合考虑各个小路径的理论分配交通量,求解时较为繁琐。本文在求解时结合假设1 (各个小路径之间相互独立),对大于等于两条小路径构成的路径进行拆解,将从 i i i点到 j j j点的大路径上的总交通量 L ( i , j ) L_{(i,j)} L(i,j) 视为由n个小路径上的交通量 l ( a , b ) l_{(a,b)} l(a,b)所组成,其中 l ( a , b ) l_{(a,b)} l(a,b)表示从a点到b点的小路径交通量,满足: L ( i , j ) = ∑ n l ( a , b ) L_{(i,j)}=\sum^{n}l_{(a,b)} L(i,j)=nl(a,b)  但在拆解过程中首先需要确保的是,所拆解的大路径是从 i i i点到 j j j点的最短路径。这就意味着在拆解前,本文首先对两点间的最短路径进行求解。假设从 i i i点到 j j j点的大路径为 L ( i , j ) L_{(i,j)} L(i,j) ,将所有顶点的最短路径估计值设置为无穷大,起始点设为0。随后结合 D i j k s t r a Dijkstra Dijkstra算法3进行求解,具体流程图如下:
在这里插入图片描述

图5-1 Dijkstra算法流程图

  重新创建优先队列,并将起始点1代入优先队列。当优先队列非空时,取出队列中具有最小交通量的顶点 u u u。随后对与顶点 u u u相邻的每个节点 v v v,计算u和v之间的交通量,若该交通量小于目前 v v v的最短路径估计值,则更新 v v v的最小交通量,并将 v v v加入优先队列。随后不断重复寻找与下一个节点间的最小交通量,直到确立大路径的最短路径,其模型可表示为: m i n L ( i , j ) = ∑ n = 1 n m i n l ( i , j ) minL_{(i,j)}=\sum_{n=1}^{n}minl_{(i,j)} minL(i,j)=n=1nminl(i,j)  上式是在各个路径均不存在突发情况下所得出的理论交通量,在实际生活中不可避免地存在着突发状况,进而导致交通出现瘫痪,即满足 l ( a , b ) = 0 l_{(a,b)}=0 l(a,b)=0。此时随之而来的问题是,若出现突发状况的路段恰好在规划路径上,则该条路径就无法投入使用。因此,本文引入变量 p p p用来评判路径的正常与否。 p = { 1 , 有事故 0 , 无事故 p={1,0, p={1,有事故0,无事故

5.1.2约束条件

  问题1要求给出从1到9和从3到7的所有规划路径及其分配交通量。在此本文以起点为1,终点为9的情况为例,对其约束条件进行判断。根据 D i j k s t r a Dijkstra Dijkstra算法,从站点1到站点9的最短路径可以表示为: m i n L ( 1 , 9 ) = ∑ n = 1 n m i n l ( a , b ) minL_{(1,9)}=\sum_{n=1}^{n}minl_{(a,b)} minL(1,9)=n=1nminl(a,b)  由 M a t l a b Matlab Matlab计算得出,该种情况下的最短路径长度为4,其所有可能的规划路径共有5种,具体分布情况如下图所示:
在这里插入图片描述

图5-2 最短规划路径图
  本文对这六条规划路径分别命名为a,b,c,d,e,f以方便进一步分析处理。
表5-1 (1,9)对最短路径计算结果
路径编号规划路径最小交通需求
a1-2-3-6-9110
b1-2-5-6-9100
c1-2-5-8-9100
d1-4-5-8-9120
e1-4-7-8-9100
f1-4-5-6-9100

  要确保规划路径可以全线运输不受阻碍,则需要确保各规划路径在路径上任意两点间的交通需求都能够满足且不能超出。由此,本文通过查找附件1中相关数据,得出各规划路径的最大承载量如上表所示。将规划路径的最大承载量命名为 q i q_{i} qi,则: s . t . { 0 < a ≤ 110 0 < b ≤ 100 0 < c ≤ 100 0 < d ≤ 120 0 < e ≤ 100 0 < f ≤ 100 a + b + c + d + e + f = 180 s.t.{0<a1100<b1000<c1000<d1200<e1000<f100a+b+c+d+e+f=180 s.t. 0<a1100<b1000<c1000<d1200<e1000<f100a+b+c+d+e+f=180  同时,将规划路径是否能够正常投入使用考虑进去,则满足约束条件: s . t . { p 1 + p 2 + p 3 + p 4 + p 5 + p 6 = Z , Z ∈ 0 , 1 , 2 , 3 , 4 , 5 , 6 p i = 1 o r 0 , i = 1 , 2 , 3 , 4 , 5 , 6 s.t.{p1+p2+p3+p4+p5+p6=Z,Z0,1,2,3,4,5,6pi=1or0,i=1,2,3,4,5,6 s.t.{p1+p2+p3+p4+p5+p6=Z,Z0,1,2,3,4,5,6pi=1or0,i=1,2,3,4,5,6$$  同理可得从3到7的所有规划路径及其分配交通量。根据计算结果,从3到7的规划路径共有六条,命名为f,g,h,i,j,其对应的最小交通需求如下表所示:

表5-2 (3,7)对最短路径计算
路径编号规划路径最小交通需求
g3-2-1-4-7120
h3-2-5-4-7120
i3-2-5-8-7120
j3-6-5-8-7130
k3-6-9-8-7130
l3-6-5-4-7120

  针对上表,同样可以得出各规划路径的约束条件,即最大承载量。考虑到篇幅问题,本文在此不赘述,具体约束条件见附录。

5.1.3建立目标规划模型求解

  问题一要求出满足最大期望可达率最大情况下的各规划路径上的分配交通量,本文结合上述约束条件和最短规划路径,建立目标规划模型: m a x W = p 1 q a + p 2 q b + p 3 q c + p 4 q d + p 5 q e + p 6 q f 180 maxW=\frac{p_{1}q_{a}+p_{2}q_{b}+p_{3}q_{c}+p_{4}q_{d}+p_{5}q_{e}+p_{6}q_{f}}{180} maxW=180p1qa+p2qb+p3qc+p4qd+p5qe+p6qf
s . t . { 0 < a ≤ 110 0 < b ≤ 100 0 < c ≤ 100 0 < d ≤ 120 0 < e ≤ 100 0 < f ≤ 100 a + b + c + d + e + f = 180 p 1 + p 2 + p 3 + p 4 + p 5 + p 6 = Z , Z ∈ ( 0 , 1 , 2 , 3 , 4 , 5 , 6 ) p i = 1 o r 0 , i = 1 , 2 , 3 , 4 , 5 , 6 s.t.{0<a1100<b1000<c1000<d1200<e1000<f100a+b+c+d+e+f=180p1+p2+p3+p4+p5+p6=Z,Z(0,1,2,3,4,5,6)pi=1or0,i=1,2,3,4,5,6 s.t. 0<a1100<b1000<c1000<d1200<e1000<f100a+b+c+d+e+f=180p1+p2+p3+p4+p5+p6=Z,Z(0,1,2,3,4,5,6)pi=1or0,i=1,2,3,4,5,6  式中, q i q_{i} qi表示第 i i i条规划路径的分配交通量。在对上述模型计算时,其中包含了10个变量,采用常规的求解方式较为繁琐费时。因此,本文结合蒙特卡洛法4对模型进行求解,结合约束条件,随机生成10000组数据进行仿真,进而得出可达率最高情况下各规划路径的分配交通量。
同理可以建立目标规划模型,结合约束条件通过 M a t l a b Matlab Matlab得出(3,7)对各规划路径的分配交通量。对于(1,9)对和(3,7)的计算过程,其输出图像为:
在这里插入图片描述
在这里插入图片描述

图5-3 目标函数求解结果图

  由上图可得,(1,9)对之间的规划路径的分配交通量通过不断迭代,理论可达率达到86.67%,(3,7)之间的理论可达率达到了80.71%。其中,有两种情况下的概率接近,故图像无法完整显示。根据Matlab运算结果,本文得出结果如下:
在这里插入图片描述

5.2问题二的建立与求解

5.2.1基于Yen算法求解最短路径

  问题1在求解两点间最短路径时,采用 D i j k s t r a Dijkstra Dijkstra算法得出的路径仅有一条,需要重复多次计算得出其余长度相等的最短路径。对于简单的交通网络来说可以适用,但对于较为复杂的交通网络使用时较为繁琐。对此,本文采用 Y e n Yen Yen算法5。进行多条最短路径规划求解。该算法在求解时,会尽量计算出足够数量的相异路径。若将问题2的交通网络图中所有点看作为一个集合A,求解出的第一个最短路径中所有点的集合为B,该方法会选取与B中相似性较大的路径: l q = m i n [ ∑ i ∈ B l a ( P j , P i ) l ( P i ) ] , j ∈ A l_{q}=min[\sum\limits_{i\in B}\frac{l_{a}(P_{j},P_{i})}{l(P_{i})}],j\in A lq=min[iBl(Pi)la(Pj,Pi)],jA  式中, P i P_{i} Pi表示原路径, l a ( P j , P i ) l_{a}(P_{j},P_{i}) la(Pj,Pi)表示路径 P j P_{j} Pj与原路径的共同路段长度, l q l_{q} lq表示新路径。结合本题交通线路图,其计算步骤为:
①确定求解路径的源节点 s s s、目的节点 d d d、和需要计算的路径数量 M M M
②使用 D i j k s t r a Dijkstra Dijkstra算法求解计算最短路径。
③计算节点完全偏离路径。将已用路径上的顶点全部删除,然后使用 D i j k s t r a Dijkstra Dijkstra算法求解最短路径。若求解路径成功,路径存入路径集合 B B B,本轮计算结束,等待下一轮计算;若求解路径失败,对原始图交通线路图进行处理,将原路径中包含的边删除,然后尝试计算链路完全偏离路径。如果计算成功,则将得到的路径存入路径集合 A A A
④计算偏离路径。此步骤和传统 Y e n Yen Yen算法步骤大概相似,不同之处在于,本文会在遍历偏离点列表时,先删除不可用的偏离点,提高计算效率。另外,从集合 A A A中选取路径时,会考虑选取的路径和集合 A A A中已有路径的相近性。

5.2.2约束条件

  基于 Y e n Yen Yen算法对交通网络图3中的(27,6)对进行最短路径求解,得出共有5条长度为6的规划路径,如下图所示:
在这里插入图片描述

图5-4 基于Yen算法(27,6)对间的最短路径
  将这5条规划路径分别命名为$a,b,c,d,e$,结合查找附件2数据,得出:
表5-4 (27,6)对最短路径结果
路径编号规划路径最小交通需求
a27-35-41-10-16-36-6121
b27-35-41-10-16-5-6121
c27-35-41-10-9-5-6121
d27-35-41-8-9-5-6121
e27-35-28-8-9-5-6121

  同理可得(19,25)对间的4条路径及其最小交通需求:

表5-5 (19,25)对最短路径结果
路径编号规划路径最小交通需求
f19-10-41-35-27-30-25115
g19-10-41-35-27-33-25115
h19-10-11-12-7-33-25115
i19-20-11-12-7-33-25115

  根据上表总结得出以下约束条件:
s . t . { 0 < a ≤ 121 0 < b ≤ 121 0 < c ≤ 121 0 < d ≤ 121 0 < e ≤ 121 a + b + c + d + e = 121 p 1 + p 2 + p 3 + p 4 + p 5 = Z , Z ∈ ( 0 , 1 , 2 , 3 , 4 , 5 ) p i = 1 o r 0 , i = 1 , 2 , 3 , 4 , 5 , 6 s.t.{0<a1210<b1210<c1210<d1210<e121a+b+c+d+e=121p1+p2+p3+p4+p5=Z,Z(0,1,2,3,4,5)pi=1or0,i=1,2,3,4,5,6 s.t. 0<a1210<b1210<c1210<d1210<e121a+b+c+d+e=121p1+p2+p3+p4+p5=Z,Z(0,1,2,3,4,5)pi=1or0,i=1,2,3,4,5,6

5.2.3建立目标规划模型

  问题二要求在网格中任意5条路段出现突发状况的前提下,得出确保网格中所有交通需求的期望可达率最大的约束条件各规划路径分配交通量。本文结合上述约束条件,建立目标规划模型如下: m a x W = p 1 q a + p 2 q b + p 3 q c + p 4 q d + p 5 q e 180 maxW=\frac{p_{1}q_{a}+p_{2}q_{b}+p_{3}q_{c}+p_{4}q_{d}+p_{5}q_{e}}{180} maxW=180p1qa+p2qb+p3qc+p4qd+p5qe  同理可得(19,25)对间的目标规划模型,接着结合蒙特卡洛法对模型进行求解,结合约束条件,随机生成100000组数据进行仿真,进而得出可达率最高情况下各规划路径的分配交通量,其输出图像为:
在这里插入图片描述
在这里插入图片描述

图5-5 (27,6)对和(19,25)对间的规划路径

  本文从两张结果图得出,随着迭代次数的增多,图像会逐渐收敛且交通可达率在不断增加直到趋于一个固定值,说明该方法得出的结果精度较高,具有科学性。(27,6)对间的可达率达到了85.12%,(19,25)对之间的可达率为 。因此,问题2中(27,6)对和(19,25)对的结果为:
在这里插入图片描述

5.3问题三的建立与求解

5.3.1技术路线

  对于第三问,可以将该题看做为 C V R P CVRP CVRP问题进行求解6。对此,本文建立CVRP规划模型进行求解,具体过程如下:
在这里插入图片描述

图5-6 联合学习策略PBNR的技术路线图

5.3.2约束条件

(1)变量约束
  假设 x i j x_{ij} xij是二元变量, x i j = 1 x_{ij}=1 xij=1代表节点(i,j)之间存在规划的车辆路径,反之该变量为0则表示不存在这条路径。 x i j ∈ ( 0 , 1 ) , i , j ∈ A x_{ij}\in {(0,1)},i,j\in A xij(0,1),i,jA(2)流量平衡约束
   C V R P CVRP CVRP目标规划模型中要求每个客户只能被访问一次,因此所有流入节点 i i i的路径只能存在一条,同理从 j j j流出的路由也只能有一条。 ∑ j ∈ V , j ≠ i x i j = 1 , i ∈ N \sum\limits_{j\in V,j\neq i}x_{ij}=1,i\in N jV,j=ixij=1,iN ∑ i ∈ V , j ≠ i x i j = 1 , j ∈ N \sum\limits_{i\in V,j\neq i}x_{ij}=1,j\in N iV,j=ixij=1,jN(3)完整性约束
   C V R P CVRP CVRP定义了车辆的每一条有效路径都必须是从出发点出发,最后返回出发点。但对于本题,本文将终点与起始点的赋值统一,将终点视为起点。 x i , 0 x_{i,0} xi,0表示从起点到终点的路径,总数量为所有可能的规划路径,记为K。 ∑ i ∈ N x i , 0 = K \sum\limits_{i\in N}x_{i,0}=K iNxi,0=K(4)容量约束
   C V R P CVRP CVRP区别于其他道路规划求解方法最明显的特征是具有容量上限,本文记为 C C C。车辆已交付货物量的更新公式如下: u j = u i + q j , x i j = 1 , i , j ∈ A , i , j ≠ 0 u_{j}=u_{i}+q_{j},x_{ij}=1,i,j\in A,i,j\neq 0 uj=ui+qj,xij=1,i,jA,i,j=0  每条规划路径不能承载超过容量的交通量,即车辆当前剩余货物不能低于下一个节点的需求量,同时也不能超过他的最大容量 C C C q i ≤ u i ≤ C , ∀ i ∈ V q_{i}\le u_{i}\le C,\forall i\in V qiuiC,iV

5.3.3建立CVRP目标规划模型

  CVRP以完成所有节点需求的前提下,规划一条行驶距离最短的车辆路径,建立CVRP目标规划函数可表示为: m i n ∑ i , j ∈ A c i j x i j min\sum_{i,j\in A}c_{ij}x_{ij} mini,jAcijxij s . t . { ∑ i ∈ N x i , 0 = K ∑ j ∈ V , j ≠ i x i j = 1 , i ∈ N ∑ i ∈ V , j ≠ i x i j = 1 , j ∈ N x i j ∈ ( 0 , 1 ) , i , j ∈ A q i ≤ u i ≤ C , ∀ i ∈ V u j = u i + q j , x i j = 1 , i , j ∈ A , i , j ≠ 0 s.t.{iNxi,0=KjV,jixij=1,iNiV,jixij=1,jNxij(0,1),i,jAqiuiC,iVuj=ui+qj,xij=1,i,jA,i,j0 s.t. iNxi,0=KjV,j=ixij=1,iNiV,j=ixij=1,jNxij(0,1),i,jAqiuiC,iVuj=ui+qj,xij=1,i,jA,i,j=0  求解得出(32,29)对之间和(17,8)对之间的规划路径及其交通量为:

表5-7 问题3结果

在这里插入图片描述

5.4问题四的建立与求解

5.4.1确立目标函数

  问题四要求满足在新建6条路段后,5条路出现突发事故的前提下,仍然能够保证任意两个节点间具有较高的可达率。本文以任意两点间的可达率为目标函数,假设修路后没有发生突发状况下,从 i i i点到 j j j点间的最短路径为 r ( i , j ) r(i,j) r(i,j),发生突发状况后从 i i i点到 j j j点间的最短路径为 。为了评判整体任意两点间的可达率,本文结合遍历搜索法的思想,将所有组合进行综合考虑,建立目标函数为: w = 1 n ∑ r ′ ( i , j ) r ( i , j ) w=\frac{1}{n}\sum\frac{r'(i,j)}{r(i,j)} w=n1r(i,j)r(i,j)  式中,n代表累加的次数,本文通过求平均可达率的方法来评判整体可达率。

5.4.2约束条件

(1)容量约束
  结合附件3给出的容量上限,任意两点间的交通量应该不超过其路段承载量。基于此项,本文对每条路段上的车辆数进行约束: ∑ q ( i , j ) ≤ c ( i , j ) \sum q(i,j)\le c(i,j) q(i,j)c(i,j)(2)变量约束
  对于每一对进行最短路径求解的点对,首先需要满足求解的点都在更新后的交通网络图内, i i i j j j需要服从区间分布。同时,规定 l ( i , j ) l(i,j) l(i,j)表示两点间的最短路径长度, l ′ ( i , j ) l'(i,j) l(i,j)表示发生突发状况下的最短路径长度,则满足: r ′ ( i , j ) r ( i , j ) = 1 n ∑ n = 1 n 2 l ( i , j ) − l ′ ( i , j ) l ( i , j ) , i , j ∈ A , n ∈ N ∗ \frac{r'(i,j)}{r(i,j)}=\frac{1}{n}\sum^{n}_{n=1}\frac{2l(i,j)-l'(i,j)}{l(i,j)},i,j\in A,n\in N^{*} r(i,j)r(i,j)=n1n=1nl(i,j)2l(i,j)l(i,j),i,jA,nN  式中, n n n为两点间所有最短路径的数量。在计算最短路径时,仍然采用 Y e n Yen Yen算法,同时求解出多条最短路径,选择一条作为主要运输路径,其余路径作为备选路径。分配交通量时,采用平均分配的方法去分配交通量。
(3)路径约束
  原交通网络中共有65条路段,可以将待建路段的备选区域分为两种,一种是由4个站点围成的四边形模式,另一种是由5个站点围成的五边形模式。经过统计,共有15个四边形模式,3个五边形模型,具体修建计划如下:

表5-8 新建路段选址模式
选址模式存在数量每个可建道路
四边形模式152
五边形模式35

  假设在第i个修建选址上修建的路段为 α i \alpha_{i} αi,是否在第 i i i个修建选址上修建为 ,则修建的6条路应满足以下条件: s . t . { ∑ n = 1 18 β i = 6 β i = { 1 , 修建 0 , 不修 B ′ = B + ∑ α i β i s.t.\begin{cases} \sum\limits^{18}_{n=1}\beta_{i}=6\\ \beta_{i}=\begin{cases} 1,修建\\ 0,不修\\ \end{cases} \\ B'=B+\sum{\alpha_{i}\beta_{i}}\\ \end{cases} s.t. n=118βi=6βi={1,修建0,不修B=B+αiβi

5.4.3建立目标规划模型

  结合以上目标函数和约束条件,本文建立目标规划模型为: w = 1 n ∑ n = 1 n 2 l ( i , j ) − l ′ ( i , j ) l ( i , j ) , i , j ∈ A , n ∈ N ∗ w=\frac{1}{n}\sum^{n}_{n=1}\frac{2l(i,j)-l'(i,j)}{l(i,j)},i,j\in A,n\in N^{*} w=n1n=1nl(i,j)2l(i,j)l(i,j),i,jA,nN s . t . { ∑ n = 1 18 β i = 6 β i = { 1 , 修建 0 , 不修 B ′ = B + ∑ α i β i ∑ q ( i , j ) ≤ c ( i , j ) s.t.\begin{cases} \sum\limits^{18}_{n=1}\beta_{i}=6\\ \beta_{i}=\begin{cases} 1,修建\\ 0,不修\\ \end{cases} \\ B'=B+\sum{\alpha_{i}\beta_{i}}\\ \sum q(i,j)\le c(i,j)\\ \end{cases} s.t. n=118βi=6βi={1,修建0,不修B=B+αiβiq(i,j)c(i,j)

  通过Matlab计算得出可达率最高的五种方新建路段选址方案为:

表5-9 问题4结果
-新建路段1新建路段2新建路段3新建路段4新建路段5新建路段6可达率
方案126-2930-3332-735-118-105-100.89
方案226-2930-3332-735-118-1010-110.88
方案326-2930-3332-735-1110-185-100.87
方案426-2930-3332-735-1118-35-100.86
方案526-2930-3332-735-1116-195-100.85

六、模型的检验

6.1.灵敏度检验

  根据问题一中建立的目标规划模型,计算公式为: m a x W = p 1 q a + p 2 q b + p 3 q c + p 4 q d + p 5 q e + p 6 q f 180 maxW=\frac{p_{1}q_{a}+p_{2}q_{b}+p_{3}q_{c}+p_{4}q_{d}+p_{5}q_{e}+p_{6}q_{f}}{180} maxW=180p1qa+p2qb+p3qc+p4qd+p5qe+p6qf  其中180为附件中给出的1-9路径的交通需求量,经过分析比对,选取该方程交通需求量作为研究对象,通过将交通需求量值上下变化3%,观察6种情况最终交通最大通达率的变化来检验模型的精度和准确性,并根据该改Matlab 中对应的值整合得出下表:

表 6-1 灵敏度检验表
任一条路故障情况p1=0p2=0p3=0p4=0p5=0p6=0
原始数据0.870.860.840.840.830.82
需求量上调3%0.890.880.870.870.860.85
变化率13.11%3.14%3.18%3.18%3.23%3.27%
需求量下调3%0.830.820.810.810.800.79
变化率23.85%3.90%3.95%3.95%4.00%4.05%

  为了更直观的体现,绘制出箱线图:
在这里插入图片描述

图6-1 灵敏度检验图
  根据表中和图中可知,在交通需求量的值上下变动3%时,最大通达率值改变的百分比绝对值基本都小于0.5%,说明交通需求量的改变对问题一的最大通达率计算模型的影响不大,体现了模型的可行性和准确性。

七、模型的评价及改进

7.1模型的评价

7.1.1模型的优点

1.问题一采用Dijkstra算法求解最短路径,计算方便快捷。
2.问题二采用Yen算法,同时求解多条最短路径,有效提高了计算效率。
3.问题三采用联合学习策略进行有容量的路径规划,求解的结果更为准确。
4.问题四采用蒙特卡洛法随机生成6段新路,重复实验了10000次,计算结果具有较高的准确性,可信度较高。

7.1.2模型的缺点

1.问题二在确定突发状况时,假设路段之间相互独立,实际中可能存在着联系。
2.问题四在求解时,没有考虑新建6条路段的最大容量,处理时假设为容量无上限,与实际情况存在着差异。

7.2模型的改进

针对缺点一,可以考虑进一步建立动态规划模型,对相邻路段进行分析,通过赋值让两者具有关联性,但在解决上缺乏大量数据支撑。
针对缺点二,可以采用蒙特卡洛法随机生成6条路段的容量上限,即连续采用两次蒙特卡洛法。但这样可能会导致随机性较大,不具有较强的收敛性,结果不准。


  1. 高镇海,于桐,孙天骏.考虑社会性行为的自动驾驶运动规划研究综述[J/OL].机械工程学报,1-17[2024-05-02]. ↩︎

  2. 丁志杰,王亚飞,章翼辰,等.基于复合动态采样的自动驾驶矿车节能路径规划方法[J].汽车工程,2024,46(04):588-595+642. ↩︎

  3. 冯琳洁,杜树新,裘一,等.基于Dijkstra算法的工业园区应急疏散路径规划[J].工业控制计算机,2024,37(03):44-46. ↩︎

  4. 别朝红,王锡凡.蒙特卡洛法在评估电力系统可靠性中的应用[J].电力系统自动化,1997,(06):68-75. ↩︎

  5. 王为亮,谭绍锋,肖雁鹏.一种基于光网络的搜索K最短路径的Yen改进算法[J].光通信技术,2022,46(04):101-106. ↩︎

  6. 李冰洁.基于图神经网络和强化学习的路径规划方法[D].中南大学,2023. ↩︎

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/爱喝兽奶帝天荒/article/detail/934614
推荐阅读
相关标签
  

闽ICP备14008679号