象群游牧算法--EHO

象群游牧算法的数学模型

象群的游牧行为非常复杂,但是其中一些行为可以帮助我们寻找全局最优解和局部最优解。对此,进行数学建模为:
(1) 象群的每个部落都有固定数目的大象;
(2) 每次迭代中,部落中都有一定数目的大象离开部落,独自生活并与部落保持一定的联系;
(3) 每个部落都是由女族长领导-----在算法中,女族长是适应度值最大的大象。
image

象群游牧算法

部落中大象位置的更新公式

1)部落中普通大象的更新公式:

(p_{jc}^{t+1} = p_{jc}^{t} + alpha*(p_{best}-p_{jc}^{t})*rand)
其中,(p_{jc}^{t+1})(p_{jc}^{t})分别是部落(c)中,第(j)个大象的更新后和更新前的位置,(t)表示迭代次数,(alpha)表示[0,1]之间的随机数。

2)族长的位置更新公式:

(p_{center, c} = frac{sum_{r=1}^{n_c}p_{jc}^{t}}{n_c})
其中,(n_c)是部落中大象的数目。
(p_{bested} = eta*p_{center, c})
其中,(p_{bested})表示更新后的族长位置, (eta)是[0,1]的随机数。

3)公象的分离公式:

(p_{worst}^{t+1} = p_{min,c} + rand*(p_{max,c} - p_{min,c}))
其中,(p_{max,c})(p_{min,c})表示部落中大象位置的上下界。

原文地址:https://www.cnblogs.com/mysterygust/p/14639356.html