---
# System prepended metadata

title: '5/13 15:00'

---

# 5/13 15:00
- 自動プログラム修正関係のテーマをしたい
- kGenProgのオンラインでもは触ったことがある
- APRの手法の改善は実装のコストが高い
- ☆kGenProgを実際にcloneして触っている
- ☆付属のバグ，Defects4Jのバグに対してkGenProgを実行してみる
- https://program-repair.org/bibliography.html
- 手法の提案，実験をしてなにかしらの事実を明らかにする
- ☆藤本，前島，岩瀬の研究をしる．スライドを見た方がいいかも．

- ★Uniform Edit Selection for Genetic Improvement: Empirical Analysis of Mutation Operator Efficacy
- ★Revisiting Test Cases to Boost Generate-and-Validate Program Repair
- ★Automated Patch Correctness Assessment: How Far are We?
- ★https://link.springer.com/chapter/10.1007/978-3-030-53291-8_33
- ☆は優先度高め，★は余裕があれば読む．


# 5/20 11:00
- https://sdl.ist.osaka-u.ac.jp/pman/pman3.cgi?DOWNLOAD=520
- https://www.youtube.com/watch?v=sgvJ-OfoDLQ
- https://sdl.ist.osaka-u.ac.jp/pman/pman3.cgi?D=705

# 5/27 15:00



## 個人的なメモ


### 2022/05/13 ~ 2022/05/20


- https://sdl.ist.osaka-u.ac.jp/pman/pman3.cgi?MODE=list;MENU=simple;FROM=year;SEARCH=;LOGIC=and;SORT=y_t_descend;PTYPE=all;LANG=ja
- 研究の概要を知る

- 気づいたこと

    - 簡単そうに見えるバグでも修正には時間がかかる
        - どのバグの修正に時間がかかったかを記録しておく
    - kgenprog-expにおいて，kgenprogをビルドすることができなかったため，最新のビルド済みjarを使用した
        - ブランチ'exp-for-journal'が存在しなかった
        - ブランチ'master'をcloneするように変更すると，今度はbuild.gradle内において，setFrom()が存在しないと言われる
    - Astorのビルドは問題なくできた
    - Defects4JにのMathについて，一部のバグ（math105,math106）が存在しない
    - kGenProgの最新版にはjdk11が必要だが，kgenprog-expはjdk8での動作を想定しているため，その点にも注意する必要があった


    - https://github.com/kusumotolab/kGenProg-exp


    - 特定のバグに対するAPRの方法について
    - 実行速度が遅くなる場合について
    - Fitness Functionについて
    - テストそのものについて

    - 最近の論文のabstract,introduction,conclusionは必ず読む

    - MD輪講スライド
        - https://github.com/kusumotolab/MD-rinko
        - https://github.com/kusumotolab/MD-rinko/blob/master/pdf/20220518_k-kotou/slide.pdf

    - 他大学での研究成果を知る
        - https://hyoka.ofc.kyushu-u.ac.jp/search/details/K003940/index.html

    - 欠陥限局（Fault Localization）について
        - 吉岡さん（卒論）
        
    - 優先順位を決めてやる

    ### 2022/05/20 ~ 2022/05/27
    
    - Mathすべてに対するkGenProgの実行は未完了

    - 自動修正適合性: 新しいソフトウェア品質指標とその計測手法の提案（ https://sdl.ist.osaka-u.ac.jp/pman/pman3.cgi?DOWNLOAD=541 ）に興味を持った

    - 論文
        - Uniform Edit Selection for Genetic Improvement: Empirical Analysis of Mutation Operator Efficacy
            - どのようなミューテーション効率的かについて．深堀りできそう

        - Revisiting Test Cases to Boost Generate-and-Validate Program Repair
            - テストケースとAPRの実行結果との間の関係について興味深い結果が提示されていた(特に失敗テスト・スタックトレースについて)
            
        - Automated Patch Correctness Assessment: How Far are We?
            - 機械学習を用いていた

        - Must Fault Localization for Program Repair
            - 数学的なアプローチであった

    - 案
        - Exceptionの種類と成功率および実行時間との関係
        - https://arxiv.org/pdf/2201.00736.pdf
        - 自動修正適合性が向上するようなリファクタリングについてさらに深堀り
        - https://github.com/kusumotolab/s-yui_202104_ipsj/blob/master/s-yui_202104_ipsj.pdf

    - 研究テーマになりそうなもの
        - 自動修正適合性の計測方法について
            - 実行しないと計測できないので，実行せずに計測する方法を考える
        - 人に対するリファクタリングとAPRに対するリファクタリングにはどのような関係性があるか
        - コードの保守性と同じように，自動修正適合性はDecayするのか
        - テストの出来の良さと自動修正適合性との関係
        - リファクタリング前後での自動修正の実行時間の変化について


    - ☆helへのログイン方法を聞く． backup以下の九間と前島のフォルダを参考に，自動修正適合性の計測ツールが動かせるかを確認．

    ### 2022/05/27 ~ 2022/06/03
    
    - Mathすべてに対するkGenProgの実行および実行時間の計測が完了
        - タイムアウトになる例が多かった

    - 自動修正適合性計測ツールの動作確認は未完了

    - 論文
        - 『プログラムに対する欠陥限局の適合性計測』
            - プログラムがSBFLにどの程度適しているかを計測する方法について
            - 自動修正適合性だけでなく，これも面白そう
        - "Exception-Driven Fault Localization for Automated Program Repair"
            - スタックトレースを用いた欠陥限局の方法について

    - 案
        - ☆『プログラムに対する欠陥限局の適合性計測』を多くのプログラムに対して実行する
        - SBFL適合性の改善案について

    - タスク
        - 佐々木さんのツールの動作確認をする
            - 自分の環境で再現ができるかを確認する
        - 前島さんが使用したデータを手元に持ってくる