海上热采与增产期甲板分配方法、计算机装置及存储介质
文献发布时间:2023-06-19 11:54:11
技术领域
本发明涉及石油工程人工智能应用技术领域,具体涉及一种海上热采与增产作业期间平台甲板面积最优分配方法、计算机装置及存储介质。
背景技术
在海上油气田热采或增产作业期间,钻井平台或采油平台(后简称平台)的甲板面积或空间极为有限,在有限的甲板面积或空间内,如何放置尽量多的关键热采或增产设备,是保障热采与增产作业顺利进行的关键一步。目前主要靠经验法或大概计算来确定设备的布置,设计往往不够科学。
因此,如何综合考虑海洋钻采平台可用甲板面积,以及热采与增产作业所需设备的占地面积、重要度,提出一种海上热采与增产作业期间平台甲板面积最优分配方法,为海上油田热采或增产作业提供设备场地保障,是本领域急需解决的技术难题。
发明内容
有鉴于此,本发明旨在提供一种海上热采与增产作业期间平台甲板面积最优分配方法、计算机装置及存储介质,适用于解决海上平台热采或增产等关键作业期间甲板面积优化配置问题,以在有限的甲板面积或空间内,尽量多地放置总价值最高的钻采设备。
本发明首先提出一种海上平台甲板面积最优分配方法,所述方法包括如下步骤:
S1、确定海上热采作业或增产作业期间,所涉及的m台设备各自的占地面积S(i)以及重要度Z(i),i=1~m,并明确平台甲板可用面积V;
S2、利用粒子群算法对m台设备的取舍状态进行T轮迭代,T为最大迭代次数,依次记录每轮迭代的整个粒子群的全局最优位置(即设备取舍)g和全局所选择设备的重要度总和gbest,T轮迭代后的g和gbest就是最终的全局最优位置和全局最优值。
据本发明的一种实施方式,所述S2步骤包括:
S21、预设粒子个数N、最大迭代次数T、学习因子C1与C2、粒子的维度D、惯性权重最大值Wmax和惯性权重最小值Wmin、速度最大值Vmax和速度最小值Vmin、惩罚函数系数Cf;
S22、对N个粒子的位置x(i,j)进行初始化,其中i表示第i个粒子,j表示第j台设备,x(i,j)=0表示放弃,x(i,j)=1表示使用,各粒子的初始位置用0~1之间的随机数表示;
S23、对N个粒子的速度v(i,j)进行初始化,初始速度介于Vmin和Vmax之间,速度为正表示对x(i,j)进行增大,为负表示对x(i,j)进行减小;
S24、计算每个粒子的初始最优位置p(i,j)和初始最优值pbest(i),初始最优值pbest(i)为所选择设备的重要度总和,其中i=1~N,共N个值,每个粒子的初始最优位置p(i,j)等于所述初始位置x(i,j);
S25、计算整个粒子群的初始全局最优位置g和初始全局最优值gbest:
从第1个粒子至第N个粒子进行遍历,选取全部N个粒子中最大的初始最优值pbest(i)作为初始全局最优值gbest,对应的粒子位置x(i,j)作为初始全局最优位置g;
S26、进行第一轮迭代运算,更新全部N个粒子的位置x(i,j),根据N个粒子的新位置x(i,j)新,重新计算每个粒子的初始最优值pbest(i),选其中的最大值作为第一轮迭代后的全局最优值gbest,对应的粒子位置x(i,j)新作为第一轮迭代后的全局最优位置;
S27、依照S26的迭代方法进行第2至T轮迭代,依次记录每轮迭代的全局最优位置g和全局最优值gbest,T轮迭代后的g和gbest就是最终的全局最优位置和全局最优值。
据本发明的一种实施方式,S21步骤中,粒子个数N=20*m,最大迭代次数T=30*m,学习因子C1=C2=1.5,粒子的维度D等于涉及的设备数量m,惯性权重最大值Wmax=0.9,惯性权重最小值Wmin=0.4,速度最大值
式中,
据本发明的一种实施方式,步骤S24中,每个粒子的初始位置是0-1之间的随机数,不包括0或1本身。
据本发明的一种实施方式,步骤S24中,第i个粒子的初始最优值pbest(i)公式如下:
式中,i=1~N;x(i,j)为粒子的初始位置;Z(j)为设备j的重要度。
据本发明的一种实施方式,根据公式计算得到pbest(i)后,还包括以下方法:
计算每个粒子代表的设备总面积V(i),第i个粒子代表的设备总面积V(i):
式中,i=1~N;x(i,j)为粒子的初始位置;S(j)为设备j的面积;
假如V(i)≤可用面积V,则pbest(i)即为该粒子初始最优值;
假如V(i)>可用面积V,则该粒子初始最优值pbest(i)=pbest(i)-Cf×[V(i)-V],Cf为惩罚函数系数。
根据本发明的一种实施方式,步骤S27中,位置x(i,j)的更新方法包括:
首先计算动态惯性权重w,公式如下:
w=Wmax-(Wmax-Wmin)×k/T
其中,k代表第k轮迭代,Wmax为惯性权重最大值,Wmin为惯性权重最小值;
然后对第i个粒子的第j台设备的速度v(i,j)进行更新,公式如下:
v(i,j)新=w×v(i,j)+C1×rand×[p(i,j)-x(1,j)]+C2×rand×[g-x(1,j)]
其中,C1,C2为学习因子;
若得到的v(i,j)新不在Vmin到Vmax之间,则进行规则化处理:
v(i,j)新=rand×(Vmax-Vmin)+Vmin;
根据v(i,j)新,计算第i个粒子的第j台设备的位置更新系数vx(i,j),公式如下:
式中,i表示第i个粒子,j表示第j台设备;
然后对第i个粒子的位置进行更新,得到x(i,j)新,公式如下:
式中,x(i,j)新=1表示选择该设备,x(i,j)新=0表示放弃该设备;rand表示0-1之间的随机数。
据本发明的一种实施方式,所述最终全局最优位置代表优选出的设备和/或放弃的设备,最终的全局最优值表示所选择设备的价值总和最高,面积不超过平台可用面积。
本发明还提出一种计算机装置,包括存储器和处理器;所述存储器,用于存储计算机程序;所述处理器,用于当执行所述计算机程序时,实现所述的海上平台甲板面积最优分配方法的步骤。
本发明还提出一种计算机存储介质,所述存储介质上存储有计算机程序,当所述计算机程序被处理器执行时,实现所述的海上平台甲板面积最优分配方法的步骤。
本发明综合考虑海洋钻采平台可用甲板面积,以及热采与增产作业所需设备的占地面积、重要度,基于粒子群算法,提出的海上热采与增产作业期间平台甲板面积最优分配方法,使得能在不超过甲板可用面积或空间的前提下,布置总价值度最高的设备,为海上油田热采或增产作业提供了设备场地保障。
附图说明
图1为本发明一实施例海上热采与增产作业期间平台甲板面积最优分配方法流程图。
具体实施方式
以下将结合附图对本发明的较佳实施例进行详细说明,以便更清楚理解本发明的目的、特点和优点。应理解的是,附图所示的实施例并不是对本发明范围的限制,而只是为了说明本发明技术方案的实质精神。
本发明综合考虑海洋钻采平台可用甲板面积,以及热采与增产作业所需设备的占地面积、重要度,基于粒子群算法,提出了一种海上热采与增产作业期间平台甲板面积最优分配方法。该方法能在不超过甲板可用面积或空间的前提下,布置总价值度最高的设备,为海上油田热采或增产作业提供设备场地保障。
本发明基于的粒子群算法模拟鸟群觅食过程中的飞行路线,通过学习个体经验和群体经验,二者协同迭代寻找最优解,数学过程易实现,并且没有过多参数需要调整。
为实现上述目的,本发明实施方式采取以下技术方案:
如图1所示,一种海上热采与增产作业期间平台甲板面积最优分配方法,该方法包括如下步骤:
1)列出海上热采作业与增产作业期间,所涉及的可能需要的m台设备占地面积S(i)以及重要度Z(i),i=1~m,并明确平台甲板可用面积V。
其中,设备重要度Z(i)的取值,可根据以往作业记录中,选择布置该设备的次数与总作业次数的比值确定,利用该方式确定的重要度Z(i)更加客观、真实。
2)预设本算例中粒子个数N,最大迭代次数T,学习因子C1=C2,粒子的维度D(D值等于设备台数m),惯性权重最大值Wmax和最小值Wmin,速度最大值Vmax和最小值Vmin,惩罚函数系数Cf。
3)对N个粒子的位置x(i,j)进行初始化(i表示第i个粒子,j表示第j台设备),x(i,j)=0表示放弃,x(i,j)=1表示使用,初始位置用0~1之间的随机数表示,代表一开始m台设备的状态介于放弃和使用之间。
对N个粒子的速度v(i,j)进行初始化,初始速度介于Vmin和Vmax之间,速度为正表示对x(i,j)进行增大,为负表示对x(i,j)进行减小。
4)计算每个粒子的初始最优位置p(i,j)和初始最优值pbest(i)(即所选择设备的重要度总和),其中i=1~N,共N个值,每个粒子的初始最优位置p(i,j)为第3步骤的初始位置x(i,j),初始最优值pbest(i)公式见后。
5)计算整个粒子群的初始全局最优位置g和初始全局最优值gbest。
从第1个粒子至第N个粒子进行遍历,选取全部N个粒子中最大的pbest(i)作为初始全局最优值gbest,对应的粒子位置x(i,j)作为初始全局最优位置g。
6)进行第一轮迭代运算(共进行T轮),更新全部N个粒子的位置x(i,j)得到x(i,j)新,根据N个粒子的新位置x(i,j)新,利用步骤4)重新计算每个粒子的pbest(i),选其中的最大值作为第一轮迭代后的全局最优值gbest,对应的粒子位置——x(i,j)新作为第一轮迭代后的全局最优位置。位置x(i,j)的更新步骤见后。
7)然后进行第2至T轮迭代,依次记录每轮迭代的全局最优位置g和全局最优值gbest,T轮迭代后的g和gbest就是最终的全局最优位置和全局最优值。
上述的方法中,步骤2)中,设置粒子个数N=20*m,最大迭代次数T=30*m,学习因子C1=C2=1.5,粒子的维度D等于涉及的设备数量m,推荐惯性权重最大值Wmax=0.9和最小值Wmin=0.4,速度最大值
式中,
上述步骤中算法参数设置由固定值和函数值两类组成,其中学习因子C1与C2、惯性权重最大值Wmax和最小值Wmin四个参数为固定值,粒子个数N、最大迭代次数T、速度最大值、最小值和惩罚函数系数五个参数不是固定值,而是随着设备面积与重要度变化的函数。
在以往的粒子群算法中,对粒子个数N、最大迭代次数T、速度最大值、最小值和惩罚函数系数五个参数的取值是固定值,但这种取值方法可能会引起程序无法运行,因此本发明中采用函数值方式,保证算法程序能正常运行。此外,学习因子C1与C2、惯性权重最大值Wmax和最小值Wmin四个参数取前述固定值时,计算收敛速度较快。
上述的方法中,步骤3-4)中每个粒子的初始位置是0-1之间的随机数,而非0或1本身,表示每台设备最初的状态是介于使用和放弃之间的模糊状态,而非确切的取舍状态。这种模糊取舍的好处是,保证最初各设备的取舍机会是均等的,不会出现个人喜好对设备取舍的影响。
上述的方法中,步骤4)中,第i个粒子的初始最优值pbest(i)公式如下:
式中,i=1~N;x(i,j)为粒子的初始位置;Z(j)为设备j的重要度。
得到pbest(i)后,需计算每个粒子代表的设备总面积V(i),如第i个粒子代表的设备总面积V(i):
式中,i=1~N;x(i,j)为粒子的初始位置;S(j)为设备j的面积。
假如V(i)≤可用面积V,则pbest(i)即为该粒子初始最优值;
假如V(i)>可用面积V,则该粒子初始最优值pbest(i)=pbest(i)-Cf×[V(i)-V]。
上述的方法中,步骤5)中是利用全部粒子中最大的pbest(i)作为初始全局最优值,对应的粒子位置作为初始全局最优位置,该位置是0-1之间的随机数,表示初始全局最优位置也是介于使用和放弃之间的模糊状态。
上述的方法中,步骤6)中,粒子位置x(i,j)的更新步骤如下:
首先计算动态惯性权重w:
w=Wmax-(Wmax-Wmin)×k/T
式中,k代表第k轮迭代。
然后对第i个粒子的第j台设备的速度v(i,j)进行更新,公式如下:
v(i,j)新=w×v(i,j)+C1×rand×[p(i,j)-x(1,j)]+C2×rand×[g-x(1,j)]
若得到的v(i,j)新不在Vmin到Vmax之间,则进行规则化处理:
v(i,j)新=rand×(Vmax-Vmin)+Vmin
根据v(i,j)新,计算第i个粒子的第j台设备的位置更新系数vx(i,j),公式如下:
式中,i表示第i个粒子,j表示第j台设备。
然后对第i个粒子的位置进行更新,得到x(i,j)新,公式如下:
式中,x(i,j)新=1表示选择该设备,x(i,j)新=0表示放弃该设备;rand表示0~1之间的随机数。
步骤6)中,通过计算动态惯性权重w来更新速度v(i,j),如v(i,j)新=w×v(i,j)+C1×rand×[p(i,j)-x(1,j)]+C2×rand×[g-x(1,j)],公式中第一项为历史惯性,第二项为个体经验,第三项为群体经验。在本步骤中综合学习个体经验和群体经验获得新速度,容错性更强。而且惯性权重w是随着迭代轮次变化的动态值,能在每一轮迭代中提供最合适的惯性权重,能防止静态值可能引起的程序无法收敛的现象。
步骤6)中,得到新速度v(i,j)新后进一步计算位置更新系数vx(i,j),是通过比较位置更新系数与0~1之间随机数的大小,将全部粒子的位置更新为0或1,利用新位置x(i,j)新计算每个粒子的pbest(i),选其中最大值作为第一轮迭代后的全局最优值,对应的粒子位置作为第一轮迭代后的全局最优位置。这样,经过第一轮迭代后,所有的设备状态就由模糊状态变为了确切的取舍状态。后续将由步骤7)进行多轮迭代,对取舍状态再进行优化。
上述步骤7)中,通过重复步骤6)的模式,得到最终的全局最优位置g和全局最优值gbest。最终全局最优位置表示优选出的设备和放弃的设备,最终全局最优值表示所选择设备的价值总和最高,面积不会超过平台可用面积。经多次实际验证,上述参数(含固定值、函数值)的设置能够保证程序运行稳定,收敛速度快。
本发明基于的粒子群算法属于人工智能仿生算法,通过模拟鸟群等生物群体的协同觅食行为,综合考虑个体经验和群体经验,通过合理的参数设置,迭代寻找最优解。搜索速度快,可编程实现,算法运行稳定,易于被现场工程师接纳和理解,且迭代轮次之间具有记忆性,每轮迭代都在不断接近最优解,结果可靠。
实施例
下面结合附图对本发明做进一步说明,但本发明并不局限于以下实例。
如图1所示,本发明提供的一种海上热采与增产作业期间平台甲板面积最优分配方法,包括以下步骤:
1)列出海上热采作业或增产作业期间,所涉及的可能需要的10台设备占地面积S以及重要度Z,并明确平台可用甲板面积V=1600㎡。
2)预设本算例中粒子个数N=200,最大迭代次数T=300,学习因子C1=C2=1.5,粒子的维度D=10,惯性权重最大值Wmax=0.9和最小值Wmin=0.4,速度最大值Vmax=0.725和最小值Vmin=-0.725,惩罚函数系数Cf=0.038。
3)对200个粒子的位置x(i,j)进行初始化(i表示第i个粒子,j表示第j台设备),x(i,j)=0表示放弃,x(i,j)=1表示使用,初始位置用0~1之间的随机数表示,代表一开始10台设备的状态介于放弃和使用之间。
粒子位置初始化
对200个粒子的速度v(i,j)进行初始化,初始速度介于Vmin和Vmax之间,速度为正表示对x(i,j)进行增大,为负表示对x(i,j)进行减小。
粒子速度初始化
4)计算每个粒子的初始最优位置p(i,j)和初始最优值pbest(i)(即设备重要度的总和)。
每个粒子的初始最优位置p(i,j)即为第3步的初始位置x(i,j)。
计算每个粒子的初始最优值pbest(i),例如第一个粒子的初始最优值pbest(1),计算公式如下:
pbest(1)=0.51×0.6+0.55×0.75+…+0.47×0.85=4.19
计算每个粒子代表的设备总面积V(i),例如第一个粒子代表的设备总面积V(1):
V(1)=0.51×190+0.55×210+…+0.47×130=1081㎡
假如V(i)≤可用面积V,则pbest(i)即为该粒子初始最优值;
假如V(i)>可用面积V,则该粒子初始最优值为pbest(i)-Cf×[V(i)-V]。
这样得到每个粒子的初始最优值pbest(i)(i=1~200,共200个值)。
每个粒子的初始最优位置和初始最优值
5)计算整个粒子群的初始全局最优位置g和初始全局最优值gbest。
从第1个粒子至第200个粒子进行遍历,选取200个粒子中最大的pbest(i)作为初始全局最优值gbest,对应的粒子位置x(i,j)作为初始全局最优位置g。
本算例中,初始全局最优值gebest=5.94。
对应的初始全局最优位置为第160个粒子,位置具体信息如下表:
粒子群的初始全局最优位置和初始全局最优值
6)进行第一轮迭代(共进行T=300轮),在第一轮迭代中,对第1至第200个粒子进行遍历,第1个粒子为例,首先计算动态惯性权重w:
w=Wmax-(Wmax-Wmin)×1/T=0.9-(0.9-0.4)×1/300=0.89
式中,1代表第1轮迭代。
然后对第1个粒子的第j台设备速度进行更新,例如第1台设备速度更新如下:
v(1,1)新=w×v(1,1)+C1×rand×[p(1,j)-x(1,1)]+C2×rand×[g-x(1,1)]
=0.89×-0.34+1.5×rand×(0.51-0.51)+1.5×rand×(0.97-0.51)=-0.24
若得到的v(1,j)新不在Vmin到Vmax之间,则进行规则化处理:
v(1,j)新=rand×(Vmax-Vmin)+Vmin
第1个粒子的新速度
根据新的速度v(1,j)新,计算第1个粒子中第j台设备的位置更新系数vx(1,j),例如第1台设备的位置更新系数vx(1,1)公式如下:
然后对第1个粒子的位置进行更新,如果第j台设备的vx(1,j)大于0~1之间的随机数rand,则第j台设备x(1,j)=1即选择该设备,否则x(1,j)=0即放弃该设备,这样得到第1个粒子的新位置x(1,j)新如下表:
第1个粒子的新位置
至此,第一轮迭代中第1个粒子的位置x(1,j)更新完毕,继续更新第2个粒子的位置x(2,j),直至200个粒子位置全部更新完毕。
根据200个粒子的新位置,利用步骤4)重新计算每个粒子的pbest(i),选其中的最大值作为第一轮迭代后的全局最优值gbest,对应的粒子位置x(i,j)新作为第一轮迭代后的全局最优位置g。
7)然后进行第2至300轮迭代,依次记录每轮迭代的全局最优位置g和全局最优值gbest,300轮迭代后的g和gbest就是最终的全局最优位置和全局最优值。本算例中最终的全局最优值gbest=6.15。最终的全局最优位置g,如下表:
第300轮迭代后,粒子群的全局最优位置和全局最优值
结果表明:除第5、第7台设备之外全部可以运上平台,总占地面积为1580㎡,设备总价值为6.15。
以上所述仅为本发明示意性的具体实施方式,并非用以限定本发明的范围,任何本领域的技术人员,在不脱离本发明的构思和原则的前提下所作的等同变化与修改,均应属于本发明保护的范围。而且需要说明的是,本发明的各组成部分并不仅限于上述整体应用,本发明的说明书中描述的各技术特征可以根据实际需要选择一项单独采用或选择多项组合使用,因此本发明当然地涵盖了与本案发明点有关的其他组合及具体应用。
- 海上热采与增产期甲板分配方法、计算机装置及存储介质
- 增信方分配方法、装置、计算机设备和存储介质