本研究は,群知能を用いてグラフ構造プログラムを自動生成する手法を提案することを目的としている.先に筆者らが開発したアリコロニー最適化に基づくグラフ構造プログラム生成手法Cartesian Ant Programming (CAP)では,プログラムの構成要素となるノードを格子状に配置した環境内をアリエージェントが行動する.しかし,各ノードに対して関数記号は固定的に割り当てられるため,問題に対する事前知識が必要という問題があった.平成25年度の取り組みでは,このCAPを改良し,探索状況に応じて各ノードへの関数記号の割り当てを修正する「ノードの置換を行うCartesian Ant Programming」を提案し,従来手法よりも優れた性能を持つことを示した.平成26年度の取り組みでは,さらに手法の汎用性を高めるため,「ノードへの関数記号の割り当て機能を備えたノード解放型Cartesian Ant Programming」を提案した. 従来手法が初期のノード群に対してあらかじめ周期的に関数記号を割り当てて必要に応じて修正を行うのに対して,平成26年度に提案した「ノードへの関数記号の割り当て機能を備えたノード解放型Cartesian Ant Programming」では,探索初期からフェロモンに基づいて各ノードの関数記号を経路と同時に最適化するものとなっており,より自由度の高いプログラムを生成できる.また,従来手法の振る舞いを分析した結果,用意したノードのうち,入力に近い方のノード群しか有効に活用されていないことが分かった.提案手法では,あらかじめ用意したノード群の一部を探索序盤は使用不可とし,一定のステップ経過後にそれらを使用可能とするもので,使用ノードに関する位置の偏りを解消し,より高性能なプログラムの向上につなげている.
|