1.一种基于改进人工蜂群算法的扬声器体积优化方法,其特征在于,包括以下步骤:(1)以扬声器体积为目标函数,结合约束条件建立扬声器体积优化模型,并设置人工蜂群算法的参数,所述扬声器体积优化模型包含16个变量x=(x1,x2,...,x16),其中x1,x2,...,x16分别表示扬声器设计模型中16个边的长度,扬声器体积的公式为f(x)=Viron+Vmagnet,约束条件为Bmin-|Bgap|≤0,其中Viron表示扬声器中纯铁体积,Vmagnet表示扬声器中磁铁体积,Bgap表示纯铁之间间隙区域x9的磁通量密度,Bmin表示设定的磁通量密度下限;
(2)初始化第一代人工蜂群,计算所有食物源的目标函数值和适应度值;
(3)每个雇佣蜂对应一个食物源,雇佣蜂在当前最好的h个食物源附近依次采用多维度更新和贪婪更新策略更新食物源位置,h为设定值;
(4)雇佣蜂分享食物源信息给观察蜂,观察蜂根据全体雇佣蜂提供的食物源的适应度值用轮盘赌算法选择食物源;
(5)观察蜂在当前最好的h个食物源附近采用多维度更新和贪婪更新策略更新食物源位置;
(6)当有食物源连续limit代没有更新则将雇佣蜂变为侦查蜂并随机寻找新的食物源;
(7)重复执行步骤(3)至步骤(6)直至当前迭代次数大于最大迭代次数或计算函数值的次数达到最大评估次数;
(8)输出最优解。
2.根据权利要求1所述的基于改进人工蜂群算法的扬声器体积优化方法,其特征在于,步骤(2)中初始化的方式为在种群上下限范围内随机生成NP个食物源,种群上限为扬声器设计模型16个边的长度对应的最大值集合ub,种群下限为扬声器设计模型16个边的长度对应的最小值集合lb,食物源初始位置为 i∈{1,2,...,NP},j∈{1,2,...,16},其中 表示第i个食物源的第j维分量,lbj表示种群第j维分量的下限,ubj表示种群第j维分量的上限,rand是取值在[0,1]之间的随机数,设置迭代次数iter为1。
3.根据权利要求1所述的基于改进人工蜂群算法的扬声器体积优化方法,其特征在于,步骤(2)中食物源的适应度值fit(i)为:其中fi表示第i个食物源的目标函数值,abs(fi)表示第i个食物源的目标函数值fi的绝对值。
4.根据权利要求1所述的基于改进人工蜂群算法的扬声器体积优化方法,其特征在于,步骤(3)中在当前最好的h个食物源附近采用多维度更新策略的具体步骤为:
31)在当前所有食物源中选出适应度值最高的h个食物源,h=3,将这三个食物源的位置分别记录在食物源xglobal1、食物源xglobal2和食物源xglobal3中;
32)确定当前代的更新维度的数量为ND=floor(1+iter/MAXITER×5),其中iter为当前迭代次数,MAXITER为最大迭代次数,floor(rn)表示取不大于rn的最大整数,rn为任意实数;
33)在所有维中随机选取ND个维数并记录为k1L kND;
34)计算得到迭代新解:
其中i∈{1,2,...,NP},n1,n2是从集合{1,2,...,NP}中随机选取的,且满足i≠n1≠n2,j∈{k1,...,kND},globalr是从集合{global1,global2,global3}中随机选取的,rand是取值在[0,1]之间的随机数, 和 分别代表第n1、n2和第globalr个食物源的第j维分量。
5.根据权利要求1所述的基于改进人工蜂群算法的扬声器体积优化方法,其特征在于,步骤(3)中贪婪更新策略为:其中fitnessvi表示执行贪婪更新策略后第i个食物源的适应度值,fitnessxi表示在执行贪婪更新策略前第i个食物源的适应度值;
更新最优食物源,若新解仍为原食物源,则该食物源的已开采次数增加1。
6.根据权利要求1所述的基于改进人工蜂群算法的扬声器体积优化方法,其特征在于,步骤(4)中食物源信息包括位置、函数值和适应度值,轮盘赌算法的具体步骤为:
41)根据食物源的适应度值计算观察蜂对第i个食物源的跟随概率为
其中fitnessi表示食物源i的适应度值,fitnessk表示食物源k的适应度值,表示NP个食物源的适应度值总和;
42)令 其中i为食物源的序号,i∈{1,2,...,NP},Pii表示观察蜂对第ii个食物源的跟随概率,Pi'为前i个食物源的跟随概率累加和;
43)生成一个0到1之间均匀分布的随机值rand,若rand