1 简介 原油含水率预测对于确定油井水,油层位以及估计原油产量有着非常重要意义.BP神经网络是最近常用的原油含水率预测方法,然而,由于BP神经网络存在容易陷入局部极小值,收敛速度
1 简介
原油含水率预测对于确定油井水,油层位以及估计原油产量有着非常重要意义.BP神经网络是最近常用的原油含水率预测方法,然而,由于BP神经网络存在容易陷入局部极小值,收敛速度慢等问题,影响了其预测的实用性和准确性,对此,提出基于粒子群优化RBF神经网络(PSO-RBFNN)的原油含水率预测方法,粒子群优化算法用于RBF神经网络参数优化.在分析原油含水率预测的影响因素基础上,建立粒子群优化RBF神经网络的原油含水率预测模型.实验结果表明,在原油含水率预测中,基于粒子群优化RBF神经网络比BP神经网络有着更高的预测精度.
2 部分代码
function [out1,out2,out3] =fun(num)%创建训练样本输入集
data=xlsread('data.xlsx','in');
num=num;%对应三个特征
%归一化
data1=data';
data=mapminmax(data1,0,1);
data=data';
%建立训练集测试集
x_train=data(:,1:1).';
y_train=data(:,1+num).';
%创建、训练网络
net=newrb(x_train,y_train,0.001,1,25,5);
%在训练集和测试集上的表现
y_train_predict=sim(net,x_train);
%求出误差 训练集和测试集
err=y_train_predict- y_train;
train_error=(err.*err)/length(y_train);
out1=y_train_predict;
out2=train_error;
out3=y_train;
end
3 仿真结果
4 参考文献
[1]吴良海. "基于粒子群优化RBF神经网络原油含水率预测." 计算机仿真 5(2010):4.
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
部分理论引用网络文献,若有侵权联系博主删除。