资源描述:
《基于粒子群优化的波段选择方法在多组分同时测定中的应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于粒子群优化的波段选择方法在多组分同时测定中的应用作者:陶丘博申琦张小亚刘红【摘要】多组分同时测定时,组分间发生相互作用,应作波段选择。提出了改进的粒子群优化算法进行随机的波段选择。所提出的方法用于邻、间、对硝基苯酚的浓度预测,在208~481nm范围内,以0.15mol/LNaOH为溶剂,配置27组混合液作训练集,27组作预测集。训练集的均方根误差(RMSE)分别为0.1257、0.2228和0.0846;预测集RMSE分别为0.2070、0.1507和0.394,得到了较好的预测结果。【关键词】粒子群优化算法,波段选择,硝基苯酚 1引言 多组分体系的同时测定是化学分析较活跃的研究领
2、域之一。由于多组分吸收光谱相互重叠,组分间相互干扰等原因,全谱中会出现与组分浓度无关或呈非线性关系的波段。筛选与待分析组分相关的波长不仅能提高模型的预测能力和稳健性[1~4],8还可简化模型。波长选择方法主要有相关系数法[5]、逐步回归法、无信息变量消除法[6]及间隔偏最小二乘法,基于支持向量机和子空间划分的波段选择[7]和基于组合优化的方法,如模拟退火法、遗传算法[8]等。优化方法选择离散的波长点建模,由于未考虑光谱数据连续相关性的特点,可能导致过拟合现象,模型稳健性差[9]。常用的波段选择方法由于固定了波段位置或区间长度,也难以达到最优结果。粒子群优化是一种较新的组合优化算法,概念简明
3、,需要参数少,易于实现。本实验采用改进的粒子群优化算法进行随机的波段选择,确定与分析物相关的波段,并进行PLS建模。本方法应用于邻、间、对硝基苯酚的实验表明,方法能最大地利用全波谱中的有用信息,提高预测能力。 2计算方法 2.1改进的粒子群优化算法(particleswarmoptimization,PSO) PSO是由Kennedy和Eberhart于1995年提出的全局随机优化技术,源于人工生命。在搜索空间中随机产生一群粒子,每个粒子是D维空间的一个点,代表一个可行解。第i个粒子表示为xi=(xi1,xi2,…,xiD)。采用适当的目标函数确定每个粒子的适应度。每个粒子通过速率决
4、定移动的方向和距离。速率是一个D维向量,记为vi=(vi1,vi2,…,viD)。粒子追踪当前的两个已知最优解在搜索空间中运动:粒子自身迄今找到的最优解pi=(pi1,pi2,……piD)和种群迄今找到的最优解pg=(pg1,pg2,……8pgD)。根据粒子群算法的信息共享机制,作者曾提出了改进的离散粒子群优化算法[10]。粒子通过下式来更新自己的位置: If(0 If(a If((1+a)/2 其中,个体速率vid是(0,1)之间的随机数;α为静态几率因子,是(0,1)之间的随机数。a越大,算法能跳出局部最优的几率越大;a越小,越有利于粒子追随两个最优粒子,使算法快速收敛。本实验
5、中a取值0.33。 2.2粒子群优化算法用于波长选择8 随机初始化个体,个体长度等于全部的波长点数,个体采用二进制编码。PSO用于波段选择的解码方式与一般优化方法选择波长点不同。波长点选择方法是个体元素值为1表示该波长点被选中,为0表示该波长点未选中。因为波谱具有连续性,这些分离的孤立波长点并不能代表全波谱的有用信息。为了能最大程度地利用有效信息,提高模型的稳健性和抗干扰能力,需采用波段选择的方法。常用的波段选择方法,由于波段宽度为一个固定值,具有机械性和固定性。波谱中有用相关的信息可能为不确定的波长区间,并非一个固定长度的波长段。为克服此缺点,采用了新的解码方式来进行波段选择。先将个
6、体元素值为1的波长点选出,得到一系列的波长值。第1个波长点到第2个波长点为选择的第1个波长段,第3个波长点到第4个波长点为选择的第2个波长段,依此类推得到一系列的波段。以所选波长段中连续相邻的波长点的吸光度为自变量,进行偏最小二乘建模对多组分含量预测,得到的均方根误差作为个体的适应度函数。均方根误差如下: RMSE=∑ni=1(ypred-yobs)2n(4) 其中,ypred表示样品中的预测浓度值,yobs表示样品中的实际浓度值。n为样本数。算法首先随机初始化50个个体,为了避免初始选入的波段过多,初始化的二进制个体中90%的点设置为1。a取值0.33,算法循环100代。 3实验部
7、分 3.1仪器与试剂 UV2102PC型紫外可见分光光度计。8 邻硝基苯酚、间硝基苯酚、对硝基苯酚、乙醇、NaOH均为分析纯。标准溶液:分别准确称取邻硝基苯酚、间硝基苯酚、对硝基苯酚各0.4000g,用22mL0.15mol/LNaOH溶解并以2%乙醇定容至100mL,配制成4g/L的储备液。然后用2%乙醇稀释得到0.4g/L的标准溶液。参比溶液:移取3.2mL0.15mol/LNaOH于100mL容量瓶中,用2