社団法人 電子情報通信学会
THE INSTITUTE OF ELECTRONICS,INFORMATION AND COMMUNICATION ENGINEERS

信学技報
TECHNICAL REPORT OF IEICE.

フェロモン作用を考慮したミツバチコロニー最適化
雄大†

白崎下村将†

杉本雅樹†

上手洋子†

西尾芳文†

† 徳島大学工学部 〒 770–8506 徳島県徳島市南常三島町 2-1
E-mail: †{shirasaki, s-sho, sugimoto, uwate, nishio}@ee.tokushima-u.ac.jp
あらまし

本報告で我々は，他のミツバチを引き付けるフェロモン作用を付加した新たなミツバチコロニー最適化手法 (Pheromone-Based Honeybee Colony Optimization:PBHCO) を提案する．このフェロモンには全てのミツバチを最適な場所に引き付け，集める効果がある．この効果により，今回の提案手法では従来のミツバチコロニー最適化手法と比べ，より素早く最適解に収束することができる．我々はこの新たな手法の性能を，多次元の単峰性関数と多峰性関数において検証する．
キーワード

最適化，フェロモン，ミツバチ，目的関数

Pheromone-Based Honeybee Colony Optimization
Yudai SHIRASAKI† , Sho SHIMOMURA† , Masaki SUGIMOTO† , Yoko UWATE† , and Yoshifumi
NISHIO†† Department of Electrical and Electronic Engineering, Tokushima University
2-1 Minami-Josanjima, Tokushimashi, Tokushima, 770-8506, Japan
E-mail: †{shirasaki, s-sho, sugimoto, uwate, nishio}@ee.tokushima-u.ac.jp
Abstract In this study, we propose new honeybee colony optimization (BA) containing pheromone action thathas the eﬀect to attract other bees. Since many bees are attracted to the best site, the proposed BA can converge
to the optimal solution more quickly. We conﬁrm the eﬀectiveness of the proposed new BA for both unimodal andmultimodal functions with various dimensions.
Key words Optimization, Pheromone, Honeybee, Object function

1. ま え が きに周囲を探索することで芳醇な食料源を探す．そして芳醇な食料源を発見すると，その食料源に相応数のミツバチを派遣する

ミツバチコロニー最適化 (Bee Algorithm:BA) [1] は線形計ために，探索バチは巣に戻って尻振りダンスを行なう．このダ画法等の最適化問題に用いられる最適化手法の一つとして知らンスは食料源の距離，方向を巣で待機しているミツバチと共有れており，これはミツバチが餌を採る行為 (採餌行動) をモデルする役割がある．そして派遣バチが食料源へと向かう．

化したものである [2]．

本研究では，上記のミツバチにおける採餌行動をモデル化し初めに，現実世界のミツバチについて説明する．食料を探索た BA を使用する．BA は，ランダム探索と近隣探索を行うこするミツバチには，探索バチと派遣バチの 2 種類が存在する．とで組み合わせ最適化問題と機能的最適化問題のどちらにも使そして探索バチの採餌行動の原理は，派遣行動とナビゲート行用することができる．BA の長所は，いくつかの単純な命令の動を組み合わせたものから成る. 派遣行動は巣で待機している組み合わせだけで非常に高い効率を得られること，また局所解他のミツバチに探索結果を伝えることで食料源に相応な数のミからの脱出が簡単であることである．しかし，ある程度広範囲ツバチを派遣する役割，ナビゲート行動は巣で待機している他に探索を行うため，収束しにくいという問題点がある．のミツバチに探索した場所の位置情報を伝え，その場所まで誘

そこで我々は，フェロモン特性の利用を提案する．フェロモ導する役割をそれぞれ持つ．そして派遣バチは，探索バチの指ンを利用する昆虫として，アリやシロアリがよく知られている示で行動する．これら 2 種類のミツバチを用いることで，ミツが，近年の研究でミツバチもフェロモンを行動決定に利用してバチは集団行動をとることができる．この行動は昆虫では珍しいることが分かってきた．このフェロモンには様々な種類があいとされ，それゆえ，社会的な昆虫とも言われている．

り，それぞれ異なる特徴を持っている．その中のひとつとして，次に採餌行動の手順を説明する．まず，探索バチはランダム

道しるべフェロモンがある．道しるべフェロモンは，食物のあ—1—

る場所を巣内の仲間に知らせるため，食物を見つけた個体が巣を更新する．

への帰り道に残すある種の化学物質である．

[Step. 5] もし f (X i (t+1)) が f (X i (t+1)) <= f (X i (t)) の場

本報告では，この道しるべフェロモンを付加させたアル合，[Step. 6] に移動する. また，f (X i (t+1)) が f (X i (t+1)) >ゴ リ ズ ム (Pheromone-Based Honeybee Colony Optimiza-f (X i (t)) の場合，X i を更新し，tRi = 0 として [Step. 7] に移tion:PBHCO) を提案する．この PBHCO の重要な特徴は，動する．

フェロモンが全てのミツバチに影響を与えることである．もし[Step. 6] も し tRi が tRi < TR の 場 合 ，tRi = 0 と し探索中のミツバチが局所解に陥ったとする．だがここでフェロて Si (t) を 初 期 化 す る ．ま た ，tRi が tRi > TR の 場 合 ，モンを最良の場所に配置していると，そのミツバチはフェロモSi (t + 1) = 0.9Si (t) となる．

ンに引き付けられることで局所解から容易く脱出することがで[Step. 7] 現更新数の全てのミツバチの位置情報 X i を評価きる．したがって PBHCO では局所解から簡単に脱出でき，かし，全体で最良の位置情報を X Gbest とする．PBHCO の重要つ最良点に配置したフェロモンに引き付けられることで従来のな特徴は，全てのミツバチ X がフェロモンの影響を受けるこBA より高速に収束することができる．とである．この時フェロモンは，全体で最良の位置情報 X Gbest

PBHCO の原理についてはセクション II で説明する．セクに配置される．さらに，フェロモンは X Gbest からの順位によっ

ション III では，単峰性と多峰性それぞれ 2 つずつ計 4 つの評価て引き付ける強さが異なる．つまり，X Gbest にランキングし関数に対してシミュレーションを行い，従来の BA と比較する

た際の順位が上位であるほど効果が強く，逆に下位ならば効果ことにより機能的最適化問題での PBHCO の性能を確認する．

が薄いということである．下記に順位におけるフェロモンの強さの式を示す．

2. PBHCO

M − (zi − 1),
M −1
X i (t + 1) = X i (t) + di Q(X Gbest − X i ),di = p ×

通常の BA と比較した場合における，PBHCO の重要な特徴は，フェロモンを使用していることである．このフェロモンは全体での最良の位置 X Gbest に配置され，更新する毎に他のミツバチは X Gbest に引き付けられるように移動していく．途
中で現在よりも評価の高い位置が発見された場合は，そちらを最良の位置と更新してフェロモンを配置，次の更新から他のミツバチは新しく更新された位置に引き付けられるようになる．以下より，PBHCO の詳細なアルゴリズムについて示す．

(3)
(4)

di の値によってフェロモンの強さを表す．di の値は順位が下位にいくほど小さくなり，フェロモンの強さも弱くなる．p は正の加速度係数を示す．

[Step. 8] t = t + 1 を行う．[Step. 3] から [Step. 7] までの作業を t = T を満たすまで繰り返す．

3. シミュレーション[Step. 1] から [Step. 6]，[Step. 8] は従来の BA と同様であり，[Step. 7] で PBHCO の特徴であるフェロモンのアルゴリズムを示す．探索バチの数を M ，派遣バチの数を N ，そして評価

3. 1 ベンチマーク関数
本報告では，PBHCO の性能を 4 種類のベンチマーク関数を用いることで評価を行う．以下にそれぞれの数式とその最適解の高い場所の数を b とする．の位置を示す．

[Step. 1] t = 0, tRi = 0 (tRi はグループの初期化カウント)とする．まず，i 匹 (i = 1, 2, ..., M ) の探索バチをランダムに

X i = (xi1 , xi2 , ..., xiD ) の位置に配置する．D は次元数のパラメータである．

[Step. 2] 次に，探索バチ X i (t) の位置情報を評価する．そ
して評価の高い順にランク付け zi を行い，上から順に最良の位置と比較的良い位置を決定する．

[Step. 3] X i の周りに派遣バチ j = (1, 2, ..., Ni ) を配置する．この時，[Step. 2] で行ったランク付けに従って，評価の高い順に派遣バチを各々の X i の周りに配置していく．派遣バチの位置情報 rij を決定する式を下記に示す．

rij d = xi (t) + ∆φij (t),(1)∆φij = (Si (t)Qij , θij ),(2)

1. Rosenblock 関数 :DX
f1 (x) =(100(x2d − xd ＋ 1 )2 + (1 − xd )2 ),

(5)

d=1

問 題 の 範 囲 は x ∈ [−2.048, 2.048]D ，最 適 解 の 位 置 x∗ は[1, 1, ..., 1] である．

2. Sphere 関数 :DX
f2 (x) =x2d ,(6)d=1

問 題 の 範 囲 は x ∈ [−5.12, 5.12]D ，最 適 解 の 位 置 x∗ は[0, 0, ..., 0] である．

3. Stretch 関数 :DX
f3 (x) =((x2d+1 + x2d )0.25 (1 + sin(50(x2d+1 + x2d )0.1 )2 ,d=1

θij は極座標表示，Q はランダム値 [0, 1] を表す．θij は偏角と一様に分布した確率変数 [0, 2π] から成る．Sij は派遣バチの捜索する最大範囲を示す．

[Step. 4] 現更新数の全ての派遣バチの位置情報 f (Rij ) を評価する．そして，各々のグループ i の探索バチの位置情報 X i(7)問題の範囲は x ∈ [−10, 10]D ，最適解の位置 x∗ は [0, 0, ..., 0]である．

4. Rastrigin 関数 :DX` 2´
f4 (x) = 10D +xd − 10 cos(2πxd ) ,(8)d=1—2—

問 題 の 範 囲 は x ∈ [−5.12, 5.12]D ，最 適 解 の 位 置 x∗ は[0, 0, ..., 0] である．

f1 と f2 はピークを 1 つしか持たない単峰性関数で, f3 と f4

表1f1

は多数のピークを持つ多峰性関数である．それゆえ，多峰性は単峰性よりも局所解に陥りやすい傾向がある．この 4 つの目的

f3Gbest ( f (Pg))

f4p=0.1
p=0.4
p=1.0

2.5

10PSO

PBHCO

25.25

21.73

27.41

Min.

20.76

19.44

24.66

Min. 3.90e-056 1.04e-060

4.25e-111

Avg.

63.54

20.58

26.28

Min.

58.39

8.33

22.25

Avg.

140.30

61.19

50.15

Min.

112.43

49.75

34.82

表 2 D = 100 のおける BA，PSO，PBHCO の比較

f
f1

2.4BA
Avg.

Avg. 7.67e-055 7.36e-054 1.48e-109f2関数の最適解の評価値は全て 0 である．また，本報告では関数の次元数 D は，30 と 100 の 2 種類に設定する．

D = 30 のおける BA，PSO，PBHCO の比較

f10BAPSO

PBHCO

Avg.

129.10203.37

97.31

Min.

97.04

120.413

95.02

Avg. 5.63e-016 2.46e-002 1.01e-021
f2

2.3

10f3

0200

4006008001000 1200 1400 1600 1800 2000

f4

Min. 1.04e-016 6.03e-005

2.05e-023

Avg.

259.13209.34150.35Min.

254.36174.09133.20Avg.

769.94471.12

191.65

Min.

634.78387.41120.39Generation ( t )図 1 フェロモンの強さ p の比較．

D = 100 の時，PBHCO は全ての場合で最も良い結果を得た．PSO は高次元の問題で最適解を発見するのは難しい，な

3. 2 シミュレーション結果

ぜなら PSO は最適解を発見する前に収束してしまい，局所解比較実験を始める前に，最適なフェロモンの強さ p を求めるに陥ってしまうからである．また，図 3 より，PBHCO のフェ必要がある．実験には StretchV 関数 (D = 100) で行う．そのロモンが高次元問題や多峰性関数において非常に効果的である

結果を図 1 に示す．結果から，p = 0.4 が最適な p の値であることを示している．これらの結果から，BA にフェロモンを追と考えられるため，以下の実験からはこの値を使用する．

加することは効果的であると言える．

次に，PBHCO の性能を調査する．本報告では，BA，粒子

4. ま と め群最適化（particle swarm optimization：PSO) [4]，PBHCOの 3 つを比較，評価する．PSO は，BA と同様に目的関数の本報告で，私たちは新しいフェロモンベースのミツバチコロ解くために用いられる一般的な最適化手法の 1 つであり，PSO

ニー最適化 (PBHCO) を提案した．その結果，PBHCO は今回の特徴が PBCHO のフェロモン作用と似通ったものであるたの関数近似の実験で良い結果を得られた．これはフェロモンにめ，今回比較対象に加えた．まず，BA，PBHCO に以下のパ他のハチを引き付ける効果があり，それゆえ局所解に陥ることラメータを与える．

なく高速に最適解に収束できたからである．これより，フェロ

M = 20, b = 2, e = 6, N1 = 9, N2 = 5, zi = 0.02
b は最良の位置，e は比較的良い位置，N1 は最良の位置に派遣するハチの数，N2 は比較的良い位置に派遣するミツバチの数をそれぞれ示している．また，PSO に以下のパラメータを与える．

モンは効果的であると言える．特に，フェロモンは高次元問題や多峰性関数においてより効果的であると言える．今後の目標は，現在は近くに引き付けるだけのフェロモンを用いているが，それとは別の異なった効果を持ったフェロモンを加えた場合の検証を行うことである．
文

c1 = c2 = 1.8, w = 0.5, K = 60
c1 ，c2 は正の加速度係数，w は慣性重量，K は粒子数を示しており，K は BA や PBHCO の合計のハチの数と等しい．

D = 30 の時の結果を表 1 に示す．
f2 と f4 において，PBHCO が最も良い結果を得た．しかし，f1 と f3 ではあまり良い結果を得られず，代わりに PSO が最も良い結果を得た．これは PSO が低次元が得意であること，また単峰性問題ではピークが 1 つしかないので一点集中する特徴のある PSO は高速で収束できるためと考えられる．

f1 では，PBHCO は BA と似た結果を得た．図 2 から, フェロモンは低次元の問題ではあまり効果が無いことが分かった．

献[1] D.T. Pham, A. Ghanbarzaden, E. Koc, S. Otri, S. Rahimand M. Zaidi, “The Bees Algorithm - A Novel Tool for Complex Optimization Problems,” Intelligent Production Machines and Systems, pp. 454-459, Cardiﬀ University, UK,2006.
[2] K. Guney and M. Onay, “Bees algorithm for interference
suppression of linear antenna arrays by controlling thephase-only and both the amplitude and phase,” Faculty ofEngineering, Erciyes University, 2007.
[3] M.S. Blum, Honey Bee Pheromones in the Hive and the
Honey Bee, pp. 385–389, Dadant and Sons, 1992.
[4] J. Kennedy and R. Eberhart, “Particle swarm optimization,” Proc. IEEE Int. Conf. on Neural Networks, vol. 4,pp. 1942–1948, 1995.

次に，D = 100 の時の結果を表 2 に示す．

—3—4501010Gbest ( f (Pg ))gGbest ( f (P ))PSO
BAPBHCO
310210PSOBAPBHCO

010-5010-100101-150

10100500

1000

1500

20000500

Generation ( t )

1000

(a)

2000(b)331010g

Gbest ( f (Pg ))PSO
BAPBHCOGbest ( f (P ))1500

Generation ( t )210PSOBAPBHCO2101

1

10100500

1000

1500

20000500

Generation ( t )1000(c)
図21500

2000

1500

2000

Generation ( t )(d)

D = 30 における 4 つの関数の Gbest 平均．
(a) Rosenblock 関数．(b) Sphere 関数．(c) Stretch 関数．(d) Rastrigin 関数．

5101010Gbest ( f (Pg ))PSO
BAPBHCO

4gGbest ( f (P ))10310210010-1010PSOBAPBHCO-20

101-3010100500

1000

1500

20000500

Generation ( t )1000

Generation ( t )

(a)

(b)
42.5

10Gbest ( f (Pg ))Gbest ( f (Pg ))10PSO
BAPBHCO

2.4

10

2.3

10PSO
BAPBHCO

3102.2102100500

1000

1500

20000

Generation ( t )
(c)
図3500

1000

1500

2000

Generation ( t )(d)

D = 100 における 4 つの関数の Gbest 平均．
(a) Rosenblock 関数．(b) Sphere 関数．(c) Stretch 関数．(d) Rastrigin 関数．

—4—