Variable Score Multiple Choice in Webassign

One of several things that seem to be very difficult to do in Webassign is to assign variable numbers of points for different answers in not a multiple select answer format (where more than one button can be checked) but in a true multiple choice format, where the buttons are "radiobuttons" and only one answer can be clicked at a time.

Radiobutton answers are sometimes desirable in variable point problems. One might want students to select from a set of answers containing permutations of several correct and incorrect possibilities and reward partially correct permutations. Or, one might simply be polling student satisfaction in a course so far and want to rank answers like those below numerically on a scale from 1 to 5.

The "problem" is that it appears that webassign controls the number of points assigned to a problem strictly at the assignment level. This sets $POINTS, but $POINTS cannot be rewritten inside a question to (for example) be worth different numbers of points depending on which button is clicked (at least, I had no luck with that). $CORRECT seemed promising (it can be overwritten as well read, at least) but setting an incorrect answer to be marked correct only helps if one can vary the points given to a correct answer, and $POINTS is read only.

Fortunately, although it is for whatever reason not documented in the Webassign Creating Questions Guide, in the Webassign Instructor's Guide, on page 199, the $INCORRECT variable is documented as being the number of points that are awarded for incorrect answers. Since one can set it on the basis of the documented variable $thisanswer (the index of the radio button checked in an $ORDERED presentation, starting from 0 for the first button), one can assign variable numbers of points to all of the "incorrect" answers on the basis of their index in the solution list, either using conditionals inside an EQN statement or some clever arithmetic.

Here is a simple example:

Course Satisfaction So far I am:

<EQN $ORDERED=5;$INCORRECT=$thisanswer+1;$CORRECT=1;" ">Extremely Dissatisfied
Neither Satisfied nor Dissatisfied
Extremely Satisfied

In the assignment, assign this question 5 points. If you select Extremely Satisfied (the ordered answer) the question is scored 5. If you select any of the other answers, they are scored with their button index plus one, that is, 1,2,3 or 4 in order. This simultaneously lets one look at the distribution of "satisfaction" in a survey with the built in tools and know exactly what a student's answer is on an exported spreadsheet where one can do anything one wishes -- histograms, pie charts, means, medians, predictive modelling in correlation with other recorded scores or instruments...

Anyway, good luck with this. One does have to wonder why one cannot control all of these things a lot more simply by (for example) having write access to $POINTS and $CORRECT both within a question, but this will do. Hope it helps.