• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to previous page

ソースプログラムの頻出パターンに基づくプログラミング学習支援

Research Project

Project/Area Number 22K12291
Research Category

Grant-in-Aid for Scientific Research (C)

Allocation TypeMulti-year Fund
Section一般
Review Section Basic Section 62030:Learning support system-related
Research InstitutionWakayama University

Principal Investigator

村川 猛彦  和歌山大学, システム工学部, 准教授 (90304154)

Project Period (FY) 2022-04-01 – 2025-03-31
Project Status Granted (Fiscal Year 2023)
Budget Amount *help
¥3,120,000 (Direct Cost: ¥2,400,000、Indirect Cost: ¥720,000)
Fiscal Year 2024: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
Fiscal Year 2023: ¥910,000 (Direct Cost: ¥700,000、Indirect Cost: ¥210,000)
Fiscal Year 2022: ¥1,300,000 (Direct Cost: ¥1,000,000、Indirect Cost: ¥300,000)
Keywordsプログラミング / 学習支援 / 大規模言語モデル / C言語 / ソフトウェア解析 / 学習支援システム / 大学教育
Outline of Research at the Start

初学者向けプログラミング学習において、語(トークン)を適切に並べて文を構成する能力の養成が求められている。本研究では、ソースプログラムに共通して出現する「頻出パターン」に着目し、その抽出および学習支援システムへの適用を行う。C言語のfor文の場合、頻出パターンは「for(;;)」で表される。大規模なソースプログラム群からの頻出パターンの取得を試み、頻出パターンを入力に与えてソースプログラム群における出現を検出するソフトウェアも自作する。データベースを含む学習支援システムは、平成31年度より科研費の助成を受けて開発・公開したものを更新する形で構築し、大学の授業での利用を通じて有効性を実証する。

Outline of Annual Research Achievements

大規模言語モデルを使用し,C言語の頻出パターンの手がかりになる情報や,ソースプログラムを生成することを試みた.公開されている大規模言語モデルからLlama2を選定して使用し,2022年度の授業で使用したC言語のソースプログラムによるファインチューニングを適用したものと,適用しなかったものとで,様々なプロンプトを与えてソースプログラムを生成させたところ,ファインチューニング適用有のものが不備(構文エラーなど)が少ないことを確認した.大規模言語モデルからのC言語の頻出パターン取得は,プロンプトを与えても望むものが得られず,目視に基づいて初学者が学ぶことになる10種類の頻出パターンを取得した.各頻出パターンをプロンプトに与えてソースプログラムを生成させると,switch文ではおおむね意味のあるソースプログラムが得られたが,do-while文については適切でなかった.1回の生成に,ファインチューニング適用無では30秒程度,適用有では2分程度を要し,対話型による生成・活用には課題があることも確認した.
学習支援に関して,生成AIの一つであるChatGPTを用いて初学者向けの日本語プログラム解説文の生成を実施した.与えるプログラムに行番号や実行結果を添え,コードブロック形式の出力を抑制することで,プログラムを単に与えて解説文を生成させるよりも明瞭な解説文を生成できることを確認した.エラトステネスの篩についてソースプログラムと解説文(人手と本手法の2種類)を学部生に読んでもらった結果,生成した解説文は学習支援に十分な内容であることを確認し,実用への足がかりを得ることができた.

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

大規模言語モデルや生成AIを活用した「頻出パターンの取得」「学習支援システムの更新および利用」を進めていく.成果を取りまとめながら,国内・海外で成果発表を積極的に行う.

Report

(2 results)
  • 2023 Research-status Report
  • 2022 Research-status Report
  • Research Products

    (4 results)

All 2024 2023

All Presentation (4 results) (of which Int'l Joint Research: 1 results)

  • [Presentation] ChatGPTを使用した初学者向けプログラム解説文の作成2024

    • Author(s)
      村川猛彦, 髙木颯太
    • Organizer
      情報処理学会第86回全国大会
    • Related Report
      2023 Research-status Report
  • [Presentation] 大規模言語モデルを用いたC言語初学者向けソースコードの生成2024

    • Author(s)
      森下皓太,村川猛彦
    • Organizer
      第13回 知識・芸術・文化情報学研究会
    • Related Report
      2023 Research-status Report
  • [Presentation] LbTyping: A web application for programming learning by typing2023

    • Author(s)
      村川猛彦
    • Organizer
      The Fourteenth International Conference on Information, Intelligence, Systems and Applications (IISA 2023)
    • Related Report
      2023 Research-status Report
    • Int'l Joint Research
  • [Presentation] タイピングによるプログラミング学習のコンテンツ追加および授業実践2023

    • Author(s)
      村川猛彦, 田中和季
    • Organizer
      情報処理学会第85回全国大会
    • Related Report
      2022 Research-status Report

URL: 

Published: 2022-04-19   Modified: 2024-12-25  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi