本发明属于信息处理技术领域,具体涉及一种基于压缩感知的缺失矿压监测数据修复方法。
背景技术:
矿压监测是煤矿安全生产的前提与基础,矿压监测数据对于预报煤矿工作面顶板来压、冲击地压、煤与瓦斯突出等煤岩动力灾害具有重要意义。通常情况下,通过对矿压监测数据分析能有效掌握采场上覆岩层的运动规律,以确定岩层控制范围,建立采场支架与顶板压力之间的相互关系,为支架选型和确定支架技术参数提供依据,同时也可根据矿压监测数据进行顶板来压预报,研究矿压与围岩运动控制的关系,进而研究冲击地压、煤与瓦斯突出等煤岩动力灾害的综合防治技术。
目前,国内外已有很多厂商研发了矿压监测系统,并在煤矿采场实现了全天候的在线监测,但由于采场地质及工程条件复杂,监测环境恶劣,外部干扰十分严重,有时会使矿压监测系统处于失效状态,使得采集的矿压数据不连续,产生数据缺失问题,这对于后续的矿压数据处理及分析产生很大干扰,有时甚至会导致错误的分析结果,给煤矿安全生产带来极大隐患,因此恢复缺失的矿压监测数据具有重要意义。
技术实现要素:
针对现有技术中存在的上述技术问题,本发明提出了一种基于压缩感知的缺失矿压监测数据修复方法,设计合理,克服了现有技术的不足,具有良好的效果。
为了实现上述目的,本发明采用如下技术方案:
设待恢复的完整数据为x∈rn,采集到的不完整数据为y∈rm,
显然,方程式(1)是一个欠定的病态问题,其解不唯一,也就是说,按照传统理论使用该方程很难重建出完整的数据。根据压缩感知理论,如果x在某一变换域ψ的系数α=ψx是稀疏的,则有
x=ψhα(2);
其中上标h表示共轭转置,把式(2)带入式(1),则有
当y是不完整的欠采样数据时,矩阵a是奇异的,该欠定问题的解不唯一,但如果α是稀疏的,可以通过以下策略重构得到稀疏向量α的估计值:
其中,||α||1表示向量α的l1范数,得到估计值
至此,实现了数据的恢复重建。
根据以上压缩感知原理,结合矿压监测数据采集特点,提出一种基于压缩感知的矿压监测数据修复方法,假设完整的待恢复矿压数据表示为x∈rn,采集到的有损矿压数据表示为y∈rm,则在采集过程中共有n-m个数据丢失,具体包括如下步骤:
步骤1:数据初始化;
从矿压监测数据库中读取一组矿压数据,存入数组y(t),t=1,2,…,m;y(t)中部分数据不规则缺失,根据数据采集频率,若某时刻未采集到数据,则插入该时刻的数据,并将该数据置为零,得到数组y’(t),此时y’(t)中共有n个数据;
步骤2:构造测量矩阵
设y’(t)中所有零值元素对应位置的索引集合为e={iy′(i)=0}(i=1,2,...,n),并设i∈rn×n为单位矩阵,将单位矩阵i中的第i行删除,得到测量矩阵
步骤3:选择稀疏矩阵;
选择离散余弦变换(discretecosinetransform,dct)矩阵作为稀疏矩阵,dct矩阵可表示为c∈rn×n,c的第i行第j列元素通过公式(6)计算得到:
步骤4:构造传感矩阵;
若设传感矩阵为a,则依据压缩感知原理定义a的表达式如公式(7)所示:
其中,ch为稀疏矩阵c的共轭转置;
步骤5:重建数据;
对于有损矿压数据y′∈rm,若设待恢复的完整数据为x∈rn,则共有n-m个矿压数据丢失,通过下述过程实现矿压数据修复:
输入:传感矩阵a,有损矿压数据y’,稀疏度k;
输出:修复后的矿压数据
符号说明:n表示迭代次数,rn表示第n次迭代残差,λn表示第n次迭代的索引集合,λn表示第n次迭代找到的索引,an表示按索引λn选出的传感矩阵a的列集合,aj表示矩阵a的第j列,xn为n×1的列向量,
步骤5.1:令残差r0=y’;且
步骤5.2:找出索引λn,使
步骤5.3:令λn=λn-1∪{λn},
步骤5.4:求y′=anxn的最小二乘解:
步骤5.5:更新残差
步骤5.6:如果n≤k,则返回步骤5.2,否则进入步骤5.7;
步骤5.7:得到完整矿压数据x的k-稀疏逼近
本发明所带来的有益技术效果:
基于压缩感知理论从矿压数据本身特点出发,提出一种缺失数据修复方法,首先对采集的不完整数据进行处理,根据数据采样频率把缺失的数据填充为零,以单位矩阵为基础,构造对应于压缩感知框架下的测量矩阵;其次根据待修复数据的特点及先验知识,构造对数据进行稀疏表示的字典矩阵;最后,应用高效稳定的追踪算法,实现了缺失矿压数据的修复,在矿压数据丢失较少的情况下,可以获得良好的修复效果。
附图说明
附图1为本发明中矿压数据修复过程示意图。
附图2为本发明中矿压时序数据及采样矩阵的构造示意图。
附图3为本发明中有损矿压监测数据曲线图。
附图4为本发明中重建后的矿压监测数据曲线图。
具体实施方式
下面结合附图以及具体实施方式对本发明作进一步详细说明:
步骤1:数据初始化。
从某矿压监测系统读取1000个矿压数据存入y(t),t=1,2,…,1000,如表1所示,数据采集频率为6次/分钟,从表1中起始时间及结束时间可以看出系统共采集了200分钟的矿压监测数据,按照6次/分钟的采集频率,采集的数据数应为1200组,但表中只有1000组数据,再从第121组及122组的采集时间间隔可以看出,在这段时间内共丢失了200组数据,把丢失的200组数据补充进来并把压力值置为零,得到有损矿压监测数据y′(t),t=1,2,…,1200,如表2所示。
表1矿压监测原始数据
表2有损矿压监测数据
步骤2:构造测量矩阵φ。
令n=1200,则单位矩阵i∈r1200×1200,按照图2所示构造测量矩阵的过程,只需把单位矩阵i中第122行~321行删除后即可得到测量矩阵,测量矩阵
步骤3:选择稀疏矩阵。
选择dct矩阵作为稀疏矩阵,根据下式知dct矩阵可表示为c∈r1200×1200,即:
步骤4:构造传感矩阵。
传感矩阵a可表示为:
步骤5:数据重建。
数据重建前的有损矿压监测数据如图3所示,重建后的矿压数据如图4所示。
当然,上述说明并非是对本发明的限制,本发明也并不仅限于上述举例,本技术领域的技术人员在本发明的实质范围内所做出的变化、改型、添加或替换,也应属于本发明的保护范围。