云模型人工蜂群优化的稀土矿区溪水pH值预测方法
【技术领域】
[0001] 本发明涉及pH值预测领域,尤其是涉及一种云模型人工蜂群优化的稀土矿区溪 水pH值预测方法。
【背景技术】
[0002] 稀土在电子、石化、冶金、机械、国防、航空航天等领域中具有非常重要的作用,在 全世界中每六项科技发明就有一项与稀土密切相关。在我国稀土资源中,离子型稀土是我 国南方地区独有的稀土资源,它在全世界的高端科技中起着极为重要的作用。
[0003] 目前,离子型稀土矿山开采主要是利用原地浸矿的方法。这种工艺在开采过程中, 会把大量的硫铵和碳铵灌注到矿山山体内部,而这些酸性物质会慢慢地流入溪涧和河流, 从而造成水源污染,以致许多离子型稀土矿区的村子普遍很难找到饮用水源。由此可见,水 污染的治理是离子型稀土开采过程中极为紧迫的任务。在离子型稀土矿区水污染的治理过 程中,人们常常需要掌握稀土矿区溪水pH值的变化过程。而稀土矿区溪水pH值的变化是 一个极其复杂的物理、化学过程,传统的水质模型往往难以有效地刻画出稀土矿区溪水pH 值的变化过程。
【发明内容】
[0004] 本发明主要是解决现有技术所存在的技术问题;针对传统水质模型在描述稀土矿 区溪水pH值的变化过程中精度不高的缺点,提出一种云模型人工蜂群优化的稀土矿区溪 水pH值预测方法。本发明能够提高稀土矿区溪水pH值的预测精度。
[0005] 本发明的技术方案:一种云模型人工蜂群优化的稀土矿区溪水pH值预测方法,包 括以下步骤:
[0006] 步骤1,连续NT天采集稀土矿区需要预测区域的溪水水样,每天检测采集水样的 指标:氨氮、总氨、总氮、总磷、硫化物、水温、水流速度、pH值,并将采集到的溪水指标数据 作为样本数据集;
[0007] 步骤2,对采集到的稀土矿区溪水指标样本数据集进行归一化处理,并将前70% 设置为支持向量机的训练数据集,后30%设置为测试数据集;
[0008] 步骤3,用户初始化参数,所述初始化参数包括用户初始化预测跨度天数RN,种群 大小Popsize,最大未更新次数Limit,最大评价次数MAX_FEs;
[0009] 步骤4,当前演化代数t= 0,当前评价次数FEs= 0,并令支持向量机的待优化参 数个数D= 3 ;
[0010] 步骤5,随机产生初始种?
,其中:个体下标i= 1,2,...,?叩以狀,并且/?;=[/:?.:',<.2/^]为种群? 1中的第1个个体,其随机初始化公式 为:
[0011]
[0012] 其中下标j= 1,2, 3 为种群Pt中的第i个个体,存储了支持向量机的3个待 优化参数的值,即存储了支持向量机的惩罚因子C,存储了支持向量机的径向基核 参数g,存储了支持向量机的不敏感损失函数中参数ε ;rand(0,1)为在[0,1]之间服 从均匀分布的随机实数产生函数,LojPUp^分别为支持向量机的第j个待优化参数的取值 范围的下界和上界;
[0013] 步骤6,计算种群?,中每个个体W的适应值/力(#):,其中个体下标i= 1,2, . . .,Popsize,个体.$丨的适应值/「//(S;)的计算方法如下:
[0014]步骤6.1,令支持向量机的惩罚因子Ofi;;,支持向量机的径向基核参数g=f? 支持向量机的不敏感损失函数中参数ε=
[0015] 步骤6. 2,以惩罚因子C、径向基核参数g和不敏感损失函数中参数ε作为支持向 量机的训练参数,并以样本数据集的前70%作为训练数据集来训练支持向量机,其中支持 向量机的输入变量为归一化的一天的稀土矿区溪水指标数据:氨氮、总氨、总氮、总磷、硫化 物、水温、水流速度、pH值;支持向量机的输出为归一化的RN天后的稀土矿区溪水pH值;
[0016] 步骤6. 3,将样本数据集的后30%作为测试数据集,然后计算训练好的支持向量 机在测试数据集上的均方误差E&,并令个体$的适应值力>($) = ;
[0017] 步骤7,令种群Pt中所有个体的未更新次数27?丨=0,其中个体下标i= 1,2, · · ·,Popsize,并令当前评价次数FEs=FEs+Popsize;
[0018] 步骤8,保存种群Ρ1中适应值最大的个体为最优个体BestΝ
[0019] 步骤9,雇佣蜂对种群P#每个个体缉执行搜索操作生成一个新个体g,然后 在个体对与新个体U丨之间执行选择操作并更新个体的未更新次数@丨,其中个体下标i= 1, 2,,Popsize;
[0020] 步骤 10,令优秀个体数量pBestN=max(2,PopsizeXr3),实数r3 为[0· 05, 0· 2] 之间随机产生的一个实数,其中max为取最大值函数;
[0021] 步骤11,按适应值从大到小选择出种群?1中的前pBestN个个体,并计算前pBestN 个个体的平均值得到一个均值个体pBMeanl;
[0022] 步骤12,根据种群Pt*个体的适应值计算每个个体的选择概率;
[0023] 步骤13,观察蜂根据种群?,中每个体的选择概率选择出个体执行云模型采样搜索 操作生成新个体,然后执行选择操作并更新个体的未更新次数,具体步骤如下:
[0024] 步骤13. 1,令计数器i= 1 ;
[0025] 步骤13. 2,根据种群?,中每个体的选择概率采用轮盘赌机制选择出个体,并令 新个体.:=.? ;
[0026] 步骤13. 3,在[1,D]之间随机产生一个正整数RJ;
[0027] 步骤13. 4,在[1,Popsize]之间随机产生一个正整数RI1 ;
[0028] 步骤 13. 5,令随机权值RK=rand(0, 1);
[0029] 步骤13.6,令期望取=繼><巧(/丨.,,,;+(卜/^>/^胁谓47;
[0030] 步骤 13· 7,令熵Δ)?=此8(/尤,丨.χ );
[0031]步骤 13. 8,令超熵He=En/10. 0;
[0032] 步骤13. 9,以Ex为期望,En为熵,He为超熵,采用正态云发生器产生一个云滴 Val,如果云滴Val的值超出了 [L0j,UPj]之间的范围,则采用同样的方法重新产生云滴Val, 直到云滴Val的值不超出[L0],UP]]之间的范围,然后令C%.,.=~/ ;
[0033] 步骤13. 10,计算新个体If的适应值FitOT),然后在个体&,与新个体If之间执 行选择操作并更新个体的未更新次数:
[0034] 步骤13. 11,令计数器i= i+Ι;
[0035] 步骤13. 12,如果计数器i小于或等于Popsize,则转到步骤13. 2,否则转到步骤 14 ;
[0036] 步骤14,令当前评价次数FEs=FEs+Popsize X 2 ;
[0037] 步骤15,侦察蜂找出种群?,中未更新次数最大的个体,并标记该个体为A,,,如果 个体的未更新次数小于Limit,则转到步骤16,否则对个体执行混沌精英反向操作, 混沌精英反向操作的具体步骤如下:
[0038] 步骤15. 1,令精英种群个体数量EN=PopsizeXO. 1;
[0039] 步骤15. 2,按适应值从大到小选择出种群?,中的前ΕΝ个个体,并将选择出来的ΕΝ 个个体放入到精英种群EPt* ;
[0040] 步骤15. 3,按以下公式计算精英种群EPt在每一维上的下界LEA,以及上界UEB
[0041] /_.£/i , = rnin( £7?/.,.)
[0042] UEB丨=\ταχ(、ΕΒ?.;)
[0043] 其中仰/为精英种群EPt中的第i个个体,精英个体下标i=1,···,ΕΝ,维数下标 j= 1,. . .,D;min为取最小值函数,max为取最大值函数;
[0044] 步骤15. 4,令中间混沌因子TCK为在[0, 1]之间随机产生的一个实数,如果TCK等 于0. 25,0. 50或0. 75,则再随机产生直到TCK不等于0. 25,0. 50或0. 75 ;
[0045] 步骤15. 5,令计数器ti=1;
[0046]步骤15. 6,令混沌因子CK = 4. 0XTCKX (1-TCK);
[0047] 步骤15. 7,令中间混沌因子TCK=CK,并令ti= ti+Ι;
[0048] 步骤15. 8,如果ti大于500则转到步骤15. 9,否则转到步骤15. 6;
[0049] 步骤15. 9,令计数器j=1;
[0050] 步骤15. 10,令混沌精英反向个体二,:
[0051] 步骤15. 11,令重置个体i?·=
[0052]步骤15. 12,令CEB; = CK,(LEA ; + UEH - β[0,
[0053]步骤 15. 13,令RIBj= LEA j+rancKO,1)X(UEB厂LEA);
[0054]步骤 15. 14,令j=j+1;
[0055] 步骤15. 15,如果j大于D则转到步骤15. 16,否则转到步骤15. 12;
[0056] 步骤15. 16,计算混沌精英反向个体CEB和重置个体RIB的适应值,并令当前评价 次数FEs=FEs+2 ;
[0057] 步骤15. 17,令个体BetterB为混沌精英反向个体CEB和重置个体RIB两