Grading scheme of AMCnumericChoice is off (Bug #393)


Added by Gerhard Blab over 9 years ago. Updated over 9 years ago.


Status:Closed Start date:12/03/2015
Priority:Normal Due date:
Assignee:- % Done:

100%

Category:-
Target version:-

Description

I am using the questions below (either interval or numeric) in a 16-paper random-order test for my students.
I would expect to see 0 or 5 points for the interval questions, and 0, 3, or 5 points for the numerical, in accordance with their answers.

What I get after scoring is 0, 2, and 5 for interval, and 0, 2, 3, 5 and 7 (!!) points for the numeric ... any ideas what is wrong here?

\element{keplerSkill}{
    \begin{question}{cometApohelInterval}\scoring{e=0,v=0,b=5,m=0}
    \FPeval\FOne{ trunc(1.0 + trunc(random * 3,0),0) }
    \FPeval\FTwo{ trunc(5.0 + 2*trunc(random * 2,0),0) }
    \FPeval\RMin{ (trunc(2 + random * 4,1)) }
    \FPeval\RMax{ ((FOne + FTwo) / (FTwo - FOne) * RMin) }
    \calcQuestion{} A comet with a perihelion (closest distance to the sun) of \RMin ~AU (astronomical units) has an eccentricity $\epsilon$ of $\frac{\FOne}{\FTwo}$. What is its aphelion (in AU)? Select the right interval.~(5 points)
    \begin{multicols}{4}
    \begin{choices}[o]
        \AMCIntervals{\RMax}{2}{25}{2}
    \end{choices}
    \end{multicols}
    \end{question}
}

\element{keplerSkill}{
    \begin{questionmultx}{cometApohelNumChoice}
    \FPeval\FOne{ trunc(1 + trunc(random * 3,0),0) }
    \FPeval\FTwo{ trunc(5 + 2*trunc(random * 2,0),0) }
    \FPeval\RMin{ trunc(2 + random * 4,1) }
    \FPeval\RMax{ ((FOne + FTwo) / (FTwo - FOne) * RMin) }
    \calcQuestion{} A comet with a perihelion (closest distance to the sun) of \RMin~AU (astronomical units) has an excentricity $\epsilon$ of $\frac\FOne\FTwo$. What is its apohelion (in AU)? Calculate the value to one decimal.~(5 points)

    \AMCnumericChoices{\RMax}{digits=3,decimals=1,sign=true,
        borderwidth=0pt,backgroundcol=white, exact=2, approx=5, 
        scoreexact=5, scoreapprox=3}
    \end{questionmultx}
}

source.tex (2.9 kB) Gerhard Blab, 12/04/2015 01:27 pm

minimal.tex (5.5 kB) Gerhard Blab, 12/04/2015 01:27 pm

DOC-sujet.pdf (297.6 kB) Gerhard Blab, 12/04/2015 01:27 pm

QuizTestMinimal.csv (395 Bytes) Gerhard Blab, 12/04/2015 01:27 pm

QuizTestMinimal.tbz2 (281 kB) Gerhard Blab, 12/08/2015 07:05 pm


History

Updated by Gerhard Blab over 9 years ago

After realizing that the scoring of the /AMCInterval and /AMCnumericChoices depended on where in the test the question was located, I have changed the /scoring in two different of my questions (from \scoring{mz=2} to \scoring{e=0,v=0,b=2,m=0}), which seems to solve the issue. Still, it is a bug, as scoring in one question messes up (exclusively) the scoring of following questions!

Updated by Gerhard Blab over 9 years ago

I have generated a sort of 'minimal' version of the test in question. The problem becomes apparent when filling in e.g. version 1, 3, 6, 10 and 15 (all correct answers) - all version should have the same number of points, the only difference are two questions which are given either as /AMCInterval or /AMCnumericChoice (both worth 5 points). In this example, the grading of the /AMCInterval question leads to a later question gaining 5 points (qMone and qMtwo, should be 3, gets 8 points) ...

I am stumped why the order (or type) of one question can change the points value of another question; I would be very happy if someone could point out the error that I made -- that would be the easiest solution -- but otherwise this would be some pretty major bug in this otherwise very helpful program ...

Updated by Alexis Bienvenüe over 9 years ago

  • Description changed from I am using the questions below (either interval or numeric) in a 16-paper ... to I am using the questions below (either interval or numeric) in a 16-paper ... More

Updated by Alexis Bienvenüe over 9 years ago

Could you provide a minimal working example? I mean the shortest possible source file that shows this problem.

Updated by Gerhard Blab over 9 years ago

Thank you for your quick response and for tackling this issue!

I have attached a three-question example. The value of a multiple-choice question (qMone) changes from 3 to 8 points depending on whether a second question is an interval(exams 1 and 2) or numChoice (exams 3 and 4) version. I do not think I can reduce it any further.

Alexis Bienvenüe wrote:

Could you provide a minimal working example? I mean the shortest possible source file that shows this problem.

Updated by Alexis Bienvenüe over 9 years ago

In the definition of mGInterval, the \scoring command should be called inside the question environment, otherwise this also applies to other questions.

Updated by Gerhard Blab over 9 years ago

Thank you, and apologies for the obvious mistake - I would not have found it in 100 years ... Merci!

Alexis Bienvenüe wrote:

In the definition of mGInterval, the \scoring command should be called inside the question environment, otherwise this also applies to other questions.

Updated by Alexis Bienvenüe over 9 years ago

  • % Done changed from 0 to 100
  • Status changed from New to Closed

Also available in: Atom PDF