掌桥专利:专业的专利平台
掌桥专利
首页

盾构掘进参数变量复杂度分组抽样多进程预测方法

文献发布时间:2024-04-18 19:52:40


盾构掘进参数变量复杂度分组抽样多进程预测方法

技术领域

本技术涉及盾构掘进参数预测算法,属于盾构数据处理方法领域及高端装备制造领域。

背景技术

快速训练得到掘进参数预测模型,是实现盾构参数智能控制的必要条件。符号回归算法可以得到显式经验公式,能够为盾构掘进参数预测中提供显式化的模型工具。并行计算应用于掘进参数符号回归可以大大提高模型训练效率。

一种大规模并行程序性能预测实现方法(申请公布号:CN101650687A,公开公告日:2010.02.17)通过分析各个进程计算的相似性并选取有代表性的进程以及代表性进程的顺序计算时间,使用网络模拟器自动预测最终的并行程序性能。

基于自适应并行遗传算法的大规模符号回归方法及系统(申请公布号:CN110135584A,公开公告日:2019.08.16)运用自适应的多种群进化机制成功提取出有效构建元素,通过设计异构计算资源的并行计算系统。

一种基于CPU核数预测实现并行任务调度的方法和系统(申请公布号:CN110955527A,公开公告日:2020.04.03)通过衡量处理器的高计算能力和调度算法的执行效果以及处理器负载均衡等各项性能指标,提高调度算法的并行执行的可靠性。

(邵帅. 基于CUDA的符号回归算法并行设计与实现[D].西安电子科技大学,2012.)将GEP遗传算法中计算量最大的适应度值求解过程放在GPU上并行处理。

(陶帆. 基于增强学习的符号回归算法研究[D].中国石油大学(北京),2019.)提出基于Actor-Critic和蒙特卡洛树搜索相结合的空间搜索算法SE-MCTS。通过在符号表达式空间蒙特卡洛树上的遍历来解决无记忆搜索的问题;利用Actor-Critic方法来评估蒙特卡洛树上节点价值。

文献研究表明,符号回归并行计算研究主要面向进程调用和硬件资源合理调度,未涉及复杂过程输入变量集处理、变量复杂度量化分级、多进程运算输出测试处理。

发明内容

针对上述现有技术的不足,本发明提出了变量复杂度分组抽样盾构掘进参数多进程预测方法,能够科学、高效地预测盾构掘进参数。包括如下步骤:

步骤一、变量复杂度量化分组

变量复杂度

(1)

通过将

设置抽样计数器,初始赋值为0。

步骤二、分组分层抽样生成训练子集

先判断抽样计数器的值与R的关系,R是人工设定的大于1的正整数;

如果抽样计数器的值≤R,则进行第一类分组分层抽样;

如果抽样计数器的值>R,则进行第二类分组分层抽样;

每完成一次第一类分组分层抽样或一次第二类分组分层抽样,则抽样计数器值增加1。

步骤三、训练子集进程封装并行运算

将以1个目标变量为应变量、以1个训练子集作为运算自变量集合、以拟合精度下限LL作为模型输出判定条件、应用符号回归算法进行拟合运算的任务,封装为1个训练子集进程,以本进程耗时作为本进程终止条件;

若存在W个训练子集,则分别封装W个训练子集进程;

当总体算力资源为J颗中央处理器CPU核心且J>1时,按以下法则配置算力资源:

当W>J时,首先为J个训练子集进程中的每个训练子集进程各配置1颗CPU核心开展并行运算,当有进程终止时则从未运算中的训练子集进程中随机抽出一个进程并为其分配一个未被占用的CPU核心用于运算,直至所有训练子集进程终止运算;

当W≤J时,为每个训练子集进程各配置1颗CPU核心作为单进程算力资源,进行多进程运算,直至所有训练子集进程终止运算;

当总体算力资源为图形处理器GPU时,可将GPU内计算单元均匀分配给各训练子集进程,从而实现并行运算。

拟合精度可取决定系数,LL可取0.5。

步骤四、精度判定循环

通过步骤三对步骤二中得到的训练子集进行训练,得到拟合模型,判断本次得到的拟合模型的精度是否大于LL,若是则输出并保存该模型;否则:跳转到步骤二。

步骤五、模型测试优选

对步骤四中所有输出并保存的拟合模型,分别用原始变量采集完成之后时刻所采集到的盾构掘进参数进行测试,取测试拟合精度最高的拟合模型作为盾构掘进参数预测模型。

有益效果

1)Cpython是目前最常用的、最广泛使用的python解释器(编辑器),而Cpython自身受到GIL (全局解释器锁)的限制,每个时刻最多只有一个线程使用CPU,且GIL很难被移除。所以,Cpython处理大数据任务时难以高效利用多核运算资源。为了在Cpython下实现多核处理器多进程并行,本技术将训练集按照一定法则分解成多个训练子集,再将训练子集分别和算法封装成子进程,各子进程分别占用CPU核心实现多进程并行,从而提高运算效率。

2)本技术还创造性地提出了变量复杂度

3)分组分层抽样法则,能够保证训练子集中的各元素为结构差异程度最大的变量,最大程度减少了同一训练子集中存在结构相同变量的情况,最大程度避免了在输入层变量维数-指数空间内的点集重复抽样,提高了变量分组的抽样效率,有利于并行运算加快收敛。

附图说明

图1无并行的掘进参数符号回归算法CPU利用情况;

图2掘进参数符号回归20核并行运算CPU利用情况。

具体实施方式

步骤一、变量复杂度量化分组

将直接从盾构机可编程逻辑控制器或上位工控机内读取得到的掘进参数,作为原始变量。

定义除目标变量之外的原始变量为初始自变量。

将由初始自变量组成的集合,作为初始自变量集合。

未分组自变量集的生成方法为:分别将初始自变量集合及初始自变量若干次幂集合作为元素集,进行元素集间笛卡尔乘积运算,实现初始自变量乘积和幂运算,得到一元变量及多元复合变量集合,共同组成未分组自变量集。

变量复杂度

(1)

通过将

设置抽样计数器,初始赋值为0。

步骤二、分组分层抽样生成训练子集

先判断抽样计数器的值与R的关系,R是人工设定的大于1的正整数;

如果抽样计数器的值≤R,则进行第一类分组分层抽样;

如果抽样计数器的值>R,则进行第二类分组分层抽样。

a)第一类分组分层抽样:

定义单个训练子集内包含M个元素,则从

当Q≥M时,从Q个变量子集中独立随机不重复抽取M个变量子集,再从这M个变量子集中的每一个变量子集中各独立随机抽取1个元素,从而构成一个由M个元素组成的训练子集。

当Q<M时,存在M=T×Q+Y,层数T、余数Y均为不小于零的整数,且Y<Q。定义每Q个元素空位构成一个整层,余元素空位的个数为Y。对于每一整层,从Q个变量子集中的每一个变量子集中各独立随机不重复抽取1个元素,构成一个整层集;对于余元素空位,从Q个变量子集中独立随机不重复抽取Y个变量子集,再从这Y个变量子集中的每一个变量子集中各独立随机抽取1个元素,构成余集;每个整层集中的每一个元素,和余集的每一个元素都不相同;每个整层集中的每一个元素,和其他整层集中的每一个元素都不相同。余集与所有整层集的并集,构成一个由M个元素组成的训练子集。

b)第二类分组分层抽样:

定义X为正整数,X<Q、X<M且X>(Q-X),当X、M、Q不满足上述不等式时,进行重新取值。当X有多个值满足不等式的,分别对每一个X的值进行第二类分组分层随机抽样。第二类分组分层抽样法则为:

当Q≥M时,从Q个变量子集中独立随机不重复抽取X个变量子集构成左阵,从左阵的X个变量子集中的每一个变量子集中各独立随机抽取1个元素,从而构成一个由X个元素组成的左集;再从左阵的X个变量子集中独立随机不重复抽取(M-X)个变量子集构成重复阵,并从重复阵中的每一个变量子集中各独立随机抽取1个元素,从而构成一个由(M-X)个元素组成的重复集;取左集与重复集的并集为一个由M个元素组成的训练子集。

当Q<M时,存在M=T×Q+Y,层数T、余数Y均为不小于零的整数,且Y<Q。对于每一整层,从Q个变量子集中独立随机不重复抽取X个变量子集构成左阵,从左阵的X个变量子集中的每一个变量子集中各独立随机抽取1个元素,从而构成一个由X个元素组成的左集;再从左阵的X个变量子集中独立随机不重复抽取(Q-X)个变量子集构成重复阵,并从重复阵中的每一个变量子集中各独立随机抽取1个元素,从而构成一个由(Q-X)个元素组成的重复集;取左集与重复集的并集为一个整层集;对于余元素空位,从Q个变量子集中独立随机不重复抽取Y个变量子集,再从这Y个变量子集中的每一个变量子集中各独立随机抽取1个元素,构成余集;余集与所有整层集的并集,构成一个由M个元素组成的训练子集。

每完成一次第一类分组分层抽样或一次第二类分组分层抽样,则抽样计数器值增加1。

步骤三、训练子集进程封装并行运算

将以1个目标变量为应变量、以1个训练子集作为运算自变量集合、以拟合精度下限LL作为模型输出判定条件、应用符号回归算法进行拟合运算的任务,封装为1个训练子集进程,以本进程耗时作为本进程终止条件。

定义由第一类分组分层抽样得到的训练子集所相应的训练子集进程为第一类训练子集进程,由第二类分组分层抽样得到的训练子集所相应的训练子集进程为第二类训练子集进程。

拟合精度可取决定系数,LL可取0.5。

若存在W个训练子集,则分别封装W个训练子集进程。

当总体算力资源为J颗中央处理器CPU核心且J>1时,按以下法则配置算力资源:

当W>J时,首先为J个训练子集进程中的每个训练子集进程各配置1颗CPU核心开展并行运算,当有进程终止时则从未运算中的训练子集进程中随机抽出一个进程并为其分配一个未被占用的CPU核心用于运算,直至所有训练子集进程终止运算。

当W≤J时,为每个训练子集进程各配置1颗CPU核心作为单进程算力资源,进行多进程运算,直至所有训练子集进程终止运算。

当总体算力资源为图形处理器GPU时,可将GPU内计算单元均匀分配给各训练子集进程,从而实现并行运算。

步骤四、精度判定循环

通过步骤三对步骤二中得到的训练子集进行训练,得到拟合模型,判断本次得到的拟合模型的精度是否大于LL,若是则输出并保存该模型;否则:跳转到步骤二。

对本步骤四的具体说明:

输出并保存W个训练子集进程训练得到的拟合精度大于LL的拟合模型。

当没有第一类训练子集进程能得到拟合精度大于LL的拟合模型时,则需要进行第一类重新抽样,即重新从

当第一类重新抽样R次后仍不能得到拟合精度大于LL的拟合模型时,R为大于1的正整数,通过不断调整X值进行第二类分组分层抽样,并对相应的第二类训练子集进程依次执行步骤三、步骤四,得到拟合精度大于LL的拟合模型。

步骤五、模型测试优选

对步骤四中所有输出并保存的拟合模型,分别用原始变量采集完成之后时刻所采集到的盾构掘进参数进行测试,取测试拟合精度最高的拟合模型作为盾构掘进参数预测模型。

以某盾构区间右线穿越花岗岩复合地层第285环掘进参数样本为例,原始变量样本量为2604,未分组自变量集元素个数为86,均以20核CPU(common KVM processor2.10GHz)服务器用于训练,本技术可以有效提高模型训练效率,详细参数如表1所示。

技术分类

06120116333253