研究課題/領域番号 |
23K11359
|
研究種目 |
基盤研究(C)
|
配分区分 | 基金 |
応募区分 | 一般 |
審査区分 |
小区分62030:学習支援システム関連
|
研究機関 | 南山大学 |
研究代表者 |
蜂巣 吉成 南山大学, 理工学部, 教授 (30319298)
|
研究分担者 |
吉田 敦 南山大学, 理工学部, 教授 (50283495)
|
研究期間 (年度) |
2023-04-01 – 2026-03-31
|
研究課題ステータス |
交付 (2023年度)
|
配分額 *注記 |
2,860千円 (直接経費: 2,200千円、間接経費: 660千円)
2025年度: 1,040千円 (直接経費: 800千円、間接経費: 240千円)
2024年度: 520千円 (直接経費: 400千円、間接経費: 120千円)
2023年度: 1,300千円 (直接経費: 1,000千円、間接経費: 300千円)
|
キーワード | プログラミング演習 / プログラミング学習支援 / チャットボット / ミューテーション法 / プログラムの誤り箇所推定 |
研究開始時の研究の概要 |
プログラミング学習において行き詰まった学習者、すなわち、(I)何を記述すべきかわからず、コンパイルできる状態まで進まない学習者 (II)コンパイルは成功したが期待する実行結果が得られず、その原因や修正方法がわからない学習者、に対してチャットボットによる学習支援環境を提案する。模範解答プログラムを利用したチャットボットにより、(I) に対して行き詰まり箇所を特定して次に何をすべきかアドバイスし、 (II)に対して模範解答プログラムによくある誤りを混入したプログラムを作成して、その実行結果と学習者プログラムの実行結果を比較することで学習者の誤り箇所を推定し、デバッグ方法などをアドバイスする。
|
研究実績の概要 |
コンパイル可能だが期待する実行結果が得られないプログラムを、学習者が自分で誤り箇所に気付いて修正できるような支援を行うために,実行結果から間違い箇所を絞り込む方法について考察した。ミューテーション法を応用し、演習問題の模範解答プログラムに学習者のよくある誤りを含んだプログラム(ミュータントと呼ぶ)を作成し、実行結果を得る。学習者のプログラムの実行結果がどのミュータントの実行結果と一致するか比較し、実行結果が一致する場合、ミュータントと同じ誤りをしている可能性があるとして絞り込みを行う。よくある誤りとして、条件における関係演算子間違いと初期値の値間違いを取り上げた。効率よく間違い箇所の絞り込みを行うためにテストケースの入力値を利用した決定木を用いる。同じ実行結果となるミュータントが複数あった場合の誤りの推定が可能か、学習者が模範解答とは異なるプログラムを記述していた場合の誤りの推定が可能か考察した。ミュータントを20種類作成したところ、9種類は誤りが特定可能で、5種類は誤りの推定が可能、6種類が誤りの特定も推定もできないことがわかった。 本研究を実際の教育現場に用いる場合,ルールベース型のチャットボットを使用することで実用化できると考える。教員は、演習の前に模範解答からミュータントを作成して実行し、決定木の作成を行う。決定木からチャットボットのシナリオ(質問木)を作成し、作成したシナリオに沿って演習中にチャットボットが学習者に質問を行う。同じ実行結果になるミュータントが複数ある場合は、誤りやすさに順位をつけてヒントを出すなどの方法が考えられる。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
当初、2024年度に行う予定であったミューテーション法の考え方を応用した学習者プログラムの誤り箇所の推定方法について研究を進めた。一定の成果が得られたので、情報処理学会 情報教育シンポジウム2023(SSS2023)にて研究発表を行なった。
|
今後の研究の推進方策 |
昨年度指導した学生の卒業研究として、コンパイラが警告を表示するプログラムについて、学習者が何がおかしいかを自身で認識して、修正できるような方法について研究を行った。学習者の理解度を、誤り箇所がわからない場合、誤り箇所がわかっているがどう直したら良いかわからない場合などに分類し、それぞれに適した質問をチャットボットで行う方法を提案した。当該学生が大学院に進学したので、さらに研究を進め、学部生を対象にした評価実験なども行って研究成果を整理し、取りまとめて学会等で発表する。 近年chatGPTなどの生成AIも普及している。生成AIを利用したプログラミング支援についても調査・研究を進める。
|