铁路轨道不平顺数据分析与预测
铁路轨道不平顺数据分析与预测
1.引言
铁路轨道作为铁行车的基础设施,是铁路线路的重要组成部分。随着经济和交通运输业的发展,我国的铁路运输正朝着高速和重载方向迅速发展,与此同时,轨道结构承受来自列车荷载、运行速度的冲击和列车的振动等各方面的作用力不断增大,不仅加速了铁路轨道设备的损坏,由此产生的轨道不平顺问题会严重影响车辆行,乘客的舒适度以及设备的使用寿命等,存在非常严重的安全隐患。
在铁路运营过程中,轨道在列车不稳定荷载的反复作用下容易发生一定的几何形变,这其中有些是垂直向和横向的动态弹性变形,有些则是永久变形,而这些现象都统称为轨道不平顺

轨道的不平顺会引起列车的振动和轮轨作用力不断变化,不仅影响列车的舒适度,降低轨道与列车部件的使用寿命,甚至可能导致列车脱轨,严重威胁行车安全。其中,轨道的高低不平顺容易激起列车的垂向振动,导致轮轨间作用力大幅减小,甚至造成轮轨分离,使得列车存在悬浮和脱轨的危险。
本项目需要对高速铁路实际运营过程中测量的动检数据进行分析,得到滑动轨道质量指数TQI。进行高低不平顺劣化预测,根据预测结果对模型的预测效果进行评价。
项目目标:
1.分析所给轨道动检数据的滑动轨道质量指数,并结合相应规范给出轨道质量验收报告。
2.根据计算得到的高低不平顺标准差,构建时间序列预测分析模型,预测未来一年的高低不平顺劣化趋势,并采用均方误差和均方根误差对预测模型的结果进行评价。
2.数据预处理
使用python中的pandas库函数读入数据,并对数据进行初步的处理。
对于2016年1月至2021年12月共计12个月的月度数据读取至dataframe结构,如图2.1所示,一共有:里程(m),轨距(mm),超高(mm),左轨向(mm),右轨向(mm),左高低(mm),右高低(mm),三角坑(mm),水平(mm)共计9个属性。

画出数据分布的箱线图,使用箱线图判断是否存在在可信范围之外的异常数据。箱形图(Box-plot)又称箱线图,是一种表征一组数据分散情况的统计图,主要用于体现原始数据分布的特征,还可以进行多组数据分布特征的比较。箱形图包括最小值(min),下四分位数(Q1),中位数(Xm),上四分位数(Q3)和最大值(max);如图 3-2 所示,绿色矩形框的上下两端边的位置分别对应数据的上、下四分位数(Q3、Q1);矩形框内部的蓝色线段为中位线对应中位数(Xm)。上四分位数与下四分位数之间的距离是数据分布的一种简单度量,它给出被数据的中间一半所覆盖的范围。该距离称为四分位数极差(IQR)。
因此,最大值(max)定义为 Q3+1.5IQR;最小值(min)定义为 Q3-1.5IQR。基于此,视大于最大值(max)或小于最小值(min)的数据为离群点。

图2.2 数据箱线图
由图2.2可以观察到,数据的轨距,水平,左高低等属性存在较多的离群点即异常数据,这里采用最大最小值异常值替换的方式进行异常值处理。处理之后的箱线图如图2.3所示,所有数据都在可信范围之内。
3.滑动TQI的计算
轨道质量指数是评价单元区段整体不平顺的重要指标。目前,我国釆用的计算方法,主要是通过计算200米单元区段内轨距,左右高低,左右轨向,水平超高以及三角坑等共7个单项的不平顺幅值标准差之和来获得的,能综合反映该区段的整体不平顺状态以及轨道恶化程度。通过对所有轨道单元区段的TQI数值排序可以确定需要重点维修的区段,所以TQI是我国铁路工务部门指导线路维修最重要的指标。
根据工务部门多年的管理经验表明,对轨道区段TQI进行长期的监测和分析,有利于现场维修人员及时掌握轨道状态的改善或者恶化情况以及未来的发展趋势,从而更有效率的编制维修计划。
TQI 以 200 m 长度轨道区段作为计量单元,对单元区段内的轨道几何进行统计,用标准差来表示单 项轨道几何不平顺状态,而 TQI 则为一个单元区段内左高低、右高低、左轨向、右轨向、轨距、水平和 三角坑等七个单项几何不平顺标准差之和,计算方法如下列公式:

由上述TQI的定义,可以得到滑动TQI的计算方法。以1为滑动TQI的移动步长,以800为滑动TQI的移动窗长。以2016年1月的测量数据为例,可以得到滑动TQI结果图见图3.1:

画出2020年1月的TQI沿里程变化图与2016年1月滑动TQI沿里程变化图作比较:

由图3.2可以得出,从2016年至2020年,轨道的区段的状态发生了明显恶化,且在部分区段恶化非常显著。
4.高低不平顺劣化预测
在列车运行的过程中,因轨道不平顺而产生的列车振动加速度对货车以及客车的运行均有影响,主要的影响货车的安全性,客车的舒适性等。由于近年来铁路大面积提高运行效率,朝着高速和重载方向的发展,对轨道结构提出了更高的要求,除了应该具备必要的强度外,还要保持良好的几何形位。为此国内外铁路部门及研究机构都加强了对轨道几何变形的检测。
轨道几何不平顺的变化特征是轨道上大量样本检测点的几何不平顺随时间及车俩载荷重复作用下,表现出共有或者相似的特征,反映了轨道几何不平顺的一般规律。本章采用SARIMA模型进行轨道高低不平顺劣化预测。
我们以K44+074段的左高低为例进行研究,首先画出K44+074段的左高低标准差在2016年1月至2020年12月的变化趋势如图所示:

我们选取2016年1月至2019年12月的数据作为训练集,2020年全年的数据作为验证集,使用SARIMA模型进行建立预测模型。
得到ACF与PACF图像如图所示:

由图4.1可知,最佳的SARIMA模型为SARIMA (0, 1, 1)。
使用SARIMA(0, 1, 1)模型对2020年轨道高低不平顺标准差进行预测可以得到结果如所示:

参考代码:
135. TQI=[]
136. for i in range(0,len(data1)-800):
137. temp_data=data.loc[data.index[i:i+800]]
138. a1=np.array(temp_data['三角坑(mm)'])
139. a2=np.array(temp_data['右轨向(mm)'])
140. a3=np.array(temp_data['右高低(mm)'])
141. a4=np.array(temp_data['左轨向(mm)'])
142. a5=np.array(temp_data['左高低(mm)'])
143. a6=np.array(temp_data['轨距(mm)'])
144. a7=np.array(temp_data['水平(mm)'])
145. re=a1.std()+a2.std()+a3.std()+a4.std()+a5.std()+a6.std()+a7.std()
146. TQI.append(re)
147. import matplotlib.pyplot as plt
148. import numpy as np
149. import matplotlib
150. matplotlib.rc("font",family='KaiTi')
151.
152. x=np.arange(0,4800,0.25)
153.
154. plt.title("2016年1月滑动TQI沿里程变化图")
155. plt.xlabel("里程(m)")
156. plt.ylabel("TQI")
157.
158. plt.plot(x,TQI)
159.
160. # 2020年1月滑动TQI沿里程变化的序列数据
161. TQI_2=[]
162. for i in range(len(data1)*48,len(data1)*49-800):
163. temp_data=data.loc[data.index[i:i+800]]
164. # python中对于矩阵的计算尽量不要在DataFrame中,效率非常低。应该使用numpy
165. a1=np.array(temp_data['三角坑(mm)'])
166. a2=np.array(temp_data['右轨向(mm)'])
167. a3=np.array(temp_data['右高低(mm)'])
168. a4=np.array(temp_data['左轨向(mm)'])
169. a5=np.array(temp_data['左高低(mm)'])
170. a6=np.array(temp_data['轨距(mm)'])
171. a7=np.array(temp_data['水平(mm)'])
172. re=a1.std()+a2.std()+a3.std()+a4.std()+a5.std()+a6.std()+a7.std()
173. TQI_2.append(re)
174.
175. x=np.arange(0,4800,0.25)
176.
177.
178.
179. plt.plot(x,TQI,label='2016年1月')
180. plt.plot(x,TQI_2,label='2020年1月')
181.
182. plt.title("滑动TQI沿里程变化图")
183. plt.xlabel("里程(m)")
184. plt.ylabel("TQI")
185. plt.legend()
186.
187. input_data=[]
188. for i in range(72):
189. temp_data=data.loc[data.index[len(data1)*i+16000:len(data1)*i+20000]]
190. temp=np.array(temp_data['左高低(mm)'])
191. input_data.append(temp.std())
192.
193. from matplotlib.pyplot import MultipleLocator
194. #从pyplot导入MultipleLocator类,这个类用于设置刻度间隔
195.
196. fig = plt.figure(figsize=(15,5)) # 设置画布大小
197. plt.ylim(0.1,1) # y轴显示范围
198. plt.plot(input_data[0:60],'o-')
199.
200. from statsmodels.graphics.tsaplots import plot_acf, plot_pacf # 画图定阶
201.
202. def draw_acf(data):
203. # 利用ACF判断模型阶数
204. plot_acf(data)
205. plt.title("序列自相关图(ACF)")
206. plt.show()
207.
208. def draw_pacf(data):
209. # 利用PACF判断模型阶数
210. plot_pacf(data)
211. plt.title("序列偏自相关图(PACF)")
212. plt.show()
213.
214. def draw_acf_pacf(data):
215. f = plt.figure(facecolor='white')
216. # 构建第一个图
217. ax1 = f.add_subplot(211)
218. # 把x轴的刻度间隔设置为1,并存在变量里
219. x_major_locator = MultipleLocator(1)
220. plot_acf(data, ax=ax1)
221. # 构建第二个图
222. ax2 = f.add_subplot(212)
223. plot_pacf(data, ax=ax2)
224. plt.subplots_adjust(hspace=0.5)
225. # 把x轴的主刻度设置为1的倍数
226. ax1.xaxis.set_major_locator(x_major_locator)
227. ax2.xaxis.set_major_locator(x_major_locator)
228. plt.show()
229.
230. draw_acf_pacf(np.array(train_data))
全部代码见:https://download.csdn.net/download/weixin_44026026/87657283
相关文章:
铁路轨道不平顺数据分析与预测
铁路轨道不平顺数据分析与预测 1.引言 铁路轨道作为铁行车的基础设施,是铁路线路的重要组成部分。随着经济和交通运输业的发展,我国的铁路运输正朝着高速和重载方向迅速发展,与此同时,轨道结构承受来自列车荷载、运行速度的冲击…...
好家伙,9:00面试,9:06就出来了,问的实在是太...
从外包出来,没想到死在另一家厂子 自从加入这家公司,每天都在加班,钱倒是给的不少,所以也就忍了。没想到2月一纸通知,所有人不许加班,薪资直降30%,顿时有吃不起饭的赶脚。 好在有个兄弟内推我去…...
【MySQL】数据库约束和聚合函数的使用
目录 上篇在这里喔~ 1.数据库约束 1.NULL约束 2.UNIQUE唯一约束 3.DEFAULT默认值约束 4.PRIMARY KEY主键约束 5.FOREIGN KEY外键约束 2.表的设计 1.设计思路编辑 2.固定套路编辑 2.1一对一关系 2.2一对多关系 编辑 2.3多对多关系 编辑编辑编辑 3.插入…...
SpringMvcFoundation
SpringMvcFoundation 一. SpringMVC简介1.1 优点二.Spring入门案例2.1 导入坐标2.2 编写SpringBoot启动类2.3 编写controller2.4 入门案例工作流程分析2.4.1 启动服务器初始化过程2.4.2 单次请求过程2.5 PostMan简介2.5.1 PostMan基本使用2.6 请求与相应2.6.1 请求映射路径2.6.…...
从零学习SDK(7)如何打包SDK
打包SDK的目的是为了方便将SDK提供给其他开发者或用户使用,以及保证SDK的兼容性和安全性。打包SDK可以有以下几个好处: 减少依赖:打包SDK可以将SDK所需的库、资源、文档等打包成一个文件或者一个目录,这样就不需要用户再去安装或…...
Python OpenCV 3.x 示例:1~5
原文:OpenCV 3.x with Python By Example 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自【ApacheCN 计算机视觉 译文集】,采用译后编辑(MTPE)流程来尽可能提升效率。 当别人说你没有底线的时候,你最…...
葵铭智能面经4.18
虽然是小厂,但面的还是挺有深度的 1.自我介绍 第一个项目 2.有没有用过流协议 3.视频保存有没有切片,有没有考虑过大视频上传的性能问题 4.项目是同步的还是异步的 第二个项目 5.搜索引擎是动态的还是静态的,有没有动态的去爬取boost库…...
MyBatis 03 -MyBatis动态SQL与分页插件
动态SQL与分页插件 动态SQL与分页插件 动态SQL与分页插件1 动态SQL1.1 < sql >1.2 < if >1.3 < where >1.4 < set >1.5 < choose >1.6 < trim >1.7 < foreach > 2 mybatis缓存2.1 一级缓存2.2 二级缓存 3 分页插件3.1 概念3.2 访问与…...
4.10、字节序列转换函数
4.10、字节序列转换函数 1.字节序转换函数2.字节序转换函数有哪些3.字节序转换函数的使用 1.字节序转换函数 当格式化的数据在两台使用不同字节序的主机之间直接传递时,接收端必然错误的解释之。解决问题的方法是:发送端总是把要发送的数据转换成大端字…...
研究LLMs之前,不如先读读这五篇论文!
目标:了解 LMM 背后的主要思想 ▪️ Neural Machine Translation by Jointly Learning to Align and Translate ▪️ Attention Is All You Need ▪️ BERT ▪️ Improving Language Understanding by Generative Pre-Training ▪️ BART Neural Machine Translati…...
认识BASH这个Shell
文章目录 认识BASH这个Shell硬件、内核与shell为什么要学命令行模式的Shell?Bash Shell的功能命令与文件补全(TAB)命令别名设置(alias)历史命令(history)任务管理、前台、后台控制(jobs,fg,bg)通配符程序化脚本 查询命令是否为Bash shell 的内…...
用SQL语句操作Oracle数据库——数据更新
数据更新 数据库中的数据更新操作有3种:1)向表中添加若干行数据(增);2)删除表中的若干行数据(删);3)修改表中的数据(改)。对于这3种操作…...
二维码+互联网云技术在中建二局施工项目管理中的应用实践
中建二局(全称:中国建筑第二工程局有限公司)是世界500强企业—中国建筑股份有限公司的全资子公司,是集房建、基建、核电、火电、风电等多种建设和投资相融合的、国内最具综合实力的大型国有企业集团公司。中建二局具有土木建筑、设…...
扩散模型原理记录
1 扩散模型原理记录 参考资料: [1]【54、Probabilistic Diffusion Model概率扩散模型理论与完整PyTorch代码详细解读】 https://www.bilibili.com/video/BV1b541197HX/?share_sourcecopy_web&vd_source7771b17ae75bc5131361e81a50a0c871 [2] https://t.bili…...
Metasploit高级技术【第九章】
预计更新第一章 Metasploit的使用和配置 1.1 安装和配置Metasploit 1.2 Metasploit的基础命令和选项 1.3 高级选项和配置 第二章 渗透测试的漏洞利用和攻击方法 1.1 渗透测试中常见的漏洞类型和利用方法 1.2 Metasploit的漏洞利用模块和选项 1.3 模块编写和自定义 第三章 Met…...
RK3568平台开发系列讲解(调试篇)IS_ERR函数的使用
🚀返回专栏总目录 文章目录 一、IS_ERR函数用法二、IS_ERR函数三、内核错误码沉淀、分享、成长,让自己和他人都能有所收获!😄 📢本篇将介绍 IS_ERR 函数的使用。 一、IS_ERR函数用法 先看下用法: 二、IS_ERR函数 对于任何一个指针来说,必然存在三种情况: 一种是合…...
TouchGFX界面开发 | TouchGFX软件安装
TouchGFX软件安装 TouchGFX和STemWin类似,都是一个GUI框架,可以方便的在STM32 Cortex-M4 以及更高级别的STM32芯片上创建GUI应用程序。 本文中的TouchGFX软件安装,是基于已经安装有STM32CubeMX Keil MDK-ARM开发环境的情况下进行的&#x…...
使用 IDEA 远程 Debug 调试
背景 有时候我们需要进行远程的debug,本文研究如何进行远程debug,以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。 配置 远程debug的服务,以springboot微服务为例。首先,启动springboot需要加上特定的参数。…...
红黑树和平衡二叉树的优缺点及应用场景
红黑树和平衡二叉树都是为了解决二叉搜索树的缺陷而提出的自平衡二叉树结构。它们的优缺点和应用场景如下: 红黑树: 优点: 时间复杂度为O(logN),可以快速查找、插入和删除。 红黑树具有良好的平衡性,树的高度保持较小,因此查找效率较高。 缺点: 实现比较复杂,需要遵守红黑树的…...
软文推广:真实有效提升软文排名与收录的三大方法!
软文是一种具有良好传播效果的文体,可以通过在搜索引擎中排名靠前的方式,为品牌或企业带来更多曝光。但是,如何让软文在搜索引擎中得到更好的收录和排名呢?在本文中,我们将讨论如何提升软文的收录和排名,以…...
Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
地震勘探——干扰波识别、井中地震时距曲线特点
目录 干扰波识别反射波地震勘探的干扰波 井中地震时距曲线特点 干扰波识别 有效波:可以用来解决所提出的地质任务的波;干扰波:所有妨碍辨认、追踪有效波的其他波。 地震勘探中,有效波和干扰波是相对的。例如,在反射波…...
多场景 OkHttpClient 管理器 - Android 网络通信解决方案
下面是一个完整的 Android 实现,展示如何创建和管理多个 OkHttpClient 实例,分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
LINUX 69 FTP 客服管理系统 man 5 /etc/vsftpd/vsftpd.conf
FTP 客服管理系统 实现kefu123登录,不允许匿名访问,kefu只能访问/data/kefu目录,不能查看其他目录 创建账号密码 useradd kefu echo 123|passwd -stdin kefu [rootcode caozx26420]# echo 123|passwd --stdin kefu 更改用户 kefu 的密码…...
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的“no matching...“系列算法协商失败问题
【SSH疑难排查】轻松解决新版OpenSSH连接旧服务器的"no matching..."系列算法协商失败问题 摘要: 近期,在使用较新版本的OpenSSH客户端连接老旧SSH服务器时,会遇到 "no matching key exchange method found", "n…...
