1.一种基于人工蜂群算法结合最小二乘法的谐波检测方法,其特征在于:包括以下步骤:S1:在标准人工蜂群算法的基础上,向人工蜂群算法中引入Tent混沌映射进行算法改进,提出一种混沌人工蜂群(Chaotic Artificial Bee Colony,CABC)算法;CABC算法在整个蜂群搜索到的最优食物源基础上产生混沌序列;
S2:在此CABC算法的基础上,引入改进后的Tent混沌映射,提出一种混沌改进人工蜂群算法(Chaotic Improve Artificial Bee Colony,CIABC);
S3:通过CIABC算法优化未知参数,以算法输出的最优值作为RLS算法的初始值,利用RLS算法进行参数估计,由最终更新权值得到谐波的幅值和相位。
2.根据权利要求1所述的一种基于人工蜂群算法结合最小二乘法的谐波检测方法,其特征在于:所述CABC算法实现步骤如下:
步骤1:在D维空间,给定迭代次数M,给定食物源总数S,每一只雇佣蜂对应一个食物源位置,雇佣蜂和观察蜂的个数相同,雇佣蜂在其领域位置产生新位置;所有的雇佣蜂将食物源位置信息共享给观察蜂;
食物源位置更新根据 进行;
式中, 表示初始化第i个蜜源所处位置的第j维值;i=1,2,……,S,j=1,
2,……,D, 分别为第j维对应的蜜源位置的最小值和最大值,R为0和1之间的随机数;
步骤2:观察蜂根据食物源质量来确定选择食物源,并记录所选择的最优食物源位置和适应度值;
对所选雇佣蜂和观察蜂位置进行邻域搜索,根据 进行
位置更新,式中t为迭代次数, 代表迭代第t+1次时,新i产生的第个食物源第j维的位置值, 代表迭代第t次时,第i个食物源第j维的位置值;k为随机指定的个体,且k≠
1;r为[-1,1]范围内的随机数;
计算出新食物源的适应度值并比较,以食物源质量更优秀的蜜源位置代替原食物源位置。
步骤3:观察蜂每一次尝试新位置后都经过贪婪选择,尝试成功则更新位置,尝试失败则保持原位置,如果尝试失败的次数超过了预设的limit值时,可以认为此食物源质量低于开采阈值。若食物源位置保持不变,那么观察蜂本轮搜索任务结束。对应的雇佣蜂抛弃该食物源且不再记忆其位置;雇佣蜂变为侦察蜂开始随机搜索新食物源位置;
步骤4:记录当前最优解及位置,算法迭代次数达到最大M次,则算法结束,输出最优食物源的适应度值;若未达到最大迭代次数,则判断全局最优食物源是否得到更新;若更新,则重复步骤2到步骤3;否则根据 对常规变量 进行映射变换,得到混沌变量,介于[0,1]之间,再通过 对 进行映射得到混沌变量 最后通过 将混沌变量
变换为常规变量 再重复步骤2到步骤3。
3.根据权利要求1所述的一种基于人工蜂群算法结合最小二乘法的谐波检测方法,其特征在于:S1中所述的引入Tent混沌映射进行算法改进,具体为通过对Tent混沌映射进行改进,克服自身小周期和不稳定周期点。
4.根据权利要求2所述的一种基于人工蜂群算法结合最小二乘法的谐波检测方法,其特征在于:步骤2中所述的计算出新食物源的适应度值并比较,以食物源质量更优秀的蜜源位置代替原食物源位置,其具体操作规为:设fi是非线性优化问题的目标函数,求解最大值时,适应度函数就是目标函数;求解最小值问题时,适应度函数为目标函数的变换形式,通过 计算得到;
雇佣蜂通过比较适应度值选择更优质的蜜源,观察蜂选择食物源的规则为:式中t=1,2,……,M;Fi(t)为迭代第t次时第i个食物源的适应度值。
5.根据权利要求1所述的一种基于人工蜂群算法结合最小二乘法的谐波检测方法,其特征在于:S3具体操作过程为:对谐波进行估计,首先对信号采样,采样频率满足奈奎斯特准则;
采样系统的等效线性模型表示为:Y'(k)=H(k)·A+v(k),k=1,2...,K,其中Y(k)为第k次T的含噪声的信号测量值,A=[A1A2……AN]为幅值向量矩阵,v(k)为第k次采样的相加噪声,H(k)为系统结构矩阵的第k行;系统的结构矩阵表示为:谐波检测问题被简化为搜索最优的φn使得Y(k)与Y(k)的差值趋于一个最小值,其中Y(k)=H(k)·A,利用CIABC算法确定不同的相位信息φn,结合使用RLS算法进行幅值的估计。