铁路轨道不平顺数据分析与预测
铁路轨道不平顺数据分析与预测
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),可以快速查找、插入和删除。 红黑树具有良好的平衡性,树的高度保持较小,因此查找效率较高。 缺点: 实现比较复杂,需要遵守红黑树的…...

软文推广:真实有效提升软文排名与收录的三大方法!
软文是一种具有良好传播效果的文体,可以通过在搜索引擎中排名靠前的方式,为品牌或企业带来更多曝光。但是,如何让软文在搜索引擎中得到更好的收录和排名呢?在本文中,我们将讨论如何提升软文的收录和排名,以…...

IDEA运行Tomcat出现乱码问题解决汇总
最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...
c++ 面试题(1)-----深度优先搜索(DFS)实现
操作系统:ubuntu22.04 IDE:Visual Studio Code 编程语言:C11 题目描述 地上有一个 m 行 n 列的方格,从坐标 [0,0] 起始。一个机器人可以从某一格移动到上下左右四个格子,但不能进入行坐标和列坐标的数位之和大于 k 的格子。 例…...

Vue2 第一节_Vue2上手_插值表达式{{}}_访问数据和修改数据_Vue开发者工具
文章目录 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染2. 插值表达式{{}}3. 访问数据和修改数据4. vue响应式5. Vue开发者工具--方便调试 1.Vue2上手-如何创建一个Vue实例,进行初始化渲染 准备容器引包创建Vue实例 new Vue()指定配置项 ->渲染数据 准备一个容器,例如: …...
Linux云原生安全:零信任架构与机密计算
Linux云原生安全:零信任架构与机密计算 构建坚不可摧的云原生防御体系 引言:云原生安全的范式革命 随着云原生技术的普及,安全边界正在从传统的网络边界向工作负载内部转移。Gartner预测,到2025年,零信任架构将成为超…...
大学生职业发展与就业创业指导教学评价
这里是引用 作为软工2203/2204班的学生,我们非常感谢您在《大学生职业发展与就业创业指导》课程中的悉心教导。这门课程对我们即将面临实习和就业的工科学生来说至关重要,而您认真负责的教学态度,让课程的每一部分都充满了实用价值。 尤其让我…...

在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...

【网络安全】开源系统getshell漏洞挖掘
审计过程: 在入口文件admin/index.php中: 用户可以通过m,c,a等参数控制加载的文件和方法,在app/system/entrance.php中存在重点代码: 当M_TYPE system并且M_MODULE include时,会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL
ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...