Editing the marking scale

Added by Matthew Leingang about 6 years ago

Hello,

This past week I used AMC to generate and score exams for a course of about 200 students. I learned a lot about the process. I am hoping eventually we can scale up to courses of about 1200.

One problem is of my own creation. Our 200 students were distributed in seven sections. I wanted an easy way to look at an exam page and determine the section of the student to which it belonged. I thought having the exam number be three digits long with first digit equal to the section number would work. And it does. However, it means I needed to generate about 750 exams even though I am only using exams 101-140, 201-240, etc. Generating 750 18-page TeX files takes about 40 minutes on my MacBookPro Intel Core i5 machine. :-o

I thought that was not so bad, though, since after printing I wouldn't have to generate them again. But in the process of grading, and discovering errors in the marking scale generated from our TeX file, I realized that this process has to be redone every time the marking scale is updated. So about half a dozen times I had to edit the source file and update the marking scale, then wait 40 minutes to rescore the exams.

I've only just now started probing this process in debugging mode to figure out how the marking scale is created. But I'm wondering (a) if there is a faster/better way to do it than regenerating all the exams, and (b) if there's a way to expose the marking scale to users in an editable way. It's a big bottleneck to, when we notice that a single problem has an incorrect answer marked correct in source, have to regenerate 13,500 pages of PDF.

Thanks for your help.

Best,
Matthew


Replies (4)

RE: Editing the marking scale - Added by Alexis Bienvenüe about 6 years ago

(a) Getting the marking scale without latex compiling does not seem possible to me, since shuffling, macro expansions and so on are done by latex.

(b) This could work for questions which are not random (shuffling the answers is OK, but not questions with random numerical values for example). However this can lead to errors, since you will get a marking scale different from the source file's one, and when you update the marking scale with a latex run, all changes will be lost.

RE: Editing the marking scale - Added by Matthew Leingang about 6 years ago

(b) I see what you mean. If one knows what they are doing, they can change the TeX file and the database at the same time. I was able to do this when I realized that I had written a Question ID with a typo in it.

(a) I get it. Is the marking scale constructed by reading amc-compiled.pdf? Or one of the other files like amc-compiled.amc? If it's the latter, maybe there's a way to have TeX expand the macros the document (writing to the .amc file in the process), but not write the PDF. I'll look into that.

There are other workarounds I can see. Our process was to scan the multiple choice pages all at once, while grading the free response/open questions one page at a time. I could make two exams, one for multiple choice and one for free response. The multiple choice exam could have une douzaine or so copies. The free response exam would still need unique copies, but since it would have fewer pages and less text, it would be faster to generate.

RE: Editing the marking scale - Added by Alexis Bienvenüe about 6 years ago

If one knows what they are doing, they can change the TeX file and the database at the same time.

Sure.

Is the marking scale constructed by reading amc-compiled.pdf? Or one of the other files like amc-compiled.amc?

Not from the PDF.

maybe there's a way to have TeX expand the macros the document (writing to the .amc file in the process), but not write the PDF.

I think this would save a lot of time, but I did not find the way to do this (yet). If you find something, please tell!

RE: Editing the marking scale - Added by Matthew Leingang about 6 years ago

Alexis Bienvenüe wrote:

maybe there's a way to have TeX expand the macros (in) the document (writing to the .amc file in the process), but not write the PDF.

I think this would save a lot of time, but I did not find the way to do this (yet). If you find something, please tell!

There is, but it doesn't. The syntonly package <http://www.ctan.org/pkg/syntonly>, which I just discovered this afternoon, does exactly that: process the document without writing any output. I tried putting this in the source file and regenerating the marking scale. It seemed to take the same amount of time for my large exam.

In the debugging file I noticed that the TeX process was still reading the graphics files cause by \includegraphics and \includepdf. So I added the "draft" option to both of those packages, and regenerated the marking scale. Then the included graphics files aren't read. Now the debugging file has almost nothing written to it except included TeX files and overfull hbox warnings. However, the job didn't finish any faster. It might even have been a little slower.

I am guessing that it's the pgfmath randomization that's the bottleneck. If so, perhaps using luatex instead of pgfmath would make it faster. I'll look into that next.

In the meantime, perhaps some user interface/documentation enhancements? The progress bar doesn't advance during TeXing. I guess it would be hard to make it do that since it's a subprocess. But it could easily be added to the documentation that regenerating the marking scale will take the same amount of time as the documents themselves. The same for the "compose" option on the Annotate function.

(1-4/4)