一种动态灰色费尔哈斯特神经网络滑坡形变预测方法转让专利

申请号 : CN201811150026.9

文献号 : CN109492793B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 邓洪高姚鹏远孙希延纪元法王守华符强严素清吴孙勇付文涛赵松克李有明

申请人 : 桂林电子科技大学

摘要 :

本发明公开了一种动态灰色费尔哈斯特神经网络滑坡形变预测方法,涉及滑坡监测形变预测技术领域,解决的技术问题是提供一种滑坡形变预测精度高的方法,包括以下步骤:建立滑坡体累积位移量原始数据;对数据预处理;通过灰色Verhulst模型对数据进行拟合;计算残差并构建残差序列;训练GA‑BP神经网络;得到预测残差序列;计算组合模型预测值。本发明对滑坡形变预测精度有较大的提高。

权利要求 :

1.一种动态灰色费尔哈斯特神经网络滑坡形变预测方法,其特征在于,包括以下步骤:(一)建立滑坡体累积位移量原始数据,在滑坡区建立一个GNSS监测网,通过GPRS或者

3G或者4G网络将三维坐标数据回传至服务器,将数据存储至数据库;

(二)对数据预处理,从数据库读取三维坐标数据并进行预处理操作;

(三)通过灰色Verhulst模型对数据进行拟合,具体分步骤如下:(1)构建形变量数据序列,利用预处理过的三维坐标数据计算出滑坡体的累积位移值si:式中,(xrf,yrf,zrf)是滑坡体监测点的参考坐标,si表示i时刻的累积位移值;

(0)

由累积位移计算公式,得到累积位移值序列S :(0) (0) (0) (0) (0)

S ={s (1),s (2),s (3),…,s (n)};

(2)动态更新数据长度L,设置参数a,b,具体过程如下:

1)对长度为L的数据序列做一次累加,设置灰色Verhulst模型参数动态更新的长度L,L应小于累积位移值序列的长度n,对长度为L的数据序列做一次累加;

2)构建紧邻均值生成序列,对长度为L的数据序列做一次累加得到一次累加序列式中, 下标j表示循环次数;

(1)

由 构建紧邻均值生成序列Z :

式中,

(0) (1)

3)构建矩阵,根据累积位移值序列S 和紧邻均值生成序列Z 构建矩阵B,YN:

4)通过最小二乘法估计参数系数,由矩阵B,YN通过最小二乘法来估计灰色Verhulst模型的参数aj和bj:(0)

式中,参数a为发展系数,其大小反映了累积位移值序列S 的发展趋势;参数b是灰色作用量,含义为具有灰色信息覆盖的系统作用量;

5)构建灰色Verhulst时间响应序列,用得到的aj和bj值来构建灰色Verhulst时间响应序列:

6)得出拟合数据数列,对时间响应序列做一次累减运算,得到拟合数据序列:

7)输出灰色Verhulst拟合数据序列,将过程2)到过程5)进行n‑L+1次循环迭代,每迭代一次原始序列剔除一个陈旧数据,并增加一个新数据,并根据新的数据序列计算参数a,b,以实现参数a,b的动态更新,循环迭代完成后输出灰色Verhulst拟合数据序列(四)计算残差并构建残差序列,由原始数据序列和拟合数据序列来计算残差,得到残差序列(五)训练GA‑BP神经网络,包括以下分步骤:(1)确定BP神经网络的拓扑结构并初始化,根据输入和输出参数的个数来确定BP神经网络的拓扑结构,BP神经网络的输入层节点数和输出层节点数分别由输入输出参数的个数来决定,最佳隐含层节点数的选择参考以下公式:q

q=log2p

式中,p为输入层节点数,q为隐含层节点数,r为输出层节点数;

由以上公式来确定隐含层节点数的大致范围,用试凑法来最终确定隐含层的最佳节点数;

(2)确定遗传算法的基本参数,由BP神经网络结构确定遗传算法的基本参数,随机生成T种群规模为P的初始种群W=(W1,W2,…,Wp) ,其包含P个个体,然后选定一个数据范围,利用线性插值函数在该范围内生成一个种群中个体Wi的实数向量w1,w2,…,wm,并将其作为遗传算法的一个染色体;染色体包含了整个BP神经网络的所有权值和阈值,运用实数编码的方式对染色体进行编码,以得到高精度的权值和阈值,编码长度D的计算方法为:D=p*q+q*r+q+r

式中p为输入层节点数,q为隐含层节点数,r为输出层节点数;

(3)对种群进行初始化;

(4)计算适应度值,给定BP神经网络的进化参数,将上一步中通过线性插值得到的实数向量作为遗传算法的染色体对BP神经网络的权值和阈值进行赋值,输入训练样本进行神经网络训练,达到设定的精度得到网络训练输出值,以BP神经网络的预测输出和期望输出之间的绝对误差平方和的倒数作为适应度函数:(5)选择操作,采用比例选择方法选择算子,基于适应度比例的选择策略对每一代种群中的染色体进行选择,选择概率为:式中:P为种群个体的数目,Fi为个体i的适应度值;

(6)交叉操作,使用实数交叉法对于第k个染色体gk和第l个染色体由在j位的交叉操作方法为:式中,h是区间[0,1]上的随机数;

(7)变异操作,选取第i个个体的第j个基因进行变异,计算方法如下:f(g)=r2(1‑t/tmax)

式中,r1是区间[0,1]上的随机数;gmax和gmin分别为gij的上下限,r2是一个随机数,t为当前迭代次数,tmax为最大进化代数;

(8)获取最优权值阈值,计算适应度函数的值,判断是否满足算法预设的结束条件;若满足,则将优化后的神经网络的最优权值和阈值输出;若不满足,则返回到分步骤(4)继续进行迭代,直至满足结束条件;

(0) (0) (0)

(9)训练GA‑BP神经网络,设组合模型的预测阶数为L,则将E (k‑1),E (k‑2),…,E(0)(k‑L)作为GA‑BP神经网络的训练输入样本,将E (k)作为GA‑BP神经网络的预测期望值来训练GA‑BP神经网络;

(六)得到预测残差序列,GA‑BP神经网络训练模型预测出的残差序列为(七)计算组合模型预测值,在残差序列为 基础上加上由灰色Verhulst模型得到的拟合值得到组合模型最终的预测值。

2.根据权利要求1所述的动态灰色费尔哈斯特神经网络滑坡形变预测方法,其特征在于,步骤(二)中,所述数据预处理包括卡尔曼滤波平滑处理以及使用3σ准则剔除卡尔曼滤波无法滤除的野值和异常值。

说明书 :

一种动态灰色费尔哈斯特神经网络滑坡形变预测方法

技术领域

[0001] 本发明涉及滑坡监测形变预测技术领域,尤其涉及一种动态灰色费尔哈斯特神经网络滑坡形变预测方法。

背景技术

[0002] 地质灾害是当今人类社会面临的主要问题之一,我国由自然和人工引发的地质灾害主要有地震、斜坡岩土体位移、地面变形和土地退化等。根据国土资源厅统计,2015年全国共发生各类地质灾害8224起,其中,滑坡5616起,占比高达68.3%。滑坡灾害己成为我国最主要的地质灾害之一,而积极有效地防治滑坡等地质灾害的重要措施之一是对滑坡等形变隐患点进行长期的观测,在滑坡灾害发生前发出警报,提醒人员转移,以便降低和减少损失。若不能及时监测和有效预报,滑坡灾害一旦发生,则可能给当地居民带来巨大经济损失,甚至危害居民生命安全。因此,在滑坡灾害发生前进行预报显得尤为重要,而预报步骤的关键是采用准确性高的预测方法。
[0003] 滑坡的预测包括时间预测和空间预测,其中滑坡时间预测模型主要有直接确定滑坡失稳时间的预报模型和形变预测模型,组合模型预测结果的综合评判预报,以及边坡形变阶段判断和滑坡预报判据方面的方法等。直接确定滑坡失稳时间的预报模型通常是根据模型直接计算出滑坡失稳时间的模型,如斋藤模型、苏爱军模型、岳启伦模型、福囿(Fukuzono)模型、Voight模型、黄金分割预测法等。这些模型中大部分都是以蠕变理论为基础,通过建立蠕变经验方程来进行预测,不足是预测精度受到一定的限制。形变预测模型先根据模型预测出滑坡体一段时间以后的形变量,然后再结合适当的滑坡预报判据来进行滑坡预报。形变预测模型包含统计预测模型和非线性预测模型等类型。统计预测模型有灰色预测模型、生物生长模型、回归分析模型、时间序列模型、指数平滑法等。其中灰色预测模型又可以分为灰色GM(1,1)模型和灰色费尔哈斯特(Verhulst)模型。灰色GM(1,1)模型适用于具有较强指数规律的序列,只能描述单调的变化过程,对于非单调的摆动发展序列或有饱和的“S”型序列预测误差较大。灰色Verhulst模型主要用来描述具有饱和状态的过程,即“S”型过程,而滑坡动态演变的位移时间曲线刚好符合这一过程。非线性预测模型有混沌预测模型、分形几何模型、突变理论模型、神经网络模型等。其中神经网络模型中用的较多的一种模型是BP神经网络模型。该模型使用误差反向传播算法,算法理论最为直观。
[0004] 上述现有技术模型依然存在一些问题,如现有技术的灰色Verhulst模型使用一些陈旧信息使得预测结果误差较大;BP神经网络算法在网络初始权值和阈值选择方面存在问题,造成预测结果精度不够高。

发明内容

[0005] 针对现有技术的不足,本发明所解决的技术问题是提供一种滑坡形变预测精度高的方法。
[0006] 为解决上述技术问题,本发明采用的技术方案是一种动态灰色费尔哈斯特神经网络滑坡形变预测方法,包括以下步骤:
[0007] (一)建立滑坡体累积位移量原始数据,在滑坡区建立一个GNSS监测网,通过GPRS或者3G或者4G网络将三维坐标数据回传至服务器,将数据存储至数据库;
[0008] (二)对数据预处理,从数据库读取三维坐标数据并进行预处理操作;所述数据预处理包括卡尔曼滤波平滑处理以及使用3σ准则剔除卡尔曼滤波无法滤除的野值和异常值;
[0009] (三)通过灰色Verhulst模型对数据进行拟合,具体分步骤如下:
[0010] (1)构建形变量数据序列,利用预处理过的三维坐标数据计算出滑坡体的累积位移值si:
[0011]
[0012] 式中,(xrf,yrf,zrf)是滑坡体监测点的参考坐标,si表示i时刻的累积位移值;
[0013] 由累积位移计算公式,得到累积位移值序列S(0):
[0014] S(0)={s(0)(1),s(0)(2),s(0)(3),…,s(0)(n)};
[0015] (2)动态更新数据长度L,设置参数a,b,具体过程如下:
[0016] 1)对长度为L的数据序列做一次累加,设置灰色Verhulst模型参数动态更新的长度L,L应小于累积位移值序列的长度n,对长度为L的数据序列做一次累加;
[0017] 2)构建紧邻均值生成序列,对长度为L的数据序列做一次累加得到一次累加序列[0018]
[0019] 式中, 下标j表示循环次数;(1)
[0020] 由 构建紧邻均值生成序列Z :
[0021]
[0022] 式中,
[0023] 3)构建矩阵,根据累积位移值序列S(0)和紧邻均值生成序列Z(1)构建矩阵B,YN:
[0024]
[0025] 4)通过最小二乘法估计参数系数,由矩阵B,YN通过最小二乘法来估计灰色Verhulst模型的参数aj和bj:
[0026]
[0027] 式中,参数a为发展系数,其大小反映了累积位移值序列S(0)的发展趋势;参数b是灰色作用量,含义为具有灰色信息覆盖的系统作用量;
[0028] 5)构建灰色Verhulst时间响应序列,用得到的aj和bj值来构建灰色Verhulst时间响应序列:
[0029]
[0030] 6)得出拟合数据数列,对时间响应序列做一次累减运算,得到拟合数据序列:
[0031]
[0032] 7)输出灰色Verhulst拟合数据序列,将过程2)到过程5)进行n‑L+1次循环迭代,每迭代一次原始序列剔除一个陈旧数据,并增加一个新数据,并根据新的数据序列计算参数a,b,以实现参数a,b的动态更新,循环迭代完成后输出灰色Verhulst拟合数据序列[0033] (四)计算残差并构建残差序列,由原始数据序列和拟合数据序列来计算残差,得到残差序列
[0034] (五)训练GA‑BP神经网络,包括以下分步骤:
[0035] (1)确定BP神经网络的拓扑结构并初始化,根据输入和输出参数的个数来确定BP神经网络的拓扑结构,BP神经网络的输入层节点数和输出层节点数分别由输入输出参数的个数来决定,最佳隐含层节点数的选择可参考以下公式:
[0036] q<p‑1
[0037]
[0038] q=log2p
[0039] 式中,p为输入层节点数,q为隐含层节点数,r为输出层节点数;
[0040] 由以上公式来确定隐含层节点数的大致范围,用试凑法来最终确定隐含层的最佳节点数;
[0041] (2)确定遗传算法的基本参数,由BP神经网络结构确定遗传算法的基本参数,随机T生成种群规模为P的初始种群W=(W1,W2,…,Wp) ,其包含P个个体,然后选定一个数据范围,利用线性插值函数在该范围内生成一个种群中个体Wi的实数向量w1,w2,…,wm,并将其作为遗传算法的一个染色体;染色体包含了整个BP神经网络的所有权值和阈值,运用实数编码的方式对染色体进行编码,以得到高精度的权值和阈值,编码长度D的计算方法为:
[0042] D=p*q+q*r+q+r
[0043] 式中p为输入层节点数,q为隐含层节点数,r为输出层节点数;
[0044] (3)对种群进行初始化;
[0045] (4)计算适应度值,给定BP神经网络的进化参数,将上一步中通过线性插值得到的实数向量作为遗传算法的染色体对BP神经网络的权值和阈值进行赋值,输入训练样本进行神经网络训练,达到设定的精度得到网络训练输出值,以BP神经网络的预测输出和期望输出之间的绝对误差平方和的倒数作为适应度函数:
[0046]
[0047] (5)选择操作,采用比例选择方法选择算子,基于适应度比例的选择策略对每一代种群中的染色体进行选择,选择概率为:
[0048]
[0049] 式中:P为种群个体的数目,Fi为个体i的适应度值;
[0050] (6)交叉操作,使用实数交叉法对于第k个染色体gk和第l个染色体由在j位的交叉操作方法为:
[0051]
[0052] 式中,h是区间[0,1]上的随机数;
[0053] (7)变异操作,选取第i个个体的第j个基因进行变异,变异概率选择一个比较小的值,计算方法如下:
[0054]
[0055] f(g)=r2(1‑t/tmax)
[0056] 式中,r1是区间[0,1]上的随机数;gmax和gmin分别为gij的上下限,r2是一个随机数,t为当前迭代次数,tmax为最大进化代数;
[0057] (8)获取最优权值阈值,计算适应度函数的值,判断是否满足算法预设的结束条件;若满足,则将优化后的神经网络的最优权值和阈值输出;若不满足,则返回到分步骤(4)继续进行迭代,直至满足结束条件;
[0058] (9)训练GA‑BP神经网络,设组合模型的预测阶数为L,则将E(0)(k‑1),E(0)(k‑(0) (0)2),…,E (k‑L)作为GA‑BP神经网络的训练输入样本,将E (k)作为GA‑BP神经网络的预测期望值来训练GA‑BP神经网络;
[0059] (六)得到预测残差序列,GA‑BP神经网络训练模型预测出的残差序列为[0060] (七)计算组合模型预测值,在残差序列为 基础上加上由灰色Verhulst模型得到的拟合值得到组合模型最终的预测值。
[0061] 与现有技术相比较,本发明使用的灰色Verhulst模型相比于原始的灰色Verhulst模型进行了改进,通过动态更新参数a,b,降低了陈旧信息对预测精度的影响,一定程度上提升了预测精度,同时将改进后的灰色Verhulst模型与GA‑BP神经网络进行组合预测,得到的预测结果相比于单一的预测模型,精度有较大提高。

附图说明

[0062] 图1为本发明整体流程图;
[0063] 图2为灰色Verhulst模型数据拟合流程图;
[0064] 图3为GA‑BP神经网络预测流程图。

具体实施方式

[0065] 下面结合附图对本发明的具体实施方式作进一步的说明,但不是对本发明的限定。
[0066] 图1示出了一种动态灰色费尔哈斯特神经网络滑坡形变预测方法,包括以下步骤:
[0067] (一)建立滑坡体累积位移量原始数据,在滑坡区建立一个GNSS监测网,通过GPRS或者3G或者4G网络将三维坐标数据回传至服务器,将数据存储至数据库;
[0068] (二)对数据预处理,从数据库读取三维坐标数据并进行预处理操作;所述数据预处理包括卡尔曼滤波平滑处理以及使用3σ准则剔除卡尔曼滤波无法滤除的野值和异常值[0069] (三)通过灰色Verhulst模型对数据进行拟合,具体分步骤如图2所示:
[0070] (1)构建形变量数据序列,利用预处理过的三维坐标数据计算出滑坡体的累积位移值si:
[0071]
[0072] 式中,(xrf,yrf,zrf)是滑坡体监测点的参考坐标,si表示i时刻的累积位移值;
[0073] 由累积位移计算公式,得到累积位移值序列S(0):
[0074] S(0)={s(0)(1),s(0)(2),s(0)(3),…,s(0)(n)};
[0075] (2)动态更新数据长度L,设置参数a,b,具体过程如下:
[0076] 1)对长度为L的数据序列做一次累加,设置灰色Verhulst模型参数动态更新的长度L,L应小于累积位移值序列的长度n,对长度为L的数据序列做一次累加;
[0077] 2)构建紧邻均值生成序列,对长度为L的数据序列做一次累加得到一次累加序列[0078]
[0079] 式中, 下标j表示循环次数;(1)
[0080] 由 构建紧邻均值生成序列Z :
[0081]
[0082] 式中,
[0083] 3)构建矩阵,根据累积位移值序列S(0)和紧邻均值生成序列Z(1)构建矩阵B,YN:
[0084]
[0085] 4)通过最小二乘法估计参数系数,由矩阵B,YN通过最小二乘法来估计灰色Verhulst模型的参数aj和bj:
[0086]
[0087] 式中,参数a为发展系数,其大小反映了累积位移值序列S(0)的发展趋势;参数b是灰色作用量,含义为具有灰色信息覆盖的系统作用量;
[0088] 5)构建灰色Verhulst时间响应序列,用得到的aj和bj值来构建灰色Verhulst时间响应序列:
[0089]
[0090] 6)得出拟合数据数列,对时间响应序列做一次累减运算,得到拟合数据序列:
[0091]
[0092] 7)输出灰色Verhulst拟合数据序列,将过程2)到过程5)进行n‑L+1次循环迭代,每迭代一次原始序列剔除一个陈旧数据,并增加一个新数据,并根据新的数据序列计算参数a,b,以实现参数a,b的动态更新,循环迭代完成后输出灰色Verhulst拟合数据序列[0093] (四)计算残差并构建残差序列,由原始数据序列和拟合数据序列来计算残差,得到残差序列
[0094] (五)训练GA‑BP神经网络,包括以下分步骤,如图3所示:
[0095] (1)确定BP神经网络的拓扑结构并初始化,根据输入和输出参数的个数来确定BP神经网络的拓扑结构,BP神经网络的输入层节点数和输出层节点数分别由输入输出参数的个数来决定,最佳隐含层节点数的选择可参考以下公式:
[0096] q<p‑1
[0097]
[0098] q=log2p
[0099] 式中,p为输入层节点数,q为隐含层节点数,r为输出层节点数;
[0100] 由以上公式来确定隐含层节点数的大致范围,用试凑法来最终确定隐含层的最佳节点数;
[0101] (2)确定遗传算法的基本参数,由BP神经网络结构确定遗传算法的基本参数,随机T生成种群规模为P的初始种群W=(W1,W2,…,Wp) ,其包含P个个体,然后选定一个数据范围,利用线性插值函数在该范围内生成一个种群中个体Wi的实数向量w1,w2,…,wm,并将其作为遗传算法的一个染色体;染色体包含了整个BP神经网络的所有权值和阈值,运用实数编码的方式对染色体进行编码,以得到高精度的权值和阈值,编码长度D的计算方法为:
[0102] D=p*q+q*r+q+r
[0103] 式中p为输入层节点数,q为隐含层节点数,r为输出层节点数;
[0104] (3)对种群进行初始化;
[0105] (4)计算适应度值,给定BP神经网络的进化参数,将上一步中通过线性插值得到的实数向量作为遗传算法的染色体对BP神经网络的权值和阈值进行赋值,输入训练样本进行神经网络训练,达到设定的精度得到网络训练输出值,以BP神经网络的预测输出和期望输出之间的绝对误差平方和的倒数作为适应度函数:
[0106]
[0107] (5)选择操作,采用比例选择方法选择算子,基于适应度比例的选择策略对每一代种群中的染色体进行选择,选择概率为:
[0108]
[0109] 式中:P为种群个体的数目,Fi为个体i的适应度值;
[0110] (6)交叉操作,使用实数交叉法对于第k个染色体gk和第l个染色体由在j位的交叉操作方法为:
[0111]
[0112] 式中,h是区间[0,1]上的随机数;
[0113] (7)变异操作,选取第i个个体的第j个基因进行变异,变异概率选择一个比较小的值,计算方法如下:
[0114]
[0115] f(g)=r2(1‑t/tmax)
[0116] 式中,r1是区间[0,1]上的随机数;gmax和gmin分别为gij的上下限,r2是一个随机数,t为当前迭代次数,tmax为最大进化代数;
[0117] (8)获取最优权值阈值,计算适应度函数的值,判断是否满足算法预设的结束条件;若满足,则将优化后的神经网络的最优权值和阈值输出;若不满足,则返回到分步骤(4)继续进行迭代,直至满足结束条件;
[0118] (9)训练GA‑BP神经网络,设组合模型的预测阶数为L,则将E(0)(k‑1),E(0)(k‑(0) (0)2),…,E (k‑L)作为GA‑BP神经网络的训练输入样本,将E (k)作为GA‑BP神经网络的预测期望值来训练GA‑BP神经网络;
[0119] (六)得到预测残差序列,GA‑BP神经网络训练模型预测出的残差序列为[0120] (七)计算组合模型预测值,在残差序列为 基础上加上由灰色Verhulst模型得到的拟合值得到组合模型最终的预测值。
[0121] 与现有技术相比较,本发明使用的灰色Verhulst模型相比于原始的灰色Verhulst模型进行了改进,通过动态更新参数a,b,降低了陈旧信息对预测精度的影响,一定程度上提升了预测精度,同时将改进后的灰色Verhulst模型与GA‑BP神经网络进行组合预测,得到的预测结果相比于单一的预测模型,精度有较大提高。
[0122] 以上结合附图对本发明的实施方式做出了详细说明,但本发明不局限于所描述的实施方式。对于本领域技术人员而言,在不脱离本发明的原理和精神的情况下,对这些实施方式进行各种变化、修改、替换和变型仍落入本发明的保护范围内。