2022 Fiscal Year Research-status Report
Learning support method adaptive to program logic based on analysis of coding history
Project/Area Number |
22K02854
|
Research Institution | Tokyo Gakugei University |
Principal Investigator |
宮寺 庸造 東京学芸大学, 教育学部, 教授 (10190802)
|
Co-Investigator(Kenkyū-buntansha) |
中村 勝一 福島大学, 共生システム理工学類, 教授 (60364395)
|
Project Period (FY) |
2022-04-01 – 2025-03-31
|
Keywords | コーディング履歴 / プログラムロジック推定 / 適応的な学習支援 / プログラミング学習 |
Outline of Annual Research Achievements |
プログラミング学習は,学習者による試行錯誤の積み重ねにより進行し,多くの困難を伴う.そのため,学習者の状況を的確に把握し,適応的に指導することが求められるが,現実的には困難である.特に,プログラムの組み立て方(ロジック)が1つとは限らず,それに連動して生じる躓きも異なることが,状況把握を妨げる大きな要因となっている.本研究では,コーディング経過の分析により,学習者が指向するロジックを推定することで,従来よりも踏み込んだ状況把握と適応的な支援を実現することを目指す.そのために,(1) プログラムロジックの推定手法,(2) ロジックに応じて学習状況を推定する手法を開発する.その上で,(3)学習状況に適応的な教材提示システムを開発することで,従来よりも現実に即した教材提示を実現し,教授者がより抽象度の高い事柄の指導に専念可能とすることを狙う. 令和4年度は,プログラムロジック推定手法の開発に取り組んだ. (1)ロジック推定の準備:これまでに収集した「過去4年間の演習におけるソースコード群」を精査し,学生が指向した実際のロジックを演習課題毎に整理した.これに基づいて,ロジック毎のソースコードをチャンク分解した.これにより,学習者のロジック構成の意図を含むチャンク分割情報(チャンクの振舞いや入出力情報)が得られた. (2)ロジック推定モジュールの開発:ある学習者が現在取り組む課題で作成したソースコードとコーディング履歴(過去の演習で作成したコード群)を入力として,指向しているロジックを機械学習により推定した.具体的には,(1)で準備した「ロジック」と「チャンク分割情報」をトレーニングデータとして,Multiclass Decision Forestを用いた.後に支援システムに組み入れるため,推定モジュールの形で実装した.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
令和4年度に計画した内容通りに遂行できている.
|
Strategy for Future Research Activity |
令和5年度は,次の3点に着目して実施する予定である. ・学習状況推定モジュールの開発:学習者が取り組む課題と作成したソースコードを入力として,最新時点における学習状況を機械学習により推定する.昨年度で整備した「課題×ロジック×躓き」をトレーニングデータとして,昨年度よりもシンプルな決定木ベースの機械学習を用いる.これは,2段階目の推定に際して,当初の推定精度よりも,検証容易性を重視する方針による.推定モジュールとして実装した上で,過去の演習課題で学習者が作成したコード(約15,000件)を有する強みを活かして,「ロジック推定」「学習状況推定」「両者の連携による推定」の段階検証を実施する. ・学習状況に対応する教材の整備:ここでは,推定した学習状況に応じて教材を自動的に提示する.ここで,必要な教材を新たに作成することは現実的ではない.そこで本研究では,既有の教材片(教材を構成する最小片)を動的に組合せることで教材を準備する方法を採用する.具体的には,申請者らが,これまでの取り組みにおいて整備してきた教材片ストックとその組み合わせ指標をベースとする. ・プロトタイプ開発:開発したモジュールをサブシステムとする形で,教材提示システムを統合開発する.
|