1.一种改进萤火虫算法优化GRNN的蒸汽驱开发效果预测方法,其特征在于:这种改进萤火虫算法优化GRNN的蒸汽驱开发效果预测方法:步骤一:收集现场蒸汽驱开发效果数据作为样本数据,包括原始含油饱和度、原油粘度、油层深度、渗透率、油层有效厚度、原始温度、原始压力、井网面积、注汽速率、注汽干度、注汽压力,选取累积油汽比作为指标来衡量蒸汽驱开发效果的好坏程度;
步骤二:将所步骤1收集的样本数据,根据公式(1)映射到[-1,1]之间,对样本数据作归一化处理得到归一化数据Xnormal:式中,Xmin、Xmax分别代表蒸汽驱开发效果预测数据集中最小和最大值,X为原始预测数据集中的数据;
步骤三:采用改进萤火虫算法搜寻最优的GRNN中的光滑因子σ,从而获得最优GRNN;改进萤火虫算法是在标准的萤火虫算法中引入混沌优化算子进行种群初始化,同时引入差分变异算子实现萤火虫个体的自适应变异,增加了种群多种性,加快了收敛速度,提高可进化能力;
步骤四:将归一化后的数据作为训练样本,用来训练最优GRNN,从而获得最优的蒸汽驱开发效果预测模型,实现蒸汽驱开发效果预测。
2.根据权利要求1所述的改进萤火虫算法优化GRNN的蒸汽驱开发效果预测方法,其特征在于:所述的改进萤火虫算法中引入混沌优化算子进行种群初始化的具体方法:步骤1:随机产生D维向量Y0,Y0=(y01,y02,…,y0D),其中D为优化问题的维数,Y0中不能包含0.25、0.5和0.75这3个数值;
步骤2:取混沌序列:根据Logistic映射函数Yn+1=μ·Yn·(1-Yn),其中μ是混沌吸引子,取值为4,得Y1,Y2,Y3,…YN,获得混沌序列Y=(Y1,Y2,Y3…,YN);
步骤3:根据公式(2)将混沌序列Yi的第j个分量载波到优化变量的取值范围(xmin,j,xmax,j)内,xmin,j,xmax,j分别为优化变量的第j个分量的下限值和上限值,得到X1,X2,X3,…,XN,即N个萤火虫个体。
xi,j=xmin,j+yi,j·(xmax,j-xmin,j)i=1,2,…,N;j=1,2,…,D (2)。
3.根据权利要求1所述的改进萤火虫算法优化GRNN的蒸汽驱开发效果预测方法,其特征在于:所述的差分变异算子实现萤火虫个体的自适应变异,差分变异算子的具体方法:步骤1:根据公式(3)计算萤火虫个体i的自适应变异步长ωi;
式中:N为萤火虫数目,j为萤火虫个体i按照亮度由小到大的排名;排名靠后者质量相对较高,变异尺度相对较小,排名靠前者质量相对较低,变异尺度相对较大;
步骤2:随机选择2个萤火虫m和k,它们所对应的位置为Xm和Xk,利用差分算法思想,根据公式(4)实现萤火虫个体i的自适应变异,应用式(4)计算Xi变异后萤火虫个体i的位置X′i;
最后比较X′i与Xi,保留较好的,
X′i=Xi+ωi·(Xm-Xk) (4)
由公式(4)看出,变异步长ωi越大,变异后的萤火虫新位置X′i与原位置Xi变化的程度也就较大,帮助跳出局部最优;反之,变异步长ωi越小,变异后的萤火虫新位置X′i与原位置Xi变化的程度也就较小,从而实现算法的局部搜索,可以提高全局搜索能力。
4.根据权利要求3所述的改进萤火虫算法优化GRNN的蒸汽驱开发效果预测方法,其特征在于:所述的改进萤火虫算法的具体实施步骤如下:步骤1:初始化:
1)设置萤火虫数目N,最大吸引度β0,光强吸收系数γ,步长因子α,最大迭代次数Max_Iter,搜索精度ε;
2)混沌优化算子初始化萤火虫的位置;
2.1)随机产生D维向量Y0,Y0=(y01,y02,…,y0D),其中D为优化问题的维数,Y0中不能包含0.25、0.5和0.75这3个数值;
2.2)取混沌序列:根据Logistic映射函数Yn+1=μ·Yn·(1-Yn),其中μ是混沌吸引子,取值为4,得Y1,Y2,Y3,…YN,由此获得混沌序列Y=(Y1,Y2,Y3…,YN);
2.3)根据公式(2)将混沌序列Yi的第j个分量载波到优化变量的取值范围(xmin,j,xmax,j)内,xmin,j,xmax,j分别为优化变量的第j个分量的下限值和上限值,得到X1,X2,X3,…,XN,即N个萤火虫个体。
xi,j=xmin,j+yi,j·(xmax,j-xmin,j)i=1,2,…,N;j=1,2,…,D (2)步骤2:迭代寻优:
1)根据目标函数即公式(5),计算萤火虫i的相对亮度Ii;
Ii=f(Xi) (i=1,2,…,N) (5)
式中:f(Xi)表示萤火虫i所在位置Xi的目标函数值;
2)根据公式(6)计算群体中萤火虫i和j的距离rij;
式中:Xi和Xj为萤火虫i和j的位置,D为求解问题的空间维度,xik为第i个萤火虫在k维的坐标;
3)根据式(7)计算群体中萤火虫的吸引度β;
式中:γ为光强吸收系数;rij为萤火虫i和j的距离;β0为最大吸引度;
4)依据相对亮度,根据公式(8)更新萤火虫的空间位置;
Xi_new=Xi+β·(Xj-Xi)+α·(rand-0.5) (8)式中:Xi和Xj为萤火虫i和j的位置,β为吸引度,α为步长因子,rand是产生[0,1]之间任意数的随机函数;
5)萤火虫种群按照亮度进行排序,执行差分变异算子;
6)进入迭代寻优,重复执行步骤1)-5);
步骤3:终止判断,直至当前迭代次数等于最大迭代次数Max_Iter,或已达到搜索精度ε要求,寻优结束,输出寻优结果。