Skip to content

Latest commit

 

History

History
47 lines (43 loc) · 2.89 KB

README.md

File metadata and controls

47 lines (43 loc) · 2.89 KB

y-kaimor_202302_bthesis

Title

遺伝的アルゴリズムを用いた自動プログラム修正における個体生成時間の計測とその分析

Abstracts

ソフトウェア開発において,デバッグは開発工数の半分を占める作業といわれている.自動プログラム修正は,バグを含むプログラムに変更を加えることで用意したテストを通過するプログラムを出力する手法であり,デバッグの工数を削減することが期待されることから研究が盛んに行われている.
  自動プログラム修正の手法として,遺伝的アルゴリズムに基づいて修正を行うものがある.
  ここで,遺伝的アルゴリズムを用いた自動プログラム修正は,目的のプログラムが得られるまでプログラム文の挿入,削除,置換及び交叉を行う手法である.今回実験で使用する自動プログラム修正ツールのkGenProgも遺伝的アルゴリズムを採用している.
  現状の自動プログラム修正における課題の1つとして,バグの修正に長い時間を費やす点があげられる.しかし,
kGenProgにはバグ修正時間のうち個体生成に対する計測機能が存在しない.
しかし,kGenProg及びMacawには個体の生成時間を計測および表示する機能が実装されておらず,解となる経路が最適に生成されているかどうかを確かめることが困難である.
  そこで,本研究ではkGenProgに各個体の生成に費やした時間を計測する処理を追加し,さらに得られた個体情報をビルドの成否および解であるかによって分類した.その後,全体の生成時間のうち修正に成功したプログラムの生成経路に要した時間およびビルドに失敗した個体に費やした時間を定量的に計測することで,自動プログラム修正における無駄な経路や修正に役に立った経路の時間的コストを調査した.結果として,修正対象のバグによっては全個体の生成時間のうち80%前後がビルドに失敗する個体に費やされたことや,多くのプログラムで修正に成功した個体に費やした時間が全体の10%を下回ったなどの結果を得た.

Chapters

  1. はじめに
  2. 準備
  3. 提案手法
  4. 評価指標とその実装
  5. 実験
  6. 考察
  7. 妥当性への脅威
  8. 今後の課題
  9. おわりに

Directories

  • data
    • 実験データ
    • Excelファイルは箱ひげ図のデータ
  • fig
    • 論文に用いた図+図のパワポ
  • genfiles
    • ファイルのコンパイル時の出力ファイル
  • old_editions
    • 論文の旧版
  • src
    • Pythonファイル(consは考察)

DONE

  • 2/7提出 -2/8 口語的表現の修正

TODO

  • スライド作成+うp
  • 2/14卒論発表