目次

教育工学とは?〜計算機と教育の関わり〜
増澤研究室では、計算機と教育との関わりを考える、 いわゆる「教育工学」と呼ばれる分野の研究を行っています。

今までには、コンピュータネットワークを利用したレポート提出、 質問応答などを通じて授業を支援するための教育用支援システムや、 プログラミング初心者向けのグラフィカルプログラミングツールのような ソフトウェアの可視化教材、 あるいはハードウェアの可視化教材の研究などを行ってきました。

現在取り組んでいる研究としては以下のようなものがあります。

調査資料を活用した発言のやりとりを促進する議論支援システムHAKASEの提案と評価
最近教育現場では、協調学習への取り組みが活発になってきています。 協調学習はPBL(Problem-based Learning)など、グループで目標達成を目指す学 習の仕方で、 学習者間での意見交換・共同作業を通したコミュニケーション力の育成などの学 習効果が期待されています。 本研究では、協調学習においてグループの意見をまとめるために頻繁に行われる "議論"に着目し、 「効果的な議論のやり方を学ぶ」ことを学習者に意識させるような議論支援環境 を作ろうと考えました。

アプローチとしては、グループのメンバが議論の参考資料として収集してきた Web資料情報を一括管理し、議論が開始されると話の流れをつかみつつ、 議論を盛り上げるのに適した参考資料を次々出してくれる、 仮想メンバー「ハカセ」をグループに提供しようというものです。 これにより、議論中の資料管理の手間を減らして活発な議論をうながすだけでなく、 「第三者の資料を引用することで客観的な発言になるようつとめる」ことを 学習者に自然と意識させようというのがねらいです。

研究では、以上のアプローチを実現する議論支援システム「HAKASE」を構築しました (システム動作概要は図1、画面例は図2を参照)。 HAKASEを用いた議論を実際に行った結果、資料引用による発言を意識させる効果 があることを 確認できました。今後、議論の流れをつかむ仕組みや参考資料提示の方法を さらに工夫し、 教育支援を指向した議論システムとしてHAKASEの拡張を行う予定です。

アルゴリズム学習における間違い探し形式の演習問題を自動生成する手法の提案と評価
「アルゴリズムとデータ構造」は、情報科学の基本となる学習科目です。 アルゴリズム学習の授業では、「このアルゴリズムを実際に動かしてみよう」と いう演習がよく行われますが、 プログラム言語の仕様や構文エラーなどに時間や意識をとられ、単なるプログラ ミング演習になってしまうとい う点がこの演習の問題点でした。 そこで、我々はソースコードから間違いを探す演習、「間違い探し演 習」を考えました。 アルゴリズムを誤解した間違いがあらかじめ含まれたソースコードを学習者に見せ、 どこがアルゴリズムと矛盾しているかを探し出して修正する、という形式の演習 です。 ソースコードを使った演習でありながら、構文エラーや言語仕様にとらわれず、 アルゴリズムの仕組みに学習者の意識を向けさせることができるのが利点です。 実際の授業で間違い探し演習を実践した結果、間違い探し演習がアルゴリズム学 習に有効な方法であることを確 認しました。

本研究が目指すのは、この間違い探し演習の問題作成、 つまりアルゴリズム上の間違いを含んだソースコードを自動生成する手法の構築 です。

間違いを挿入する箇所はソースコード中のどこでもいいわけではなく、 学習させたいアルゴリズムの動作に直結した箇所でなければなりません。 また間違いの形も、「セミコロンが抜けている」などのような言語仕様的なエ ラーではなく、 アルゴリズムの手順に沿ってない形へのソースコードの書き換えが必要になります。 我々は、アルゴリズム設計のパラダイムをベースとした誤り挿入箇所の特定、 誤り挿入箇所の構文といくつかの制約ルール(例えば i/2 -> i/0 のような誤り は挿入しない、 変数の置換はソースコード中の扱い方が類似する変数同士に限る、など) を組み合わせた文法ベースの置換操作により、 アルゴリズム上の間違いを含んだソースコードの自動生成を実現しました。

上記の手法で自動生成した問題と教師らが作成した問題を比較し、自動生成した 問題の品質を評価した結果、 我々の自動生成手法で生成したソースコードが間違い探し演習に有用であること を確認いたしました。 現在さらに問題生成能力を向上させるための自動生成手法の改善を行っております。