Project/Area Number |
21H04877
|
Research Category |
Grant-in-Aid for Scientific Research (A)
|
Allocation Type | Single-year Grants |
Section | 一般 |
Review Section |
Medium-sized Section 60:Information science, computer engineering, and related fields
|
Research Institution | Kyushu University |
Principal Investigator |
亀井 靖高 九州大学, システム情報科学研究院, 教授 (10610222)
|
Co-Investigator(Kenkyū-buntansha) |
林 晋平 東京工業大学, 情報理工学院, 准教授 (40541975)
肥後 芳樹 大阪大学, 大学院情報科学研究科, 教授 (70452414)
馬 雷 東京大学, 大学院情報理工学系研究科, 准教授 (70842061)
松本 真佑 大阪大学, 大学院情報科学研究科, 助教 (90583948)
|
Project Period (FY) |
2021-04-05 – 2025-03-31
|
Project Status |
Granted (Fiscal Year 2024)
|
Budget Amount *help |
¥41,860,000 (Direct Cost: ¥32,200,000、Indirect Cost: ¥9,660,000)
Fiscal Year 2024: ¥9,490,000 (Direct Cost: ¥7,300,000、Indirect Cost: ¥2,190,000)
Fiscal Year 2023: ¥10,660,000 (Direct Cost: ¥8,200,000、Indirect Cost: ¥2,460,000)
Fiscal Year 2022: ¥10,400,000 (Direct Cost: ¥8,000,000、Indirect Cost: ¥2,400,000)
Fiscal Year 2021: ¥11,310,000 (Direct Cost: ¥8,700,000、Indirect Cost: ¥2,610,000)
|
Keywords | 自動プログラム修正 / テストスイート / 自動生成 / 開発コンテキスト |
Outline of Research at the Start |
自動バグ修正 - プログラムへの入力に対する期待出力結果(オラクル)が満たされるまでコード修正を繰り返すことによってプログラムを修復する技術の総称であり,近年,精力的に研究されている.本研究では,オラクルであるテストケースの人手による準備を抑えた上で,オラクルが十分に用意された場合と同程度の修正性能を達成するにはどうするのか,という研究課題(学術的「問い」)に取り組む.本研究では,学術的「問い」に答え,自動バグ修正適用におけるオラクル不足の課題を解決し,自動バグ修正のフルオートメーションを実現することである.
|
Outline of Annual Research Achievements |
2022年度については,大きく3つのことに取り組んだ. A. 擬似オラクルの生成方法.自動テストケース生成によって生成されたテストスイートが有用であれば,擬似オラクルの一部として用いることができる.自動プログラム修正に自動テストケース生成を用いる際に,どのクラスを入力として与えるべきかを調査した.失敗テストケースの実行経路に含まれるクラスを考慮し自動生成したテストスイートを自動プログラム修正に用いることで,パッチの生成数は減少するが,正しい修正は増加する場合があることがわかった.また,自動テストケース生成を行う際に,どのようなプログラムの構造が生成されるテストケースの品質に影響を与えるかを分析した. B. 欠陥限局の高度化にも2021年度より引き続き取り組んだ.例えば,(a) テストの自動改善を視野に入れたテストコード側に含まれる動的スメルの検出技術の確立,(b)情報検索ベースによる欠陥限局の分析,(c)欠陥限局における精度低下の要因調査,などがあげられる. C. 自動修正技術の高度化にも取り組んだ.例えば,自動修正や欠陥限局の情報源には過去の変更履歴を用いるが,その履歴の中に含まれるリファクタリングの変更履歴がノイズとなりえる.そのため,ノイズを除去するためにリファクタリング検出手法の分析を行った.それ以外にも, (a) ディープニューラルネットワーク(DNN)アーキテクチャの脆弱ブロックを探索し,AIソフトウェアを修正する技術や, (b) 未知の破損を含む可能性のある,収集され誤分類されたいくつかのサンプルを用いて,展開されたDNNの頑健性を強化する技術の開発を行った.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
昨年度構築した分散実行環境を活用し,擬似オラクルの自動生成,欠陥限局の高度化,及び,自動修正技術の高度化に関する効率よく研究を進めることができた.また,それぞれの研究成果は研究会や国際会議において発表できており,さらには一部の成果は,論文誌としても採録されている.そのため,研究の進捗として順調に進展していると考える.
|
Strategy for Future Research Activity |
現在までの進捗状況は,おおむね順調に進展している.擬似オラクルの生成,及び,コンテキストの体系化を深堀する予定である.また,大規模言語モデルの急速な技術進化が報告されている.擬似オラクルの生成,欠陥限局,及び,自動修正の部分への適用を検討する.今年度でも行ったように,今後も国内外の研究会に積極的に参加し(オンライン開催を含む),多面的に意見を取り入れることで問題の早期解決を目指す.
|