本研究では,クリーンで,かつグリーンなMobile App社会の実現を目指して,Mobile Appコードの自動進化技術を開発する.本提案では,オープンソース上の大量のMobile Appリポジトリの活用により,コード変更がクリーンで,かつグリーンな状態であるか(クラッシュを引き起こさず,電力を異常に消費しないか)を予測し,リスクが高い場合はコードを自動的に進化させる.そのために,(T1) Mobile App開発リポジトリマイニング基盤の開発,(T2) バグ混入予測モデルの開発,(T3) ソースコードの自動進化,(T4) クラウド基盤の開発,及び,システム化の検討を引き続き行った.それぞれの研究実績の概要は次の通りである. (T1) 自動実行・実データ収集機構として,Mobile Appを自動的に動作させ,かつ,消費電力を計測するマイニング基盤(GreenMiner-2)を開発した.本成果によって,1つのベンチマーク,及び,4つの実Mobile Appから,使用電力に関するデータを取得し,ソースコードと関連付けることができた. (T2) ソースコードの変更に対する予測モデルについて,大きく2つの実績が得られた.1つ目は,モデル構築に用いる学習データが予測精度に及ぼす影響を明らかにした点である.2つ目は,ソースコードの変更に対する予測モデルに深層学習を拡張・適用し,これまでよりも予測精度を約10ポイント向上した点である. (T3・T4) 修正履歴の傾向を反映した自動バグ修正技術 Prophetを本研究課題に適用し(実行環境をAmazon AWS上で実現し,クラウド基盤の構築),自動バグ修正の性能を評価した.主な研究実績の1つは,Prophetを適用する際,同一のプロジェクトから履歴を収集することで,無意味な修正パッチの生成数を減らせることを明らかにした点である.
|