Main Content

スクリプトタイプの受講者の解答に対する評価の作成

スクリプトタイプの問題の解答を評価するテストを作成する際、MATLAB® Grader™ は、変数の等価性を評価したり、特定のキーワードや関数の有無をチェックしたりする評価方法を提供します。

次の考え方や手法は、評価の作成に役立ちます。

  • MATLAB Grader のテスト タイプ—変数の等価性を評価したり、特定の関数やキーワードの有無を評価したりするのに役立つ方法を提供します。

  • 実行モデル—評価の実行方法と評価結果のマーク方法について説明します。

例: "Symbolic Taylor Expansion" (シンボリック テイラー展開) のコーディング問題への評価で評価の例をいくつか確認できます。

受講者の解答の評価に影響する要素については、受講者の解答のテストを参照してください。

MATLAB Grader のテスト タイプ

コードを記述せずに、最も汎用的な評価を簡単に作成できます。評価を作成するには、[テスト タイプ] を選択し、テスト対象を指定します。

  • 変数が模範解答と等しい — 指定された変数が受講者の解答に存在し、模範解答の同じ変数と等しいかどうかを確認します。許容誤差は数値データ型にのみ適用されます。

  • 関数またはキーワードが存在する — 受講者の解答に、特定の関数またはキーワードが存在するかどうかをチェックします。

  • 関数またはキーワードが存在しない — 受講者の解答に、特定の関数またはキーワードが存在しないことを確認します。

[テストをコードに変換] をクリックして、任意のテストを MATLAB コードに変換します。

独自の評価コードを作成する場合、テスト タイプは [MATLAB コード] を選択します。組み込み評価関数 assessVariableEqualassessFunctionPresence、および assessFunctionAbsence を使用して、上記のテストを統合することができます。

実行モデル

実行モデルは、MATLAB Grader で評価がどのように実行され、評価結果がどのようにマークされるかを説明します。

  • 受講者が評価対象のスクリプトタイプの解答を提出すると、模範解答と受講者の解答の両方が実行されます。次いで、受講者の解答が評価されます。

  • 各評価は、他の評価とは独立して順番に実行されます。受講者の解答が 1 つの評価に不合格となっても、後続の評価は実行されます。

  • ある評価で作成された変数を、次の評価で使用することはできません。各評価で必要な変数をすべて定義します。

  • 評価では、referenceVariables.variable_name の構文を使用して模範解答内の変数にアクセスできます。

  • コードがエラーなしで終了した場合、評価は正解としてマークされます。コードがエラーを返す場合、評価は不正解としてマークされます。

  • 受講者の解答に構文エラーが含まれている場合、その解答のすべての評価は不正解としてマークされます。

評価がプレテストの場合、解答が評価に合格したか不合格となったかに関わらず、受講者はテスト名の左側にある矢印をクリックして、評価コードを表示できます。

コーディング問題に対する各評価は、解答と評価の実行時間に影響を与えます。詳細については、提出の制限時間を参照してください。

例: "Symbolic Taylor Expansion" (シンボリック テイラー展開) のコーディング問題への評価

このセクションでは、[Symbolic Taylor Expansion] のコード例を使用します。このコードは、MATLAB Grader ホーム ページの [MATLAB Grader の問題カタログ][Getting Started with MATLAB Grader] にあります。

この例では、受講者は、f(x)=e to the -x sin(x)cos(x) のテイラー級数近似を x = 0n = 8 に対して計算するスクリプトをシンボリック変数を使用して記述するように求められます。評価にはコーディングの精度を確認する 3 つのテストが含まれます。

テイラー関数が存在するかどうかのテスト

この評価では、講師は特定の関数の存在を確認し、受講者の解答が評価で不合格となった場合に適切なフィードバックを提供します。

Example of test type function or keyword is present

変数が正しく定義されているかどうかのテスト

この評価では、指名された変数が受講者の解答と模範解答で同じ値になっているかどうかをチェックし、受講者の解答が評価で不合格となった場合は適切なフィードバックを提供します。

Example of test type variable equals reference solution

受講者のコードが正しいかどうかのテスト (MATLAB コード)

この評価では、MATLAB コードと組み込みの評価関数を使用して受講者の解答をテストします。講師は、受講者の解答が評価に不合格となった場合に受講者に表示する適切なフィードバックも指定します。

Example of MATLAB code used to calculate and then assess variable equality

スクリプト問題の例の試行

このトピックで使用される例は、[Getting Started with MATLAB Grader][MATLAB Grader の問題カタログ] にある [Symbolic Taylor Expansion] からのものです。

受講者として問題を解いてみるには、問題を開いて [受講者の環境でのプレビュー] をクリックします。解答ボックスにコードを入力し、[提出] をクリックして評価を実行します (提出は実際には記録されません)。正しいコードと間違ったコードの両方を試して、フィードバックを確認します。

関連するトピック