本发明涉及一种基于粒子群算法的光谱重叠峰分解方法。

背景技术:

由于探测器能量分辨率等原因,峰位接近且峰宽较大的不同谱峰之间常常出现严重重叠干扰的现象,要对光谱作进一步较为准确、全面的成分定量和定性分析,解析光谱重叠峰非常必要。解谱方法的研究一直都是光谱研究领域、电化学分析及色谱分析领域中的重点课题,关于谱重叠峰的分解方法已有不少研究报告。其中包括曲线拟合、高斯混合模型和期望最大化(EM)迭代算法、高斯混合统计模型与遗传算法相结合、小波变换和神经网络相结合、自适应免疫算法等谱分解方法,但目前还没有一种被公认的、没有局限性的解谱手段,比如:存在计算量较大、误差大、实时处理困难等局限。

本发明根据光谱形成过程的随机物理特性,结合高斯统计模型和粒子群算法,利用群体搜索能力得到全局最优GMM-SDRE模型,实现重叠峰的最优分解。算法基于种群概念,进化过程中运用竞争机制进行最优选择,且具有并行性,不仅能在MATLAB等软件上实现,还可结合硬件实现谱分解。结果表明,分解精度较高,可广泛用于各种严重重叠峰的分解。

技术实现要素:

本发明的目的在于公开一种基于粒子群算法的光谱重叠峰分解方法。该方法克服了目前重叠峰分解方法的不足。是通过以下①~④步具体方法实现的。

①对由M个谱峰重叠而成的重叠峰进行本底扣除,并对重叠峰进行归一化,得到面积为1的重叠峰。

②将归一化后的重叠峰用标准差关联的GMM模型(GMM:高斯混合模型)来表征,本文将该“标准差关联的GMM模型”命名为GMM-SDRE模型。

③将归一化后的重叠峰看成一个离散概率密度函数,并产生服从该密度函数的随机数。

④采用粒子群算法的群体搜索技术,每一个粒子对应一个GMM-SDRE模型,并计算在统计意义下这些随机数归属于GMM-SDRE模型的概率(即适应度值);算法经过粒子群的初始化、粒子优劣的评估以及粒子“飞行”速度和位置的迭代更新等过程,搜索到具有“全局最大概率(即适应度值)”的GMM-SDRE模型,即全局最优GMM-SDRE模型。

通过以上①~④步求得全局最优位置,该位置所对应的GMM-SDRE模型参数就是重叠峰的各个谱峰之权重、均值和标准差,即完成重叠峰的分解。

本发明的有益效果是:

密切结合光谱形成过程的随机物理特性,用GMM-SDRE模型来描述重叠峰。采用粒子群算法的群体搜索技术,每一个粒子对应一个GMM-SDRE模型,并计算在统计意义下这些随机数归属于GMM-SDRE模型的概率(即适应度值),算法经过粒子群的初始化、粒子优劣的评估以及粒子“飞行”速度和位置的迭代更新等过程,搜索到具有“全局最大概率(即适应度值)”的GMM-SDRE模型,即全局最优GMM-SDRE模型。对全局最优GMM-SDRE模型的参数进行解码,即完成重叠峰分解。充分利用测量的每一个随机数据,保证原谱数据的“零损失”,这正与放射性测量的随机性相符,得到的是统计意义下最优参数,保证了重叠峰较高的分解精度。结果表明,只要设置好粒子群算法的参数,对于由多个谱峰形成的重叠峰进行分解具有较高精度。

附图说明

图1为本发明方法的流程图。

具体实施方式

下面结合附图对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和过程,但本发明的保护范围不限于下述的实施例。

本实施例假设放射性测量中所获得的欲进行分解的重叠峰为F0(x)(x=Na,…,Nb),其中x为道址,F0(x)表示在x道址上的计数,并设重叠峰由M个谱峰重叠而成,采用本方法对重叠峰进行分解按如下具体步骤①~④。

步骤①对重叠峰进行本底扣除,并进行归一化,得到面积为1的重叠峰。

步骤②将归一化后的重叠峰用标准差关联的GMM模型(GMM:高斯混合模型)来表征,本文将该标准差关联的GMM模型命名为GMM-SDRE模型:

式中:ai表示第i分支(即第i个谱峰)的权重,且满足

ui、fσ(i)分别为第i分支的均值和标准差;函数fσ(i)表示分支之间存在的某种关联或约束关系,这里fσ(i)=fσ(1)·ui/u1(i=2,...,M);用θ=[a1 a2…aM u1 u2…uMfσ(1)fσ(2)…fσ(M)]表示GMM-SDRE模型的参数。

步骤③将归一化后的重叠峰看成一个离散概率密度函数,并产生服从该密度函数的随机数N个,N一般取大于10000。

步骤④采用粒子群算法的群体搜索技术,每一个粒子对应一个GMM-SDRE模型,并计算在统计意义下这些随机数归属于GMM-SDRE模型的概率(即适应度值);算法经过粒子群的初始化、粒子优劣的评估以及粒子“飞行”速度和位置的迭代更新等过程,搜索到具有“全局最大概率(即适应度值)”的GMM-SDRE模型,即全局最优GMM-SDRE模型。具体由以下步骤A~D实现。

A生成初始粒子群:取模型参数θ的前2M+1个元素来表示粒子的2M+1维空间位置;设粒子个数为ParticleNum;在可行解区间中,创建具有均匀分布的初始种群,即这些粒子在2M+1维空间位置上均匀分布;又设定粒子初始速度为V,V也是2M+1维向量,对应2M+1维空间位置的速度。

B适应度评估:计算每一个粒子的适应度值,即在统计意义下计算步骤③中的随机数归属于GMM-SDRE模型的概率,适应度值f(θ)按下式计算

其中

式(3)中k表示道址(即随机数值),begink和endk分别表示重叠峰的起始道址(最小随机数)和结束道址(最大随机数),ck表示第k道址的计数(随机数值为k的个数);f(θ)值越大,位置越优;并记录个体历史最优位置和粒子群全局最优位置;

由于参数θ在进行位置和速度更新时会发生改变,故计算f(θ)之前应先对权重aj作归一化处理,以符合公式(2)的约束条件;

由于粒子空间位置应扩展为3M维才能与GMM-SDRE模型参数θ对应,故应在2M+1维粒子空间位置基础上补上θ的后M-1个元素,按如下公式

fσ(i)=fσ(1)·ui/u1(i=2,...,M) (5)

故计算f(θ)之前应按(5)式补齐θ的后M-1个元素。

C粒子群更新:根据如下公式对当前粒子群进行“飞行”速度、位置更新:

Vid(l+1)=wVid(l)+λ1r1(Pid-Xid(l))+λ2r2(Pgd-Xid(l))(d=1,...,2M+1) (6)

Xid(l+1)=Xid(l)+βVid(l+1)(d=1,...,2M+1) (7)

其中:Vid(l+1)、Xid(l+1)表示第i个粒子在第l+1次迭代中第d维上的速度和位置,i=1,2,…,ParticleNum;Pid、Pgd分别表示到第l次迭代结束时第i个粒子的个体历史最优位置和粒子群全局最优位置(f(θ)值越大,位置越优);λ1、λ2为速度调节因子,分别表示粒子向Pid和Pgd位置的加速项权重,通常在0~2之间取值;r1、r2是[0,1]之间相互独立的随机数;β称为约束因子,以控制速度的权重;w为惯性权重(加权系数),决定粒子对当前速度的继承多少,w越大,算法的全局搜索能力越强,反之,局部搜索能力越强,这里采用线性下降权值法,开始时PSO在较大的空间范围内搜索并初步确定最优解的范围,而后进行更精细的局部搜索,可提高解的精度;式(6)和式(7)描述的是全局模式的粒子群算法。w按式(8)进行更新:

其中,wmax、wmin表示设置的最大和最小权重,l、lmax表示当前迭代和最大迭代次数。

D满足终止条件(迭代次数满或者最优适应度值f(θ)连续多次不变)时,算法终止,否则返回B继续。

通过以上①~④步求得全局最优位置,该位置所对应的GMM-SDRE模型参数就是重叠峰的各个谱峰之权重、均值和标准差,即完成重叠峰的分解。

本方法密切结合光谱形成过程的随机物理特性,用GMM-SDRE模型来描述重叠峰,整个模型的参数为θ=[a1 a2…aM u1 u2…uMfσ(1)fσ(2)…fσ(M)],代表粒子的空间位置,利用粒子群算法的群体搜索技术,充分利用每一个测量的随机数据,保证原谱数据的“零损失”,计算在统计意义下形成重叠峰的随机数归属于各个GMM-SDRE模型的概率,搜索到具有“全局最大概率”的GMM-SDRE模型,即最优模型参数,这正与放射性测量的随机性相符,保证了重叠峰较高的分解精度。结果表明,只要设置好粒子群算法的参数,对于多个高斯峰形成的重叠峰,分解具有较高精度,误差通常小于3%,峰距较大时误差趋于零。

在上述本发明的实施例中,对重叠峰的分解进行了详细说明,但需说明的是,以上所述仅为本发明的一个实施例而已,本发明同样可对其它各种射线的不同谱段、不同峰数的重叠峰进行分解,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

matlab 重叠峰分解 算法,一种基于粒子群算法的光谱重叠峰分解方法与流程相关推荐

  1. python路径规划算法可视化_基于粒子群算法的牙齿正畸路径规划方法python实现

    这篇是基于粒子群算法的牙齿正畸路径规划研究的python实现,参考的是徐晓强等人的<基于改进粒子群算法的牙齿正畸路径规划方法>,与这篇文章的区别在于: 1.徐等的文章设计了一种改进的粒子群 ...

  2. 【ELM预测】基于粒子群算法PSO优化极限学习机预测含Matlab源码

    1 模型 为了提高空气质量预测精度,提出一种基于粒子群算法优化极限学习机的空气质量预测模型.运用粒子群算法优化极限学习机的初始权值和偏置,在保证预测误差最小的情况下实现空气质量最优预测.选择平均绝对百 ...

  3. 【配电网优化】基于粒子群算法实现GARVER-6节点配电网络直流潮流计算附matlab代码

    1 内容介绍 一种基于粒子群算法的交直流混联配电网潮流最优化控制算法,属配电调控领域.根据配电网结构图确定区域间配电网互联的线路并编号;设定以线路分类的二维矩阵,关联线路编号与线路上的功率流动值;应用 ...

  4. 基于粒子群算法的极限学习机(ELM)分类算法-附代码

    基于粒子群算法的极限学习机(ELM)分类算法 文章目录 基于粒子群算法的极限学习机(ELM)分类算法 1.极限学习机原理概述 2.ELM学习算法 3.分类问题 4.基于粒子群算法优化的ELM 5.测试 ...

  5. 【回归预测-ELM预测】基于粒子群算法PSO优化极限学习机预测附matlab代码

    1 内容介绍 风电功率预测为电网规划提供重要的依据,研究风电功率预测方法对确保电网在安全稳定运行下接纳更多的风电具有重要的意义.针对极限学习机(ELM)回归模型预测结果受输入参数影响的问题,现将粒子群 ...

  6. 《MATLAB智能算法30个案例》:第10章 基于粒子群算法的多目标搜索算法

    <MATLAB智能算法30个案例>:第10章 基于粒子群算法的多目标搜索算法 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB智能算法30个案例分析& ...

  7. 【微电网优化】基于粒子群算法求解混合储能系统容量优化问题含Matlab源码

    1 简介 为了提高供电的稳定性.可靠性,实现日夜发电,在太阳能.风能资源比较丰富的区域,建立风能.太阳能互补发电系统.但是由于系统投入成本过高,风.光又存在间歇性和不稳定性等问题,需要配置储能系统来平 ...

  8. 《MATLAB智能算法30个案例》:第14章 基于粒子群算法的PID控制器优化设计

    <MATLAB智能算法30个案例>:第14章 基于粒子群算法的PID控制器优化设计 1. 前言 2. MATLAB 仿真示例 3. 小结 1. 前言 <MATLAB智能算法30个案例 ...

  9. 【优化求解】基于粒子群算法求解多目标优化问题matlab源码

    [优化求解]基于粒子群算法求解多目标优化问题matlab源码 1 算法介绍 1.1 关于速度和位置 粒子群算法通过设计一种无质量的粒子来模拟鸟群中的鸟,粒子仅具有两个属性:速度和位置,速度代表移动的快 ...

最新文章

  1. APUE学习笔记——第十章信号中10.15节例程的运行结果与书本里的不一样
  2. Springboot 抛出Failed to determine a suitable driver class异常原因
  3. 热点推荐:程序员路在何方
  4. VHDL基本门电路和数值比较器的设计
  5. 在ASP.NET MVC中实现Select多选
  6. linux加密框架 crypto 通用算法注册接口__crypto_register_alg注册流程
  7. 关于RESTful一些注意事项,接口开发规范
  8. python mysql autocommit_MySQLdb autocommit的坑
  9. redhat linux 5 nfs
  10. 打包图片上传cdn_Media Buy之Landing Page的资源文件CDN部署方案
  11. 倪光南:微软故意放任 Windows 盗版;淘宝为性别歧视道歉;乐视亏损 139 亿 | CSDN极客头条...
  12. NIOS II 常见问题总结FAQ - xiangyuqxq的专栏 - CSDN博客
  13. angularjs1-7,供应商
  14. xcode快捷键(二)
  15. python颜色代码表_[matplotlib] 颜色设置及Matplotlib颜色对照表
  16. 高等数学在计算机中的应用论文1500字,高等数学论文1500字_大一高等数学论文3000字_高等数学论文三千...
  17. 基于深度学习的Depth and Ego-Motion Estimation
  18. python opencv 将白色底变成透明底
  19. matlab badsubscript,matlab错误:Subscript indices must either be real positive integers or logicals....
  20. 算法与数据结构(邓俊辉)第一章

热门文章

  1. linux 运行菜刀,linux 菜刀
  2. 你见过最奇葩的代码提交信息是什么?别再为写commit message头疼了!
  3. 中标麒麟——初次体验,感觉流畅
  4. Windows用户密码的加密方法与破解
  5. 20201211_127_编码知识_中文乱码问题解决
  6. 【图像融合】基于非下采样剪切波变换(NSST)实现红外图像和可见光图像融合matlab代码
  7. click事件在苹果手机失效的问题
  8. U8,U16,U32,U64等是什么类型?
  9. 小米mix2安兔兔html5跑分,2019安兔兔性能跑分排行榜 小米9华丽登顶,荣耀v20排第9...
  10. zsh与oh-my-zsh ← 阳志平的个人网站::技术 zsh与oh-my-zsh ← 阳志平的个人网站::技术...