aimmath-developers Mailing List for AiM Assessment in Mathematics (Page 15)
Brought to you by:
gustav_delius,
npstrick
You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(35) |
Jun
(11) |
Jul
(79) |
Aug
(139) |
Sep
(131) |
Oct
(26) |
Nov
(5) |
Dec
(4) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(3) |
Feb
(2) |
Mar
(5) |
Apr
(2) |
May
(1) |
Jun
|
Jul
(1) |
Aug
(10) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
(1) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2006 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
(17) |
Sep
(11) |
Oct
(18) |
Nov
(20) |
Dec
(17) |
2007 |
Jan
(5) |
Feb
(10) |
Mar
(4) |
Apr
(4) |
May
|
Jun
(4) |
Jul
(5) |
Aug
(3) |
Sep
(1) |
Oct
(4) |
Nov
|
Dec
(3) |
2008 |
Jan
(4) |
Feb
(19) |
Mar
(42) |
Apr
(30) |
May
(9) |
Jun
(10) |
Jul
(22) |
Aug
(13) |
Sep
(12) |
Oct
(17) |
Nov
(35) |
Dec
(58) |
2009 |
Jan
(36) |
Feb
(16) |
Mar
(27) |
Apr
(46) |
May
(126) |
Jun
(120) |
Jul
(68) |
Aug
(28) |
Sep
(30) |
Oct
(37) |
Nov
(13) |
Dec
(9) |
2010 |
Jan
(4) |
Feb
(3) |
Mar
(35) |
Apr
(59) |
May
(81) |
Jun
(62) |
Jul
(50) |
Aug
(45) |
Sep
(17) |
Oct
(1) |
Nov
|
Dec
|
2012 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: SourceForge.net <no...@so...> - 2003-09-06 13:07:10
|
Bugs item #800486, was opened at 2003-09-04 14:25 Message generated for change (Comment added) made by npstrick You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=800486&group_id=44411 Category: Student Interface Group: None >Status: Closed >Resolution: Fixed Priority: 3 Submitted By: Chris Sangwin (sangwinc) Assigned to: Nobody/Anonymous (nobody) Summary: Jumping between multipart questions Initial Comment: Construct a quiz containing multi part questions and attempt this using AiM in focused mode - either as a guest or registered user. Then clicking the links to multipart questions, for example Q2.1 etc does not work. It seems to work if you jump to one question, but not if you jump to three or four etc. ---------------------------------------------------------------------- >Comment By: Neil Strickland (npstrick) Date: 2003-09-06 13:07 Message: Logged In: YES user_id=430681 I'm assuming that this refers to the links from the mark summary back to the quiz. These are now fixed. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=800486&group_id=44411 |
From: SourceForge.net <no...@so...> - 2003-09-06 10:48:46
|
Bugs item #798640, was opened at 2003-09-01 16:14 Message generated for change (Comment added) made by npstrick You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id=44411 Category: Marking Group: None >Status: Closed >Resolution: Fixed Priority: 8 Submitted By: Ken Monks (monks) Assigned to: Nobody/Anonymous (nobody) Summary: Sporadic Validation error: bad name x Initial Comment: When Trying certain questions or quizzes, AiM reports "Validation error: bad name x." where x can be any single letter variable name that occurs in the answer that is provided by AiM (which is the correct answer). The error is not repeatable. When a question in a Tried quiz produces the error, Trying that same question separately with the same answer will not reproduce the error. I have only noticed this with AiM supplied answers when Trying a quiz or question, not when entering answers by hand as a registered student (but I haven't tested that as frequently, so it is possible it happens there also). ---------------------------------------------------------------------- >Comment By: Neil Strickland (npstrick) Date: 2003-09-06 10:48 Message: Logged In: YES user_id=430681 Fixed ---------------------------------------------------------------------- Comment By: Greg Gamble (gregg0) Date: 2003-09-03 07:01 Message: Logged In: YES user_id=766524 I can confirm the problem does occur with Maple 8 and the latest development version of AiM. Regards, Greg ---------------------------------------------------------------------- Comment By: Ken Monks (monks) Date: 2003-09-03 02:49 Message: Logged In: YES user_id=766386 After much trial and error I narrowed the problem down to the following reproducible error. If you make a quiz that contains the following two questions in the order given: nm> Question1 l> x h> x:=1; t> x is defined here! a> 1 end> nm> Question2 l> x t> But we still have x=1 here, even though x prints as @x@! a> x end> When you Try this quiz as an administrator, the value of x from the first question is reported by the second question in the validation error (using Neil's suggested modification in this thread to view its value) even though the teacher's answer and the @x@ both report their values correctly as x. Note that this error doesn't occur if you attempt the same quiz as a student and enter the same answers that are provided in the Try quiz page, nor does it occur if you try the second question separately. Also this error occurs on my system using Maple 9 and the latest development version of AIM, but it doesn't occur on my Maple 8 system using version 2 of AIM. So either it is something new with Maple 9, or something we introduced into the current development version. Can someone with Maple 8 installed see if the error occurs with Maple 8 and our development version of AIM? That would at least narrow the problem down somewhat. Suggestions? ---------------------------------------------------------------------- Comment By: Neil Strickland (npstrick) Date: 2003-09-01 21:56 Message: Logged In: YES user_id=430681 This error means that when `aim/SafeParse` is called to parse the student's answer, the global variable x has somehow acquired a value. This is not supposed to happen, even if the relevant question file assigns a value to x, because of the way that the functions `Local/Save` and `Local/Restore` are used. However, it is possible that this mechanism is faulty. If you are seeing this error, please let me know whether the relevant variable occurs in the local variable list for your question, and whether it gets assigned a value. Please also replace the line report['BadName'] := nam; in SafeParse.mpl by the line report['BadName'] := sprintf("%s has value %A",nam,eval (convert(nam,name))); This modification is not safe against hacking, so it should only be inserted temporarily. However, it will at least report what value has been assigned to the bad name, which should help to pinpoint where the assignment occurred. ---------------------------------------------------------------------- Comment By: Gustav W Delius (gustav_delius) Date: 2003-09-01 19:56 Message: Logged In: YES user_id=737246 This bug is hitting me too. The problem is reproducible as long as the quiz is not changed. However deleting other unrelated questions of the same quiz can make the problem go away. The bug shows up when trying a whole quiz as administrator. For me it is still there if I click on "Try separately". However if I then press "New Version" or "Mark" on the single-question page the error goes away. Pressing "Mark" or "New Version" on the page with the whole quiz does not make the error go away. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id=44411 |
From: Neil S. <N.P...@sh...> - 2003-09-06 07:24:17
|
I think that at least in the medium term, we should have a more elaborate mechanism tailored to the particular situation that Gustav described. AIM should remember the list of seeds that it used to generate the printed quizzes, and should only accept seeds from that list. (Apart from anything else, that would pretect against mistyped seeds, which are likely to be quite common.) It should also make sure that two different students do not enter the same seed, and so on. Neil |
From: Gustav W D. <gw...@yo...> - 2003-09-05 19:11:07
|
... actually the "SetSeed" option is then superfluous. We could make it so that if the "Seed" option AND the correct "SubjectPassword" option are provided then the seed is set. This would only require a minor modification of aim/MakeQuizContext. Gustav |
From: Gustav W D. <gw...@yo...> - 2003-09-05 19:10:33
|
Hi Ken, thanks for thinking about it so carefully. Your analysis shows that we can only allow the "SetSeed" option if AiM can be sure that the request did not originate from a hacking student. I therefore propose to ignore the "SetSeed" option unless the request also includes a "SubjectPassword" option giving the correct subject password. Here in York we address your questions as follows: > Questions that that come to mind: if we allow the student's to > set the seed The student does not set the seed directly. The student can only enter the number from his problem sheet. The Moodle system then looks up the seed it used to create that problem sheet. > then more than one student could enter the same seed Moodle checks that no two students enter the same number. > Even at a university where the students can't enter the seed, if > AIM has the > parameter you are suggesting couldn't a clever student just edit his HTML > page to change the seed to whatever he liked and resubmit? The student can not access AiM directly because only Moodle knows the student's password on AiM > Are you suggesting that the student would enter the seed only > once, or each > time he logs into the system to request the quiz? Only once. > So I guess I'd be a little nervous about having the students be able to > enter their own seeds unless we address these issues. Quite right and many thanks for pointing that out. Would you be happy with the modified proposal? Gustav |
From: Gustav W D. <gw...@yo...> - 2003-09-05 16:28:31
|
Here at York we need to be able to set the seed for a student's quiz rather than having it be determined at random. Now in principle this should be no problem because AiM knows about the optional parameter "Seed". We have no problem setting that parameter to what we want. This is used to set the seed in aim/DoQuiz provided UseRecordedSeed=false and UseSeedParameter=true. Unfortunately these are set to the opposite values in aim/MakeQuizContext. So just setting the seed parameter won't work. The only way I can think of to allow us to set the seed involves a change in the AiM code. My proposal is to introduce yet another optional parameter called "SetSeed" which, if set to true, is used in aim/MakeQuizContext to overrule the default settings for UseRecordedSeed and UseSeedParameter. Are there any objections to this or is there a different way? You may be interested to know why we need to set the seed. In York we had the habit of handing out the problem sheets in the lectures. This is convenient for the students because it saves them having to log in to the computer just to print out a problem sheet. We want to continue this habit even after the introduction of AiM (to not antagonize the student unnecessarily). So we will print out the right number of AiM produced problem sheets beforehand and these are distributed in the lecture. However the only practical way to hand them out is randomly. So when the student then goes to the computer to input his answers he is asked to input a number that is printed on the sheet. This number is then used by the system to find the seed that was used to produce that particular problem sheet. We then need to pass that seed on to AiM, which brings me back to the beginning of this message. Gustav |
From: Gustav W D. <gw...@yo...> - 2003-09-05 15:32:17
|
> I will try to sort it out over the weekend. Thanks for offering to do that! |
From: Neil S. <N.P...@sh...> - 2003-09-05 15:26:16
|
I will try to sort it out over the weekend. (Unfortunately, I have lost a whole day moving offices today, and a whole day on stupid computer problems yesterday). Neil > -----Original Message----- > From: aim...@li... > [mailto:aim...@li...]On Behalf Of > Gustav W Delius > Sent: 05 September 2003 15:40 > To: AIM developers > Subject: [Aimmath-developers] Sporadic Validation error: bad name x > > > Is anyone hunting for the "Sporadic Validation error: bad name x" bug > currently? > https://sourceforge.net/tracker/?func=detail&atid=439479&aid=79864 > 0&group_id > =44411 > > Gustav > |
From: Gustav W D. <gw...@yo...> - 2003-09-05 14:41:02
|
Is anyone hunting for the "Sporadic Validation error: bad name x" bug currently? https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id =44411 Gustav |
From: Ken M. <mo...@pt...> - 2003-09-04 15:25:51
|
> -----Original Message----- > From: aim...@li... > [mailto:aim...@li...]On Behalf Of > Gustav W Delius > Sent: Thursday, September 04, 2003 4:54 AM > To: AIM developers > Subject: RE: [Aimmath-developers] Multipart questions ... a little trap > > The original proposal was to allow an arbitrary number of answerboxes embedded > anywhere within the text of the question. One possible syntax would > be to include the answerboxes inside the t> flag as something like > %(type,size) > where type is the required Maple type of the anwer and size is the size of > the box. > > t> Find two primes $p_1$ and $p_2$ such that $p_2 > p_1 > @lowerbound@$.\\ > $p_1=$ %(posint,4) and $p_2=$ %(posint,4). > s> [ proc(ans1,ans2) ...... Yes, I would like to see this type of question some day. I suggested something similar to this to the JISC list last November. WeBWorK already has exactly this capability, for example. I would modify your suggestion slightly so the answerbox syntax would be: %(name,type,hsize,vsize) so that we can specify the horizontal and vertical size to each answer box (for example, if you want to make a survey or essay question with a very large answer box (if hsize or vsize are omitted they would have a default value). By naming the answer boxes we could just return a single table as the student's answer, i.e. > t> Find two primes $p_1$ and $p_2$ such that $p_2 > p_1 > @lowerbound@$.\\ > $p_1=$ %(p,posint,4) and $p_2=$ %(p2,posint,4). > s> [ proc(ans) if isprime(ans[p1]) and isprime(ans[p2]) and ans[p1]<ans[p2] and lowerbound < ans[p1] then return 1; else ...... We could call this a TableQuestion, since it returns a table instead of a Matrix. The advantage to naming this is that it makes the coding a bit more readable when you have many answer boxes, and if you later reformat the question to put the answer boxes in a different order or if you randomize the wording of the question so that the boxes randomly occur in a different order, you could have a single solution proc that doesn't need to take the order of the boxes into account. In this case the validation mechanism would not accept any student answers unless all of the boxes satisfied the correct type, and all boxes would be graded simultaneously each time. Another possible syntax might be %(type,name,hsize,vsize) so that if 'name' is omitted, the question boxes are just numbered in order 1,2,3, so that in the s> proc we would have ans[1], ans[2], etc. That way naming the boxes would be optional. I like your idea of putting the type in the answer box specifier. I guess if that was omitted too it could default to 'anything', so that %() would be the minimalists answer box. :) Actually, to be consistent with the @-substitution syntax, perhaps the answerbox syntax should be %type,name,hsize,vsize% Anyway this is definitely on the wish list for future AiM. I don't think we will have it before Monday though. :) KEN |
From: SourceForge.net <no...@so...> - 2003-09-04 14:25:28
|
Bugs item #800486, was opened at 2003-09-04 14:25 Message generated for change (Tracker Item Submitted) made by Item Submitter You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=800486&group_id=44411 Category: Student Interface Group: None Status: Open Resolution: None Priority: 3 Submitted By: Chris Sangwin (sangwinc) Assigned to: Nobody/Anonymous (nobody) Summary: Jumping between multipart questions Initial Comment: Construct a quiz containing multi part questions and attempt this using AiM in focused mode - either as a guest or registered user. Then clicking the links to multipart questions, for example Q2.1 etc does not work. It seems to work if you jump to one question, but not if you jump to three or four etc. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=800486&group_id=44411 |
From: Gustav W D. <gu...@ma...> - 2003-09-04 08:54:22
|
> I agree with Greg and Chris... we should not impose this requirement. I agree too now. > Perhaps if we actually wanted to ask this particular question in > a quiz the > best thing to do might be to use a Text question or Matrix question to ask > the students for a pair of distinct integers each greater than lower bound > and then just grade the ordered pair. (Of course that wouldn't make a very > good illustration of the multiquestion syntax. :)) This is right. Questions where the marking depends on all answers should not be done with multi-part questions but rather as a single question with multiple answerboxes. I had for a while thought that the proposal for having multiple answerboxes was no longer needed now that we have multi-part questions but Greggs and Kens analysis shows that that is not the case. The original proposal was to allow an arbitrary number of answerboxes embedded anywhere within the text of the question. One possible syntax would be to include the answerboxes inside the t> flag as something like %(type,size) where type is the required Maple type of the anwer and size is the size of the box. t> Find two primes $p_1$ and $p_2$ such that $p_2 > p_1 > @lowerbound@$.\\ $p_1=$ %(posint,4) and $p_2=$ %(posint,4). s> [ proc(ans1,ans2) ...... Gustav |
From: Ken M. <mo...@pt...> - 2003-09-04 03:56:55
|
> -----Original Message----- > From: aim...@li... > [mailto:aim...@li...]On Behalf Of > Gustav W Delius > Sent: Tuesday, September 02, 2003 4:48 AM > To: AIM developers > Subject: RE: [Aimmath-developers] Multipart questions ... a little trap > > I am strongly in favour of imposing the requirement on the > student to answer > the parts of a multi-part question in the correct order. I would > be happy to > have this requirement on all multi-part questions. I do not quite see the > need for multi-part questions that can be answered in any order. Even in > those cases where it would make sense to answer them in any order, what is > wrong with following the given order? So I think the AiM code should be > changed. Writing AiM questions is complicated enough as it is, > having to put > in extra checks into the question code is not desirable. > > What do others think? I agree with Greg and Chris... we should not impose this requirement. How the answers of the various parts depend on each can be very complicated and should be decided on a question-by-question basis by the question author. I think it would be much too inflexible the other way. We might eventually develop some tools to assist authors with the dependency checking along the lines of the depends> flag Greg suggested, but before we do that we probably should think carefully about what "depends" means. Do they have to have simply attempted the prerequisite question? Or do they have to get it correct? What if we want to assign partial credit to their second answer if it is correct GIVEN their incorrect first answer? Hmmm. For example, even with Greg's modification to Neil's original question, what if the student enters, say, 10 for the first part and 41 for the second part, marks the quiz, and then goes back to the first part and changes the 10 to 41 so that both questions have 41 for an answer? They get 1.9 out of 2.0 possible points even though they have only given one prime bigger than lowerbound. To avoid this we might want to change the question even further so that the first answer has to be correct before credit will be given in the second part, i.e. change: if not type(p1, posint) then # Make sure the student did in fact answer the first part!! `aim/t`("You haven't answered the first part yet!"); RETURN(0); to something like: if not type(p1, posint) or not p1>lowerbound or not isprime(p1) then # Make sure the student did the first part correctly!! `aim/t`("You must answer the first part correctly before you can answer this!"); RETURN(0); But now in this situation we can have a scenario that is stranger still! If the student enters 10 and 43 for the two answers, then marks the quiz, then changes the first answer to 41, the student gets no credit the first time around, but when marking it the second time both parts of the question say "Your answer is correct", yet the total score is only 1.0 out of 2.0, because (I think) the answer to the second part of the question didn't change, so it wasn't regraded! Perhaps if we actually wanted to ask this particular question in a quiz the best thing to do might be to use a Text question or Matrix question to ask the students for a pair of distinct integers each greater than lower bound and then just grade the ordered pair. (Of course that wouldn't make a very good illustration of the multiquestion syntax. :)) So this whole business of how the various answers depend on one another seems to be a subtle one indeed. I think for now the best policy is to let it as it is now, and leave it up to the question author decide what the various dependencies should be on a case by case basis. While we are on the topic of Neil's two-prime example question, the question gives an error when a composite number is entered under Maple 9 w/ AIM dev version. I tracked down the problem and it turns out that the value ans1 is not treated as a global variable in the two solution procs (causing an error when it tries to evaluate @ifactor(ans1)@ in the `aim/t` line) even though it is declared as a local variable at the top of the question. A workaround is to simply add the line global ans1; to the top of each solution proc. I don't know if this is the intended behavior, or if it is an artifact of Maple 9, but the workaround is probably not such a bad idea anyway, so I won't post this as a bug. For now I just updated the example in format.html to include these global declarations and committed the changes. KEN |
From: SourceForge.net <no...@so...> - 2003-09-03 14:57:52
|
Bugs item #798637, was opened at 2003-09-01 12:01 Message generated for change (Comment added) made by monks You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798637&group_id=44411 Category: None Group: None >Status: Closed >Resolution: Fixed Priority: 8 Submitted By: Ken Monks (monks) Assigned to: Nobody/Anonymous (nobody) Summary: Another error in Class/IndexFunction Initial Comment: The following error message: "Error, (in Class/IndexFunction) Type error in assignment: field InertFunction in class InertExpr should have type Inert" That occurs quite frequently when trying quizzes, though I can't reproduce the exact conditions to make it repeatable. If I change the 3 lines labeled "WAS:" in Class/IndexFunction in Class.mpl back to what they were the error seems to go away. I don't really understand the Class/IndexFunction proc or why those changes were made in the first place so I don't want to just change it back since someone obviously changed them for a reason. Is this related to Gustav's Class/IndexFunction error [796266 sporadic prompt field error]? ---------------------------------------------------------------------- >Comment By: Ken Monks (monks) Date: 2003-09-03 10:57 Message: Logged In: YES user_id=766386 Thanks Neil, you are a genius!! That worked perfectly. ---------------------------------------------------------------------- Comment By: Neil Strickland (npstrick) Date: 2003-09-01 13:27 Message: Logged In: YES user_id=430681 It was me that made these changes, in response to bug number 796262 ("c> type error"). Previously, if x was an object created by the OOP framework, then an assignment like x['Foo'] := bar; would fully evaluate bar. In particular, questionversion['MapleType'] := vector; would set questionversion['MapleType'] to the vector() procedure, whereas you really need it to be set to the unevaluated name 'vector'. Anyway, the probable explanation of Ken's bug is that there is an assignment x['InertFunction'] := bar, where bar evaluates to something of type Inert, but bar itself does not have type inert. This assignment should be changed to x['InertFunction'] := eval(bar); I hope that will fix the problem. I will let Ken look at this, as I have not understood the Inert stuff yet. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798637&group_id=44411 |
From: SourceForge.net <no...@so...> - 2003-09-03 07:01:33
|
Bugs item #798640, was opened at 2003-09-02 00:14 Message generated for change (Comment added) made by gregg0 You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id=44411 Category: Marking Group: None Status: Open Resolution: None Priority: 8 Submitted By: Ken Monks (monks) Assigned to: Nobody/Anonymous (nobody) Summary: Sporadic Validation error: bad name x Initial Comment: When Trying certain questions or quizzes, AiM reports "Validation error: bad name x." where x can be any single letter variable name that occurs in the answer that is provided by AiM (which is the correct answer). The error is not repeatable. When a question in a Tried quiz produces the error, Trying that same question separately with the same answer will not reproduce the error. I have only noticed this with AiM supplied answers when Trying a quiz or question, not when entering answers by hand as a registered student (but I haven't tested that as frequently, so it is possible it happens there also). ---------------------------------------------------------------------- >Comment By: Greg Gamble (gregg0) Date: 2003-09-03 15:01 Message: Logged In: YES user_id=766524 I can confirm the problem does occur with Maple 8 and the latest development version of AiM. Regards, Greg ---------------------------------------------------------------------- Comment By: Ken Monks (monks) Date: 2003-09-03 10:49 Message: Logged In: YES user_id=766386 After much trial and error I narrowed the problem down to the following reproducible error. If you make a quiz that contains the following two questions in the order given: nm> Question1 l> x h> x:=1; t> x is defined here! a> 1 end> nm> Question2 l> x t> But we still have x=1 here, even though x prints as @x@! a> x end> When you Try this quiz as an administrator, the value of x from the first question is reported by the second question in the validation error (using Neil's suggested modification in this thread to view its value) even though the teacher's answer and the @x@ both report their values correctly as x. Note that this error doesn't occur if you attempt the same quiz as a student and enter the same answers that are provided in the Try quiz page, nor does it occur if you try the second question separately. Also this error occurs on my system using Maple 9 and the latest development version of AIM, but it doesn't occur on my Maple 8 system using version 2 of AIM. So either it is something new with Maple 9, or something we introduced into the current development version. Can someone with Maple 8 installed see if the error occurs with Maple 8 and our development version of AIM? That would at least narrow the problem down somewhat. Suggestions? ---------------------------------------------------------------------- Comment By: Neil Strickland (npstrick) Date: 2003-09-02 05:56 Message: Logged In: YES user_id=430681 This error means that when `aim/SafeParse` is called to parse the student's answer, the global variable x has somehow acquired a value. This is not supposed to happen, even if the relevant question file assigns a value to x, because of the way that the functions `Local/Save` and `Local/Restore` are used. However, it is possible that this mechanism is faulty. If you are seeing this error, please let me know whether the relevant variable occurs in the local variable list for your question, and whether it gets assigned a value. Please also replace the line report['BadName'] := nam; in SafeParse.mpl by the line report['BadName'] := sprintf("%s has value %A",nam,eval (convert(nam,name))); This modification is not safe against hacking, so it should only be inserted temporarily. However, it will at least report what value has been assigned to the bad name, which should help to pinpoint where the assignment occurred. ---------------------------------------------------------------------- Comment By: Gustav W Delius (gustav_delius) Date: 2003-09-02 03:56 Message: Logged In: YES user_id=737246 This bug is hitting me too. The problem is reproducible as long as the quiz is not changed. However deleting other unrelated questions of the same quiz can make the problem go away. The bug shows up when trying a whole quiz as administrator. For me it is still there if I click on "Try separately". However if I then press "New Version" or "Mark" on the single-question page the error goes away. Pressing "Mark" or "New Version" on the page with the whole quiz does not make the error go away. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id=44411 |
From: Jon B. <jbr...@wo...> - 2003-09-03 04:38:07
|
I have made changes locally to AutoConf.mpl, OS0_OSX.mpl, and OS0.mpl. I think all but one of the changes just replaces 'if os_os = "Linux"' with 'if os_os =Linux" or os_os = "OS X".' In AutoConf.mpl I added OS X sections for finding the various components. Everything seems to be working, but I still get a weird error when trying Ken's Tutorial as an admin. If the answer to one of the questions is exp(anything) or ln(anything), the answer is filled in correctly but I get "Your last answer contained a forbidden word: pxe (or nl)." This seems to be similar to the error reported by Ken. I will keep testing before committing the changes. ______________________________________ q-series are my game. Jon Breitenbucher The College of Wooster Department of Mathematics and Computer Science Wooster, Ohio 44691 (330)263-2207 jbr...@wo... http://jbreitenbuch.wooster.edu/~jonb |
From: SourceForge.net <no...@so...> - 2003-09-03 02:49:39
|
Bugs item #798640, was opened at 2003-09-01 12:14 Message generated for change (Comment added) made by monks You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id=44411 Category: Marking Group: None Status: Open Resolution: None Priority: 8 Submitted By: Ken Monks (monks) Assigned to: Nobody/Anonymous (nobody) Summary: Sporadic Validation error: bad name x Initial Comment: When Trying certain questions or quizzes, AiM reports "Validation error: bad name x." where x can be any single letter variable name that occurs in the answer that is provided by AiM (which is the correct answer). The error is not repeatable. When a question in a Tried quiz produces the error, Trying that same question separately with the same answer will not reproduce the error. I have only noticed this with AiM supplied answers when Trying a quiz or question, not when entering answers by hand as a registered student (but I haven't tested that as frequently, so it is possible it happens there also). ---------------------------------------------------------------------- >Comment By: Ken Monks (monks) Date: 2003-09-02 22:49 Message: Logged In: YES user_id=766386 After much trial and error I narrowed the problem down to the following reproducible error. If you make a quiz that contains the following two questions in the order given: nm> Question1 l> x h> x:=1; t> x is defined here! a> 1 end> nm> Question2 l> x t> But we still have x=1 here, even though x prints as @x@! a> x end> When you Try this quiz as an administrator, the value of x from the first question is reported by the second question in the validation error (using Neil's suggested modification in this thread to view its value) even though the teacher's answer and the @x@ both report their values correctly as x. Note that this error doesn't occur if you attempt the same quiz as a student and enter the same answers that are provided in the Try quiz page, nor does it occur if you try the second question separately. Also this error occurs on my system using Maple 9 and the latest development version of AIM, but it doesn't occur on my Maple 8 system using version 2 of AIM. So either it is something new with Maple 9, or something we introduced into the current development version. Can someone with Maple 8 installed see if the error occurs with Maple 8 and our development version of AIM? That would at least narrow the problem down somewhat. Suggestions? ---------------------------------------------------------------------- Comment By: Neil Strickland (npstrick) Date: 2003-09-01 17:56 Message: Logged In: YES user_id=430681 This error means that when `aim/SafeParse` is called to parse the student's answer, the global variable x has somehow acquired a value. This is not supposed to happen, even if the relevant question file assigns a value to x, because of the way that the functions `Local/Save` and `Local/Restore` are used. However, it is possible that this mechanism is faulty. If you are seeing this error, please let me know whether the relevant variable occurs in the local variable list for your question, and whether it gets assigned a value. Please also replace the line report['BadName'] := nam; in SafeParse.mpl by the line report['BadName'] := sprintf("%s has value %A",nam,eval (convert(nam,name))); This modification is not safe against hacking, so it should only be inserted temporarily. However, it will at least report what value has been assigned to the bad name, which should help to pinpoint where the assignment occurred. ---------------------------------------------------------------------- Comment By: Gustav W Delius (gustav_delius) Date: 2003-09-01 15:56 Message: Logged In: YES user_id=737246 This bug is hitting me too. The problem is reproducible as long as the quiz is not changed. However deleting other unrelated questions of the same quiz can make the problem go away. The bug shows up when trying a whole quiz as administrator. For me it is still there if I click on "Try separately". However if I then press "New Version" or "Mark" on the single-question page the error goes away. Pressing "Mark" or "New Version" on the page with the whole quiz does not make the error go away. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=439479&aid=798640&group_id=44411 |
From: Chris S. <san...@fo...> - 2003-09-02 12:40:35
|
Gustav I disagree with the suggestion that all parts must be answered. I intend to use the multi-part questions to allow intermediate steps to be answered *if needed* by the student, under some circumstances. This will not hinder good students who can work through the multi-part problem unaided. But will allow a weak student to gain some partial credit (and feedback I hope) for intermediate answers. Chris On Tue, 2 Sep 2003, Gustav W Delius wrote: > > > Initially, I thought that perhaps some extra code should be included to > > prevent a student from answering later parts if the former parts were > > not already answered, but I think there are plenty of cases where it > > makes sense for students to answer the parts in any order ... so the > > quiz coder just needs to be aware of the potential problem and write > > questions accordingly. > > I am strongly in favour of imposing the requirement on the student to answer > the parts of a multi-part question in the correct order. I would be happy to > have this requirement on all multi-part questions. I do not quite see the > need for multi-part questions that can be answered in any order. Even in > those cases where it would make sense to answer them in any order, what is > wrong with following the given order? So I think the AiM code should be > changed. Writing AiM questions is complicated enough as it is, having to put > in extra checks into the question code is not desirable. > > What do others think? > > Many thanks to Greg for discovering this issue. > > Gustav > > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Aimmath-developers mailing list > Aim...@li... > https://lists.sourceforge.net/lists/listinfo/aimmath-developers > |
From: Greg G. <gr...@ma...> - 2003-09-02 10:45:03
|
On Mon, 1 Sep 2003, Ken Monks wrote: > I just committed all of the stuff I had been working on for the past couple > of weeks. Most of it consists of question authoring tools. Most if it is > also rather harmless, in that if you don't use it in writing your questions > it shouldn't break anything. However, there are a few things that could > affect the LaTeX formatting of the mathematics in existing questions (though > I hope in most cases it will be for the better). If there is some change you > don't like, let me know and I'll do a feature-ectomy on that item. See > below for details. > > COMMITTED CHANGES: Sep 1, 2003 > ------------------------------ > > * Added the following files: > > 1. aim/Inert.mpl > > This file contains a package called 'Inert'. This is interesting, but my thinking at the moment is that I'll still want the ad> tag ... but I'm not sure I've got my head around all the things this new feature can do. > 5. aim/admin/CompileSubject.mpl > > I got sick of going around to each of my quizzes and recompiling all of the > questions when I made significant changes to the code to see if the > questions all still compile, so I wrote a new admin command called > CompileSubject that compiles all of the files in all of the question source > directories of all of the non-hidden quizzes in a given subject. I also put > a link to this on the subject admin page. If you think this is too > dangerous of a command for the ordinary AiM user to have access to, we can > always delete the link to it from the subject page and just call it from a > shortcut externally or something. Ahh! ... I've wanted to be able to do all the GUI things from Maple after reading in Console.mpl. I can see myself wanting to do all manner of sequences of commands via a single script. This is great!!! Thanks Ken. > 9. AliceServer.mpl > ... > + define e:=exp(1) globally. Note that this means you probably can't use > e as a local variable in your AiM questions. On the other hand both you and > the students can use e^x for exp(x). I'm a bit unsure of this one. This seemed to create problems for me in the past ... so I have tended to list e among the locals of questions that use e and have a marking algorithm starting like this: [ proc(ans) local ans_; ans_ := simplify(subs(e = exp(1), ans)); ... A bit tedious I know ... but it did the trick. Thanks for all the other new stuff ... it looks great. Regards, Greg |
From: Greg G. <gr...@ma...> - 2003-09-02 10:27:37
|
On Tue, 2 Sep 2003, Gustav W Delius wrote: GG> Initially, I thought that perhaps some extra code should be included to GG> prevent a student from answering later parts if the former parts were GG> not already answered, but I think there are plenty of cases where it GG> makes sense for students to answer the parts in any order ... so the GG> quiz coder just needs to be aware of the potential problem and write GG> questions accordingly. > > I am strongly in favour of imposing the requirement on the student to answer > the parts of a multi-part question in the correct order. I would be happy to > have this requirement on all multi-part questions. I do not quite see the > need for multi-part questions that can be answered in any order. Even in > those cases where it would make sense to answer them in any order, what is > wrong with following the given order? So I think the AiM code should be > changed. Writing AiM questions is complicated enough as it is, having to put > in extra checks into the question code is not desirable. > > What do others think? One of the advantages one now has is that a student, not knowing the answer to a part, can skip onto the next part. In many of my multipart I don't need to use av>, and so the parts are essentially independent. I would not want to force a student to enter a nonsense answer just so they can get onto the next part. However, what would be nice if it could be simply coded is a depends> tag to complement the av> tag, that would prevent a student answering a question part if another part's answer needed to be provided first. This would essentially do what I had done manually, i.e. have something like: sq> av> p1 s> [ ... ] esq> sq> depends> p1 av> s> [ proc(ans) if ans > p1 ... ] esq> Regards, Greg |
From: Gustav W D. <gu...@ma...> - 2003-09-02 08:56:12
|
I had noticed the same delay with some of my messages. One message that I sent on Saturday afternoon arrived yesterday night. That is a delay of over 30 hours! I hope SourceForge gets its act together soon or we will have to move our mailing list. Gustav > -----Original Message----- > From: aim...@li... > [mailto:aim...@li...]On Behalf Of Greg > Gamble > Sent: 02 September 2003 04:16 > To: AIM developers > Subject: Re: [Aimmath-developers] installlin.html > > > On Mon, 1 Sep 2003, Greg Gamble wrote: > > Sorry, for the delay ... I only (just now) committed my further changes. > > I don't know if you all experienced the lag ... but I sent the email some > 18 hours before I received it back again. > > (just now) = (a little before Monday, 1 September 2003 5:07 PM WST) > = (a little before Monday, 1 September 2003 9:07 AM GMT) > > Regards, > Greg > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Aimmath-developers mailing list > Aim...@li... > https://lists.sourceforge.net/lists/listinfo/aimmath-developers > |
From: Gustav W D. <gu...@ma...> - 2003-09-02 08:48:11
|
> Initially, I thought that perhaps some extra code should be included to > prevent a student from answering later parts if the former parts were > not already answered, but I think there are plenty of cases where it > makes sense for students to answer the parts in any order ... so the > quiz coder just needs to be aware of the potential problem and write > questions accordingly. I am strongly in favour of imposing the requirement on the student to answer the parts of a multi-part question in the correct order. I would be happy to have this requirement on all multi-part questions. I do not quite see the need for multi-part questions that can be answered in any order. Even in those cases where it would make sense to answer them in any order, what is wrong with following the given order? So I think the AiM code should be changed. Writing AiM questions is complicated enough as it is, having to put in extra checks into the question code is not desirable. What do others think? Many thanks to Greg for discovering this issue. Gustav |
From: Greg G. <gr...@ma...> - 2003-09-02 07:14:58
|
Dear all, I was just formulating a multipart question not too dissimilar to Neil's primes example in doc/format.html and it occurred to me: `What happens if, for a question, the answers are all examples of the same type, in such a way that they can be entered in the answer boxes in any order, and we are using the av> tag to ensure the answers are distinct ... *but* the student can only think up one example and so enters that example for the last part, marks it, then enters the same example in the 2nd last answer box, marks it, etc. until all parts are answered?' Answer: the student gets full marks if one does not have an explicit test in each part to check that the previous parts have been answered, though once the student has finished this procedure all but the first part has red feedback saying the answer to that part is not distinct from those of the previous parts. (This is because AIM does not remark a question that has been previously marked correct and so the previous perfect score stands.) In fact, the marking algorithm of the 2nd part of Neil's example as it stood (I've since added some code to prevent it) runs into error if the first part is not answered. However, the question that I had been working would have simply allowed the student to get full marks with one example. Thus one needs to have explicit checks in each part to ensure that previous parts have been answered (if this is the rationale for the question). In Neil's example, the av> tag sets p1 to be the answer of the first part. I have added a check that p1 is of type posint (the type declared for the first part's answer) in the marking algorithm for the second part. name> primes local> lowerbound,ans1,p1,p2 shift> 7645848653 t> Recall that Euclid proved that their are infinitely many primes h> lowerbound := rnd(20..40); note> sprintf("p2>p1>%a",lowerbound) sq> t> Find a prime $p_1$ such that $p_1 > @lowerbound@$ c> posint av> p1 ap> $p_1 =$ s> ... esq> sq> t> Find another prime $p_2$ such that $p_2 > p_1$ c> posint av> p2 ap> $p_2 =$ s> [proc(ans) if not type(p1, posint) then # Make sure the student did in fact answer the first part!! `aim/t`("You haven't answered the first part yet!"); RETURN(0); elif isprime(ans) then ... Initially, I thought that perhaps some extra code should be included to prevent a student from answering later parts if the former parts were not already answered, but I think there are plenty of cases where it makes sense for students to answer the parts in any order ... so the quiz coder just needs to be aware of the potential problem and write questions accordingly. Regards, Greg |
From: Greg G. <gr...@ma...> - 2003-09-02 03:16:17
|
On Mon, 1 Sep 2003, Greg Gamble wrote: > Sorry, for the delay ... I only (just now) committed my further changes. I don't know if you all experienced the lag ... but I sent the email some 18 hours before I received it back again. (just now) = (a little before Monday, 1 September 2003 5:07 PM WST) = (a little before Monday, 1 September 2003 9:07 AM GMT) Regards, Greg |
From: Neil S. <N.P...@sh...> - 2003-09-01 22:16:55
|
> 1) improve navigation for the lecturer by having a navigational bar on all > administrative pages that allows the lecturer to jump directly to the most > important administrative pages. We could do some ad hoc improvements for the current release. In the longer term, we should have toolbars and drop-down menus, more in the style of other standard applications, and we should have some new functions in Admin.mpl to support the creation of such widgets, rather than the current piecemeal approach. > 2) improve help by having pop-up help windows for most of the links on the > administrative pages. I want to do this moodle-style, i.e., with a little > question mark icon next to the link. When clicking on the question mark a > pop-up window opens with a description of the page that will be opened by > that link. I won't have to do too much writing because the help text is > already there in teacher.html. That is an excellent idea, which I had also thought of implementing. There should again be some development of Admin.mpl to support it, but that should not be too much work. Nonetheless, it will probably need to wait for the next release. -------------------- In my opinion, the most important missing feature in the current version is the ability to upload and download quizzes or subjects in a portable format. Provided that we ignore images (which we could reasonably do, as a first step) this would be fairly easy to implement. There are some complexities about handling images, especially if you want to allow some images specific to a particular question and others shared by all questions in a subject, but that problem could be attacked separately. Once we have a decent way to package subjects and quizzes, we can set up a framework to distribute them over the web, or to move them to a new AIM installation. Neil |