Search code examples
rmoodler-exams

Grading multiple choice and cloze questions created with exams2moodle()


I am using exams2moodle() from R/exams to create multiple choice and cloze questions in Moodle. Before preparing exams, I would like to be certain how Moodle computes grades.

It seems to me that in multiple choice questions the default setting in the evaluation policy is partial = TRUE, rule = "false", negative = FALSE. Is that correct?

For the cloze questions, it seems that the overall grade assigned to the cloze question is divided equally among the subquestions. I wonder if there is some way to give unequal weight to the single sub-questions.

Thank you in advance for any help!


Solution

  • Overview

    Essentially you are correct. However, I will discuss a few details below that are Moodle-specific because Moodle does not support the full flexibility of the exams_eval() strategies from R/exams.

    Multiple-choice (mchoice) questions

    • Moodle only supports evaluations with partial credits and thus setting partial = FALSE is not possible.
    • The evaluations in Moodle are always such that not ticking a box yields zero points. Only ticking a box can yield points (positive or negative).
    • Ticking a correct box always gives the proportion 1/#ncorrect of the overall number of points were #ncorrect is the number of correct answer alternatives.
    • Ticking an incorrect box can give a negative amount of points. The precise amount is controlled by the rule specification. For rule = "false" an incorrectly ticked box gives the proportion -1/#incorrect = -1/(n - #ncorrect).
    • As this is pretty harsh in the case of exactly one incorrect alternative (ticking it erases all points), there is rule = "false2" which is the default. An incorrectly ticked box still subtracts the proportion 1/#incorrect except in the case where #incorrect = 1 when 1/2 is subtracted.
    • The overall amount of points from all boxes combined cannot become negative! It may be displayed as negative in some situations but is actually treated as 0. Thus, the R/exams argument negative = TRUE would be ignored, it is implicitly always negative = FALSE.
    • Because only ticking correct answer alternatives can yield positive points, there needs to be at least one correct answer alternative. If a multiple-choice question without correct answer alternatives is used, it always yields zero points.

    Single-choice (schoice) questions

    • Essentially, the same rules as above apply. The main difference is that Moodle uses radio buttons (rather than check boxes) for single-choice questions. Thus, participants can only select one alternative and not several ones.
    • The other important difference is that the sum of points can become negative! (Unlike for multiple-choice questions.)
    • exams2moodle() currently uses the same default evaluation strategy rule = "false2" for single-choice questions. This assures that the expected number of points from random guessing strategies is zero. (However, we are thinking about changing the default to rule = "none" which seems to be more commonly used, i.e, selected an incorrect alternative just gives zero points.)

    Cloze questions

    • The different parts of a cloze questions are evaluated separately and then simply summed up.
    • For schoice or mchoice items within a cloze question, the same rules as above apply. Thus, points can become negative for single-choice questions but not for multiple-choice questions. The default is, however, not to use negative points.
    • By default the overall number of points is split equally among the items within a cloze. However, expoints can be set to a vector of the same length as the number of items giving the number of points for each.

    Marks

    The assignment of marks to the points achieved cannot be controlled from exams2moodle() in R/exams. Thus, you have to configure this in Moodle when putting together the quiz there.