主催: 社団法人 人工知能学会
会議名: 2003年度人工知能学会全国大会(第17回)
回次: 17
開催地: 新潟県新潟市 朱鷺メッセ
開催日: 2003/06/23 - 2003/06/27
RoboCupRescueシミュレーションにおけるエージェントを実装する際,我々は火災のクラスタリングという問題に直面した.既存のクラスタリング手法は,対象とする要素点の数nに対してO(n^3)もの計算時間を必要としてしまう.そこで,学習を用いたクラスタリング手法を提案し,クラスタリングの高速化をおこなう.クラスタリングとは,ある条件を満たした要素同士が集まってできるクラスターと呼ばれる集合に,要素を分類することをいう.本手法は,学習による前処理と,クラスタリングの本体とに分けられる.最初に,学習による前処理から説明する.学習対象の点の半径r以内の周囲の要素領域を適当な方位数dで分割し,その方位ごとの要素の密集度(要素領域に対する存在する要素の数の割合)を適当な分類によりp段階に分けた.それを,状態数とする.したがって学習に用いる状態はp^dパターンとなる.これらの状態を持つ点が輪郭点であるかどうかという選択をおこなう.その判断が正しかった場合に,報酬を与えるという学習を存在する全ての点に対しておこなう.この前処理により,要素点の集合をそれぞれ状態にパターン分類し,学習結果から輪郭点の集合を取り出すことができるようになる.次にクラスタリングの本体について説明する.まず学習の結果を使うことで,入力となる要素点n個の集合から輪郭点k個の集合を取り出す.そして,このk個の輪郭点に対して既存のクラスタリングをおこなう.最後に残った要素を,クラスタリングされた集合のうち最も近いものに割り当てる.以上により,全ての要素のクラスタリングが完了する.
このときの計算時間は輪郭の取り出しにO(n),取り出した輪郭点集合をクラスタリングするのにO(k^3),残った要素の分類にO(k*(n-k))必要となる.したがって,全体の計算時間はO(k^3)となる.ここで輪郭点の個数kは,最悪の場合はnと等しくなるので計算時間を短縮できない.しかし輪郭が最も短くなる場合を考えると,そのときはクラスターが一つで,その形状が円となる.このときnは円の面積に,輪郭点の個数kは円周に相当することからkはn^(1/2)の定数倍となり,クラスタリングにかかる計算時間を最適なO(n^(3/2))にまで短縮することができる.
このクラスタリング手法を用いて実験をおこなった結果,既存手法より短い計算時間でクラスタリングできた.また,高い精度で既存手法のクラスタリング結果を再現できた.