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

2017 Fiscal Year Research-status Report

プログラム読解学習のための学習教材の自動生成方式と学習者の技能定量化手法の提案

Research Project

Project/Area Number 16K01147
Research InstitutionHiroshima Institute of Technology

Principal Investigator

松本 慎平  広島工業大学, 情報学部, 准教授 (30455183)

Co-Investigator(Kenkyū-buntansha) 加島 智子  近畿大学, 工学部, 講師 (30581219)
Project Period (FY) 2016-04-01 – 2019-03-31
Keywordsプログラミング / 読解 / 視線分析 / データ構造 / マルコフ過程 / データ依存グラフ
Outline of Annual Research Achievements

これまでの研究により,プログラミング読解過程の眼球運動に基づく分析が進められている.視線運動を用いた先行研究では,定量分析をする上では視線分布を用いた分析が用いられている.これに対し,本研究では,読解過程の要因の特定を可能にするため,プログラムの各行をどのような順序で読んでいるかに注目する.そのため,本研究では視線の運動パターンに基づき,プログラム中に存在する構造と比較し,プログラム読解の分析可能性を調べることを目的とする.様々な要素が含まれるソースコードでは読解過程の詳細な分析が困難である.したがって,本研究では,まずは代入演算と算術演算のみでプログラムを構成し,構造としてデータ依存関係だけに単純化したプログラムを実験課題に設定する.その上で,そのようなプログラムに対して,視線追跡から得られたデータに基づき視線の運動パターンを獲得する.視線の推移を評価するため,確率で表した単純マルコフ過程モデルを構築する.単純マルコフ過程モデルのノード間の推移確率とデータ依存関係の有無を比較することで,視線の運動パターンに基づいたプログラム読解過程の分析可能性について調査する.

本年度の成果として,具体的には,まず,プログラミング読解過程中の視線運動を取得し,視線の推移の特徴が現れるモデル化手法を提案した.そして,プログラム構造に基づき,プログラミング読解過程中の視線運動を解析するための実験プロトコルを設計した.本論文では,代入文のみで構成される3行のプログラムで生成可能な4パターンのデータ依存関係をもつソースコードを実験課題とし,被験者データを取得し分析を行った.その結果,プログラム読解固有の振る舞いとして,各パターンのデータ依存関係の影響を確認することができた.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

研究の最終目的は,1.データ依存関係,制御依存関係といったプログラム構造の観点から,プログラムの知識・技能とプログラム構造とを対応付けるフレームワークの提案,2.プログラムを特徴付ける各パラメータに基づきプログラム読解学習教材としてのソースコードを自動生成する機能の実装, 3.プログラミング読解過程中の眼球運動を取得し,視線の推移を隠れマルコフモデルを中心とした確率モデルで記述するための手法の提案,4.確率モデルとプログラム構造との構成的差違を定量的に評価し,知識・技能の習得度を定義するための手法の提案,5.知識・技能の程度に応じてプログラム読解学習教材を提示可能な学習者適応の学習支援システムの開発,である.
前年度までに,自学学習環境として利用可能なプログラミング読解学習支援システムの基礎が開発された.読解学習支援システムは従来から開発を進めてきたものであるが,2017年度の取り組みにより,データ依存関係に限定した物ではあるが,読解教材を自動的に生成するためのロジックを実装した.これにより,データ依存関係を把握しながら効率良く読解する力の獲得を目指した学習,また,データ依存関係に応じて,視線運動の調査を進めることができるようになった.生成方法として,まず隣接行列を使用してデータ依存グラフを表す.これを入力として与えることにより,データ依存グラフに従ってプログラムを生成できるようになった.
他,被験者の視線の動きがデータ依存構造に沿ったものであることを明らかにするため,大学生を被験者として実験を行った.3行のソースコード読解を課題として実験を行った結果,プログラム読解固有の振る舞いとして,各パターンのデータ依存関係の影響を確認することができた.
以上のことから,おおむね順調に進展していると評価する.

Strategy for Future Research Activity

これまでの実験結果より,学習者がソースコードを読解する際の視線の特徴をデータ依存関係構造の観点から示すことができた.今後は,プログラムを適切に理解できる学習者に対して,データ依存関係の影響が視線に表れ,その程度を量的に評価可能であることを明らかにする.予備実験によると,限られたサンプル数に基づいたものであり網羅的ではないものの,プログラムを適切に理解できない学習者に対して,データ依存関係とは異なる行へ目が移ってしまい誤答する学習者や,求められているデータ依存関係を全て把握しきれず誤答する学習者が存在することを示唆する結果を得ている.母数を増やし,このことを統計的に確かにすることが,今後の研究推進課題となる.

これまでに得た知見を踏まえると,プログラムの依存関係を適切に把握して標準的に読めているかといった判断ができるようになると考えられる.たとえば,データ依存関係を意識させるような教授法構築や,得られた知見を応用した学習支援システムの開発が期待される.データ依存関係が読解パターンに表出する点から,学習者はデータ依存関係を手掛かりとしてソースコードを読解していると考えられる.よって,西松らが示したスライス箇所のハイライト機能を提示することで,プログラム読解を支援する教育・実現化ツールの開発が期待される.また,データ依存関係を読解から追跡することの必要性を確認できたため,プログラミングを不得手とする学習者層を対象として,「不得手の契機となっている原因」や「理解を妨げている要因」を,視線追跡から得た読解過程をもとに推察可能であると考えられる.たとえば,学習者の理解が不十分な場合,視線運動を取得し,その視線運動から読解過程の特徴を明らかにし,理解が不十分である原因をデータ構造の観点から説明できれば,学習者の読解過程の特徴にもとづく新たなプログラミング指導法の設計が期待される.

Causes of Carryover

(理由)
本年度,当初計画よりもシステム開発が順調に進んだため,人件費・謝金を計画よりも低く抑えることができた.それにより,次年度使用額として残額が生じた.
(使用計画)
使用計画として,より研究成果を発展させるため,残額分,人件費・謝金として活用する予定である.

  • Research Products

    (23 results)

All 2018 2017

All Journal Article (3 results) (of which Peer Reviewed: 3 results) Presentation (20 results) (of which Int'l Joint Research: 3 results,  Invited: 1 results)

  • [Journal Article] Difficulty Estimation of Knowledge Elements in Source Codes for Reading-Based Programming Learning by Using Neural Test Theory2018

    • Author(s)
      Shimpei Matsumoto, Shuichi Yamagishi, and Tomoko Kashima
    • Journal Title

      Proc. of The First IEEE International Symposium on Artificial Intelligence for ASEAN Development

      Volume: - Pages: pp.39-44

    • Peer Reviewed
  • [Journal Article] Relationship Analysis between Puzzle-Like Programming Game and Achievement Result After Learning the Basic of Programming2018

    • Author(s)
      Shimpei Matsumoto, Shuichi Yamagishi and Tomoko Kashima
    • Journal Title

      Proceedings of the International MultiConference of Engineers and Computer Scientists 2018

      Volume: 1 Pages: pp.168-171

    • Peer Reviewed
  • [Journal Article] A Survey of Analyzing Understanding Process of Programming by Using Eye Tracking2018

    • Author(s)
      Shimpei Matsumoto, Shuichi Yamagishi, Tomoko Kashima, Yusuke Hayashi, and Tsukasa Hirashima
    • Journal Title

      Proceedings of The Twenty-Second International Symposium on Artificial Life and Robotics 2018

      Volume: - Pages: pp.116-120

    • Peer Reviewed
  • [Presentation] Difficulty Estimation of Knowledge Elements in Source Codes for Reading-Based Programming Learning by Using Neural Test Theory2018

    • Author(s)
      Shimpei Matsumoto
    • Organizer
      The First IEEE International Symposium on Artificial Intelligence for ASEAN Development
    • Int'l Joint Research
  • [Presentation] Relationship Analysis between Puzzle-Like Programming Game and Achievement Result After Learning the Basic of Programming2018

    • Author(s)
      Shimpei Matsumoto
    • Organizer
      the International MultiConference of Engineers and Computer Scientists 2018
    • Int'l Joint Research
  • [Presentation] A Survey of Analyzing Understanding Process of Programming by Using Eye Tracking2018

    • Author(s)
      Shimpei Matsumoto
    • Organizer
      The Twenty-Second International Symposium on Artificial Life and Robotics 2018
    • Int'l Joint Research
  • [Presentation] ソースコード読解学習のための視線分析に関する研究2018

    • Author(s)
      平野拓真
    • Organizer
      日本経営システム学会イノベーション指向データ分析研究部会
  • [Presentation] 大学生のためのC言語エディタの開発2018

    • Author(s)
      買田康介
    • Organizer
      2017年度教育システム情報学会学生研究発表会(中国地区)
  • [Presentation] ゲームプログラミングによる物理学習支援システムの開発2018

    • Author(s)
      水島冬馬
    • Organizer
      2017年度教育システム情報学会学生研究発表会(中国地区)
  • [Presentation] ソースコード読解学習のためのデータ構造に基づいた問題生成に関する研究2018

    • Author(s)
      赤瀬直也
    • Organizer
      2017年度教育システム情報学会学生研究発表会(中国地区)
  • [Presentation] カード操作方式によるプログラミング学習システムの学習効果2018

    • Author(s)
      村上瑠香
    • Organizer
      2017年度教育システム情報学会学生研究発表会(中国地区)
  • [Presentation] セキュアコーディング学習支援システムの開発2018

    • Author(s)
      森田浩平
    • Organizer
      2017年度教育システム情報学会学生研究発表会(中国地区)
  • [Presentation] カード操作に基づくアルゴリズムの思考に焦点を当てたプログラミング学習システムの実践2017

    • Author(s)
      松本慎平
    • Organizer
      平成29年度(第68回)電気・情報関連学会中国支部連合大会
  • [Presentation] セキュアコーディングを学習させるためのオンラインコンパイラの開発2017

    • Author(s)
      森田浩平
    • Organizer
      第42回教育システム情報学会全国大会
  • [Presentation] カードを並べ替えることによるプログラミング学習システムを用いた講義実践及び付加機能の検討2017

    • Author(s)
      森永笑子
    • Organizer
      第42回教育システム情報学会全国大会
  • [Presentation] 大学でのプログラミング教育のためのオンラインコンパイラの学習ログ及び学習過程の分析機能の検討2017

    • Author(s)
      大下昌紀
    • Organizer
      第42回教育システム情報学会全国大会
  • [Presentation] カード組み立て方式に基づくプログラミング学習支援システムにおけるゲーム提示機能の開発2017

    • Author(s)
      岩本朋也
    • Organizer
      第42回教育システム情報学会全国大会
  • [Presentation] アルゴリズム体験ゲームとプログラミング学習後の成績の関係分析2017

    • Author(s)
      松本慎平
    • Organizer
      第42回教育システム情報学会全国大会
  • [Presentation] プログラミング学習のための情報システム2017

    • Author(s)
      松本慎平
    • Organizer
      一般社団法人教育システム情報学会中国支部研究発表会講演論文集
    • Invited
  • [Presentation] 部分間の関係を考えるプログラミング学習システムの作問方式の設計2017

    • Author(s)
      森永笑子
    • Organizer
      2017 IEEE SMC Hiroshima Chapter 若手研究会
  • [Presentation] 出題者の意図を推測することを狙いとしたゲーム開発に基づくプログラミング学習システムの設計2017

    • Author(s)
      岩本朋也
    • Organizer
      2017 IEEE SMC Hiroshima Chapter 若手研究会
  • [Presentation] プログラミング学習用オンラインコンパイラの機能設計2017

    • Author(s)
      大下昌紀
    • Organizer
      2017 IEEE SMC Hiroshima Chapter 若手研究会
  • [Presentation] 学習者による思考及び操作を中心としたプログラミング学習支援システムの設計と開発2017

    • Author(s)
      松本 慎平
    • Organizer
      JSAI2017 2017年度 人工知能学会全国大会(第31回)

URL: 

Published: 2018-12-17  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi