STACKドキュメント

ドキュメントホーム | カテゴリインデックス | | サイトマップ

STACKプロジェクトについて

STACKはMoodleの小テストの問題タイプとして提供され,数式の正誤評価に重点を置いた,数学をはじめとする自然科学のための,オンラインンテスト・評価システムです。

従来のオンラインテストの評価方法は限られており,数値による解答を受け付けるか,多肢選択型の問題を提示するかが一般的でした。数学の問題では,問題を解くことよりも,解答をチェック(検算)することのほうが易しいような場合がよく見られます。そのような場合,多肢選択型の問題では,学生は問題を直接解くのではなくて,提示された解答の候補が解であるかどうかを単にチェックする可能性もあり,しばしば多肢選択型の問題は適切ではありません。したがって,単にチェックするだけのゲーム的な性質がないような多肢選択型の問題を多く作成することはほとんど不可能です。

ところが,STACKが提供している問題は,まさにそのような,数学や科学の授業で実際に用いている問題のタイプです。実際に,学生は数式で解答する必要があり,システムがそれを評価するのです。

通常数式で解答する場合には正解の様々なパターンがあるので,単純に文字列が一致するかどうかで解答を評価することはできません。場合によっては,正解も様々な形式で与えられる場合もあります。数式の評価に数式処理システムを用いることによって,そのような問題を解決することができます。数式処理システムが持ち合わせている数学の力によって,コンピュータによる評価システムに全く新しい可能性を開くことができるのです。ここに,いくつかの例を紹介します。

さらに詳しいことはSTACKの哲学をご覧ください。

正しい形式の等価な解答

STACKは正解が様々な形式で表現され得るような問題の採点を行うことができますが,例えば,代数的に等価な\((x+1)^2=x^2+2x+1\)などはその一例です。STACKはそのような等価なものを同一であるとみなすことができます。STACKはまた,正解との等価性とは別の,解答の形式を設定することができます。これらの二つの特徴は独立なものです。

例を求める

STACKは学生に対して例を提示するよう求めた問題に対して採点をすることができます。そのような問題の簡単な例を紹介します。

x=0で最小値をとり,x=2で最大値をとるような関数 f(x) の例をあげなさい。

そのような関数の例はたくさんあります。学生の解答と教師の解答とを比較するのではなく,STACKは,学生が提示した関数が,指定された性質を満たすかどうかを判定します。このように例を提示するような問題は,従来のシステムでは評価することが不可能な,高度な採点技術を必要とします。

インテリジェントなランダム化

STACKは問題の難易度は一定のまま問題をランダム化することができます。例えば,2行2列の行列を対角化する問題の場合,まず正解となる対角行列を対角成分が整数であるものをランダムに用意します。そして,その対角行列から問題として提示する行列を生成するような,いわば,ランダム化された解答からランダムな問題を逆に作成するという方法です。このプロセスで数式処理システムが役に立つのです。

フィードバックの提示と部分点を含む採点

例えば,次のような問題を考えてみましょう:次の条件を満たす三次多項式の例をあげよ。

  • \(p(0)=1\)
  • \(x=2\) および \(x=3\) において \(p(x)=0\)

STACKは学生の解答に対して,各条件を満たしているかどうかをチェックし,結果に応じて部分点を与えることができます。 例えば,もし学生が \(p(x) = x^2-5x+6\) と解答した場合,STACKは次のように採点するでしょう: あなたの解答は確かに指定された点でゼロとなりますが,\(x=0\)において1となりません。あなたの点数は,3 点満点のうち,2点です。もう一度トライしましょう。 様々なフィードバック の与え方があります。

STACK は AIM から直接発展し,オープンソースの数式処理システムである Maximaを利用して開発されたものです(AIMでは,Mapleが利用されていました)。

その他の情報


ドキュメントホーム | カテゴリインデックス | | サイトマップ