python算法体验-1.基于线性拟合的剩余寿命预测

在工业领域的设备寿命预测中,在没有历史数据的基础上,往往可以假设寿命退化遵循线性、指数等规律,本例分享一下基于线性拟合的数据预测,可以结合具体工业应用进行RUL预测 。
例:假设有一组能够表征设备寿命状态,且经过处理的数据,如下图:

python算法体验-1.基于线性拟合的剩余寿命预测

模拟状态数据
图中,x轴表示数据采集的周期 , y表示每个采集周期的状态数据值(假设该数据跟寿命有关系) 。
直观看一下,数据有上升的线性趋势,因此利用线性拟合方法y=kx b得到线性函数系数k,b.


python算法体验-1.基于线性拟合的剩余寿命预测

模拟状态数据线性拟合
基于该状态数据的变化趋势,我们可以预测后续20个数据采集周期的状态变化:
python算法体验-1.基于线性拟合的剩余寿命预测

后续二十个数据周期的状态趋势变化(既寿命使用情况)
在实际设备寿命预测过程中,通过设定固定状态阈值,即可预测剩余的设备工作寿命 。当然实际过程需要考虑的因素很多,如用于寿命预测的状态数据如何得到 , 多阈值如何考虑等 。
import pandas as pdimport matplotlib.pyplot as pltimport numpy as npdef linefit(Y):#线性拟合X = np.arange(1,len(Y) 1)z = np.polyfit(X, Y, 1)#k,b = [0.00460042,0.74567879],线性函数系数p = np.poly1d(z)#p = 0.0046 x0.7457 , 线性函数return z,p
测试代码:
【python算法体验-1.基于线性拟合的剩余寿命预测】if __name__ == '__main__':data = https://www.itzhengshu.com/excel/pd.read_excel('*****.xlsx').valuesx = np.arange(1,len(data) 1)z, p = linefit(data)fittedData = https://www.itzhengshu.com/excel/[p(i) for i in x]predX = [len(data) i for i in range(1,21)]predY = [p(i) for i in predX]plt.plot(predX,predY,'r--')plt.plot(fittedData)plt.plot(x, data)plt.show()
python算法体验-1.基于线性拟合的剩余寿命预测

相关经验推荐