[LON-CAPA-users] 2 questions

Raeburn, Stuart raeburn at msu.edu
Thu Oct 31 13:44:23 EDT 2019


Answer to question 1:

Authors can include parameters within a problem to cause the randomization to change after N tries, by setting the questiontype parameter to randomizetry, and the randomizeontries to N, e.g.,

    <parameter description="Question Type" name="type" default="randomizetry" type="string_questiontype" />
    <parameter description="Tries before new Variation (if Qn. Type=randomizetry)" name="randomizeontries" default="3" type="int_pos" />

If you use the colorful editor, and select "Parameters for a part" in an Insert drop-down list item, you can then insert these parameters by using the "Use template" drop-down list to selecting either "Question type" or "Tries before new Variation (if Qn. Type=randomizetry)".  In the first case, enter a value of: randomizetry in the Default: textbox, and in the second enter the desired number of tries (e.g., 3) in the Default: textbox.

If the questiontype parameter is set to randomizetry, but randomizeontries is not set, then a default value of N = 1 is used.

In course context when you include a parameter within a problem itself, that parameter will be listed in the "Resource Level" default column when displaying Content Settings for that particular resource.  (The resource level default can be overridden by setting a value for the same parameter in the  "in Course" for Resource column in table mode, i.e., further to the right).

Currently, including a randomizeontries parameter within a problem does not change the behavior when viewing in Authoring Space (N=1 applies), although the parameter you set will be in effect when viewing in course context.  In addition, when the randomizetry parameter is included within a problem, the text: "New Problem Variation After Every N tries" is displayed in course context, but not when viewing in Authoring Space.

I have filed a bug (6917) and have implemented code changes so viewing in Authoring Space is consistent with viewing in course context. (See bugs.loncapa.org/show_bug.cgi?id=6917 for details).

Answer to question 2:

If the problem is a cs or ci stringresponse type problem, then in a script block you could loop over the attempt history and retrieve the "Computer's answer" for a particular attempt via: 


(you would remove the text: "INTERNAL:" from the value returned by the &EXT()), and you could retrieve the submission for that particular attempt via: 


where $i is the transaction counter, as discussed in an earlier thread on this list (see: mail.lon-capa.org/pipermail/lon-capa-users/2018-October/005362.html).

However, rendering both the instance of the question for the randomseed in effect, and the computer's answer for a responseitem that is not ci or cs stringresponse, would require implementing a change within LON-CAPA to display the output from rendering for these different targets with the current randomseed, along with an "Additional tries with new problem variation" button to proceed to access additional attempt(s) with the new randomseed.  I have filed an enhancement request for this, see: bugs.loncapa.org/show_bug.cgi?id=6918 

I do not know whether questiontype=randomizetry is in use by any instructors.  This questiontype was originally implemented to satisfy a request from ECE instructor(s) in the uiuc domain, but I believe ECE course(s) at uiuc no longer use LON-CAPA.

Aside from the use of a questiontype set to randomizetry, you could also explore (a) the use of conditional blocks within a  .problem, or (b) the use of a .page containing multiple instances of the same resource, linked together by conditional links, as ways of accomplishing your goal (albeit with a potential side effect on points possible totals for a folder and/or course when using the standard gradebook).

Stuart Raeburn
LON-CAPA Academic Consortium
From: LON-CAPA-users <lon-capa-users-bounces at mail.lon-capa.org> on behalf of Mills, Douglas G <dmills at illinois.edu>
Sent: Wednesday, October 30, 2019 10:31 AM
To: Discussion list for LON-CAPA users
Cc: Mills, Douglas G
Subject: [LON-CAPA-users] 2 questions

Happy Fall -- it seems to be arriving here in Champaign Urbana at least.

I am wondering:

(1) Is there a parameter that can be coded into a problem to refresh variables after x number of attempts? I know this can be done in the content parameters and that that is the preferred Lon-Capa approach, giving instructors greater autonomy over such decisions, but for specific problems in a specific course, the instructors are interested in after, say 3 tries, giving the student the answer to the current version of the problem and presenting a re-randomized version. Which leads to my second question:

(2) If in the scenario above we randomize a problem after x number of tries, is there a way to refer to the previous randomized values so that in addition to the new version the student can be shown something like "The problem you were trying to solve was ... and the correct answer to that problem is ..." ? There are so many possibilities for creative implementations in Lon-Capa I'm pretty sure I can figure out a way of accomplishing this, but thought I'd go ahead and ask first since there are also so many ways of accessing behind-the-scenes information in Lon-Capa.

Thanks all!


Director of Instructional Technology

Department of Chemistry

University of Illinois at Urbana-Champaign
Chemistry Annex Box A2
601 S. Mathews | M/C 712
Urbana, IL 61801
217.244.5739 | fax: 217.244.8029 | dmills at illinois.edu<mailto:dmills at illinois.edu>


Under the Illinois Freedom of Information Act any written communication to or from university employees regarding university business is a public record and may be subject to public disclosure.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 2604 bytes
Desc: image001.png
URL: <http://mail.lon-capa.org/pipermail/lon-capa-users/attachments/20191031/87bcba1c/attachment.png>

More information about the LON-CAPA-users mailing list