R语言最大流最小割定理和最短路径算法分析交通网络流量拥堵问题

简介: R语言最大流最小割定理和最短路径算法分析交通网络流量拥堵问题

我们根据一些论文中提到的示例,使用最大流最小割定理将流量拥塞降至最低, 并应用了最短路径分析了交通瓶颈。

我们可以在下面看到




map=openp(map)
plot(map)

 

要提取有关边缘容量的信息,在该网络上使用以下代码,该代码将从论文中提取三个表





extract_tab(location)

在Windows中,要先下载另一个软件包




library(devtools)


extract_tab(locatio

现在我们可以得出具有容量的数据框



B1=as.data.frame(out[[2]])
B2=as.data.frame(out[[3


capacity=as.character(B2$V3[-1])
capacity[6]="843"
ic(capacity)

我们可以在地图上添加这些边


plot(map)
points(t(m[3:2,]),col="black", pch=1


for(i in 1:nrow(E)){
i1=which(B$i==as.character(E$from
]))
segments(B[i1,"x"],B[i1,"y"],B[i2,


text(t(m[3:2,]),c("s",1:10,"t"),col="white")

 

 

要获得具有容量的图形,可以使用另一种方法



g=graph_from_data_frame(E)
E(g)$label=E$capacity
plot(g)

但是它不考虑节点的地理位置。可以使用

plot(g, layout=as.matrix(B[,c("x","y")]))

 

为了更好地了解道路通行能力,使用



plot(g, layout=as.matrix(B[,c("x","y")]),
edge.width=E$capacity/200)

通过具有容量的网络,目标是确定该网络上从源到宿的最大流量。可以使用R



$value
[1] 2571


$flow
[1] 10 142 130 23 0 2

我们的最大流量为2571,这与两篇论文中的最大流量最小割定理以及 最短路径的应用中都实际要求的不同   ,因为表格和图表上的值不同。



E$flux1=m$flow
plot(g, layout=as.matrix(B[,c("x","y")]),

 

考虑采用更简单的流程,但是相同的全局值

 







E(g)$label=E$flux2
plot(g, layout=as.matrix(B[,c("x","y")]),
edge.width=E$flux2/200)

 

实际上,有可能在同一城市的另一篇论文中做同样的事情,这是道路网络的交通拥堵问题。







dim(out[[3]])
B1=a
ame(from=B1[2:61,"V2"],
to=B1[2:6
as.numeric(
as.characte
data_frame(E)
m=max_flow(graph=g,
source="S",


E$flux1=m$flow
E(g)$label=E


edge.width=E$flux1/200,
edge.arrow.size=0.15)

此处的最大流量值为4017,就像原始论文中发现的那样

 


相关文章
|
7天前
|
机器学习/深度学习 数据采集 自然语言处理
理解并应用机器学习算法:神经网络深度解析
【5月更文挑战第15天】本文深入解析了神经网络的基本原理和关键组成,包括神经元、层、权重、偏置及损失函数。介绍了神经网络在图像识别、NLP等领域的应用,并涵盖了从数据预处理、选择网络结构到训练与评估的实践流程。理解并掌握这些知识,有助于更好地运用神经网络解决实际问题。随着技术发展,神经网络未来潜力无限。
|
1天前
|
移动开发 JavaScript 前端开发
APP的HTML5页面经过运营商网络被植入手机管家问题及分析,解决方案见新文章
APP的HTML5页面经过运营商网络被植入手机管家问题及分析,解决方案见新文章
4 0
|
2天前
|
机器学习/深度学习 人工智能 算法
食物识别系统Python+深度学习人工智能+TensorFlow+卷积神经网络算法模型
食物识别系统采用TensorFlow的ResNet50模型,训练了包含11类食物的数据集,生成高精度H5模型。系统整合Django框架,提供网页平台,用户可上传图片进行食物识别。效果图片展示成功识别各类食物。[查看演示视频、代码及安装指南](https://www.yuque.com/ziwu/yygu3z/yhd6a7vai4o9iuys?singleDoc#)。项目利用深度学习的卷积神经网络(CNN),其局部感受野和权重共享机制适于图像识别,广泛应用于医疗图像分析等领域。示例代码展示了一个使用TensorFlow训练的简单CNN模型,用于MNIST手写数字识别。
18 3
|
5天前
|
算法
MATLAB|【免费】融合正余弦和柯西变异的麻雀优化算法SCSSA-CNN-BiLSTM双向长短期记忆网络预测模型
这段内容介绍了一个使用改进的麻雀搜索算法优化CNN-BiLSTM模型进行多输入单输出预测的程序。程序通过融合正余弦和柯西变异提升算法性能,主要优化学习率、正则化参数及BiLSTM的隐层神经元数量。它利用一段简单的风速数据进行演示,对比了改进算法与粒子群、灰狼算法的优化效果。代码包括数据导入、预处理和模型构建部分,并展示了优化前后的效果。建议使用高版本MATLAB运行。
|
7天前
|
机器学习/深度学习 算法 网络架构
什么是神经网络学习中的反向传播算法?
什么是神经网络学习中的反向传播算法?
12 2
|
7天前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(下)
【计算机网络】—— IP协议及动态路由算法(下)
15 0
|
7天前
|
算法 网络协议 数据建模
【计算机网络】—— IP协议及动态路由算法(上)
【计算机网络】—— IP协议及动态路由算法(上)
14 0
|
7天前
|
网络协议 Java 网络安全
【计算机网络】—— Socket通信编程与传输协议分析
【计算机网络】—— Socket通信编程与传输协议分析
17 0
|
7天前
|
算法 项目管理
R语言实现蒙特卡洛模拟算法
R语言实现蒙特卡洛模拟算法
|
7天前
|
算法 数据安全/隐私保护 计算机视觉
基于二维CS-SCHT变换和LABS方法的水印嵌入和提取算法matlab仿真
该内容包括一个算法的运行展示和详细步骤,使用了MATLAB2022a。算法涉及水印嵌入和提取,利用LAB色彩空间可能用于隐藏水印。水印通过二维CS-SCHT变换、低频系数处理和特定解码策略来提取。代码段展示了水印置乱、图像处理(如噪声、旋转、剪切等攻击)以及水印的逆置乱和提取过程。最后,计算并保存了比特率,用于评估水印的稳健性。

热门文章

最新文章