CAPQuiz

Activities ::: mod_capquiz
Maintained by George Schaathun, Sebastian Gundersen, André Storhaug
CAP is short for Computer Adaptive Practice. In CAPQuiz, the proficiency is measured by a rating. Good answers increase the rating, and bad answers decrease it. To increase the rating, students need to give good answers more of than bad ones over time. Estimating question difficulty is known to be difficult. CAPQuiz automates this process to some extent. The question author must provide an initial estimate, but CAPQuiz improves the estimates based by comparing how the same student answers different questions. Hence the rated question sets will improve over time.
Latest release:
78 sites
197 downloads
28 fans
Current versions available: 3

What is it?

CAP is short for /Computer Adaptive Practice/, a term coined by Klinkenberg, Straatemeier, and van der Maas (2011). Where most LMS quiz systems give the students a fixed sequence of questions regardless of how well the students answer, a CAP system will estimate student ability based on their answers, and try to find questions at the right level of difficulty.

In CAPQuiz, the proficiency is measured by a rating. Good answers increase the rating, and bad answers decrease it. To increase the rating, students need to give good answers more of than bad ones /over time/. We have used CAPQuiz as a mandatory assignment, where the students have to reach a certain rating in order to be allowed to sit the exam.

Estimating question difficulty is known to be difficult. CAPQuiz automates this process to some extent. The question author must provide an initial estimate, but CAPQuiz improves the estimates based by comparing how the same student answers different questions. Hence the rated question sets will improve over time.

Recent News

Apologies for the long lapse in maintenance.  Now, we can at least offer a version which works, as far as we can tell, on Moodle 4.x.  

30 April 2023   We released v0.7.0 for Moodle 4.x.

28 April 2023   We released v0.6.3 for Moodle 3.11 (and 3.9)

Bugs

There will still be bugs, but we hope to be able to fix them as they are reported, but we need details.  Please report the problems you have, and include

  1. Details on the problems.
  2. Details on the version you use, both the CAPQuiz version and the Moodle version.
  3. Any error messages observed.
  4. Moodle XML of the question if you have questions which do not work.
  5. If possible, report the issues in github.  We will try to follow up on issues reported below as well.

Documentation

See link below

History:

The idea of an adaptive learning system at NTNU in Ålesund (then Ålesund University College) was first conceived by Siebe van Albada. His efforts led to a prototype, known as MathGen, written as a standalone server in python.

The first prototype was tested by several lecturers, and was well received by students. There were, however, many problems which we lacked the resources to handle. Most of these problems had already been solved by Moodle and the STACK question type, and it made sense to reimplement the adaptive quiz functionality in Moodle to take advantage of this.

Credits:

Project lead: Hans Georg Schaathun: hasc@ntnu.no

Developers:

Original idea: Siebe Bruno Van Albada siebe.b.v.albada@ntnu.no

The first prototype was funded in part by Norgesuniversitetet.

The development of CAPQuiz has been funded in part by internal grants from Ålesund University College and NTNU Toppundervisning at NTNU - Norwegian University of Science and Technology.

Screenshots

Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5
Screenshot #6
Screenshot #7

Contributors

George Schaathun (Lead maintainer)
Sebastian Gundersen
Please login to view contributors details and/or to contact them

Comments RSS

Comments

  • George Schaathun
    Sat, 16 Mar 2019, 1:03 AM
    Yes, that's right. When you set desired win probability, the system calculates the corresponding (ideal) question rating, and pick a question uniformly at random from the set of N questions with rating closest to the ideal. The underlying model is the same one as is used in chess, that of Elo. Except for linear scaling, this is equivalent to the Rasch model used in psychometrics.
  • Kees Koopman
    Mon, 18 Mar 2019, 2:52 AM
    Hi George,

    Thank you for your quick reply.
    I now understand making questions and also assigning a rating.

    I have a follow-up question.

    I would like to perform a conditional action based on the rating or number of stars achieved. How do I do this?

    Thank you in advance for your response.
    Sincerely,
    Kees Koopman
  • George Schaathun
    Fri, 22 Mar 2019, 9:33 PM
    I am not sure that is possible; it goes beyond my use of Moodle ever. Do you have an quick example of another plugin which allows you to perform conditional actions?

    I know we had some challenges with this, as we wanted to implement the stars as badges, rather than as a plugin internal score. It may or may not be related.

    I'll try to talk to my colleagues. With a good example from another plugin, it might be an easy thing to fix.
  • Kees Koopman
    Sat, 23 Mar 2019, 5:35 PM
    Hi George,

    Thank you for your response.
    My question was: "I would like to perform a conditional action based on the rating or number of stars achieved. How do I do this?"

    I think I mean something simpler than you may think.

    For example: a student receives a grade in the gradebook after taking a test. I can then have a conditional action depend on that figure. If 'grade for test <6.0', then 'do repeat material'. Etc.

    This 'repeat material' has a 'Restricted Access'. For example, a certain grade for a test, a certain stash object or a certain level (Level up!).

    What I want is that there is a 'Restrict Access filter' that can filter on 'student level' or 'number of stars'.

    See also: https://moodle.org/plugins/availability_xp and https://moodle.org/plugins/availability_stash.

    I hope my explanation is clear; otherwise ask for an explanation.

    Thanks in advance!
    Regards, Kees Koopman.
  • George Schaathun
    Mon, 25 Mar 2019, 3:56 PM
    Right, I think what you are asking for is for CAPQuiz to issue a grade, which can be recognised as such by other moodle modules/the core.
    It is still beyond my use of Moodle; I use Moodle only for activities, I do not organise taught modules. But obviously you are right. Issuing a grade makes sense, and I have a couple of students who will be working on CAPQuiz and JazzQuiz over the Summer, and this sounds like something we can fix in that timeframe.

    I was just wondering what use case you have in mind. My own use case was to allow the students to continue work on the activity indefinately. There is a deadline for reaching three stars, and I simply record outside moodle who have achieved it soon after the deadline, without disrupting the flow for those heading for five stars.
    How would you organise it (in an ideal world)? Close the activity at the deadline and use the number of stars as a grade? Issue a grade at the deadline and keep the activity open? Or?
    :-- George
  • Kees Koopman
    Mon, 25 Mar 2019, 11:19 PM

    Hi George,

    Thank you for your response.

    I didn't mean so much that a student gets a grade. That also does not do justice to the intention of CAPQuiz, I think.

    Somewhere in the Moodle database is the student's obtained rating. Joe Smith, for example, has a rating of 1565.

    I have a document, certificate, test, web link or something available for students who have a rating of 1550 and higher. Joe Smith is eligible for this (after all: 1565> 1550).

    In that follow-up document, with Restrict Access there is something like: if the student scores at CAPQuiz> 1550, then he can see the document.

    Writing this I think of a wish.
    At "Activity Completion" >> "Completion tracking" >> "Show activity as complete when conditions are with" >> "Require a rating of ....." (see stash or level up).
    On the dots you can then enter the minimum rating where Moodle automatically ticks the CAPQuiz. This can then be used as input for the Progress Bar.



    You write that you have a deadline for reaching three stars and that you register that outside of Moodle. I like to see the latter automatically and within Moodle smile.
    The Moodle progress bar that I use is a fantastic instrument for that.
    The student may (or must) continue to improve himself; In my opinion, CAPQuiz should simply remain open.

    Regards, Kees Koopman.
  • Sebastian Gundersen
    Thu, 27 June 2019, 9:59 PM
    Hello Kees,

    CAPQuiz now supports the grading system. You can find the documentation here: https://github.com/KQMATH/moodle-mod_capquiz/wiki/Grading
    If you try this feature, feedback is much appreciated.

    Regards, Sebastian Gundersen.
  • George Schaathun
    Mon, 1 July 2019, 7:01 PM
    Thank you, Sebastian, well done.
    I would be grateful, Kees, if you would tell me if the current solution meets your requirement. What we do is to export the number of stars to the gradebook, until the deadline.
    Since I personally only manage single activities, and not complete courses, I do not really know what's needed.
    :-- George
  • George Schaathun
    Thu, 24 Oct 2019, 8:43 PM
    FYI. We have detected a bug in the update of question ratings. We believe that we have found the fix, and as soon as we have double-checked it, we will make a new release. Anyone using the current release should set the question k-factor to zero. The result of the bug is that questions are pushed towards extreme ratings, so almost all questions have either very high or very low ratings. If the k-factor is zero, ratings do not change.
  • George Schaathun
    Thu, 24 Oct 2019, 8:44 PM
    BTW student ratings are not affected.
  • George Schaathun
    Mon, 28 Oct 2019, 4:10 PM
    This problem is resolved in version 0.4.1. Please upgrade if you want dynamic problem ratings.
  • Andy Gokce
    Sat, 23 Nov 2019, 9:33 AM
    Hi,
    The screenshots show that the teacher needs to select the number of questions in the quiz (10 in the example). But you say in the description that students had to reach a certain rating in order to be allowed to sit the exam (how you used it). So, how does that work? Can the students take the same capquiz multiple times?

    Or, Is there a way to not limit the number of questions in a quiz and require them continue solving problems until they reach a required rating?

    Thanks,
  • George Schaathun
    Sat, 23 Nov 2019, 8:02 PM
    Right, I think there are two separate issues here. One is the design of the CAPQuiz activity, and the other is the role of the CAPQuiz activity in the module design. CAPQuiz is not designed as an assessment exercise, merely as a learning exercise.

    1. In the module design, it is quite common in Norwegian HE to have compulsory assignments, which do not count towards the exam, but which are prerequisites to sit the exam. This is how my colleagues and I intended CAPQuiz to be used. Through the CAPQuiz activity the student earns a number of stars. We can require that the student achieve a certain number of stars as their compulsory assignment, which has to be achieved before being allowed to sit the exam. We have not considered if the number of stars could be factored into the final grade in a sensible way, and the plugin should mature beyond the current experimental stage before such use is considered in practice.

    2. In the activity design, there is no limit on the number of questions. Obviously only a finite number of questions is added to the activity at any time. Because each question has to be assigned a rating, CAPQuiz will not automatically draw random questions from the question bank. It is possible to bulk add questions with the same starting rating, but I cannot remember how easy this is in the UI. There is no limit to the number of questions the students get, they will keep getting questions as long as they want to, usually repeating questions if they do not rapidly progress.

    Does this answer you question?

    Repeating questions is not a concern with parameterised questions in random variants as supported by STACK and Calculated. Other static question types will of course require an enormous number of questions to make repetitions few and far between. This will work out differently in different subjects.

    Now, it should be noted that there is a performance limit in the moodle question bank. This is no problem for small quizzes or quizzes using light-weight question types, but with CAPQuiz we have been expecting quizzes with a large number of STACK questions in many deployed variants, and the combination of a computationally costly question type (STACK) and the large number of questions (40+ in 100+ variants), this broke down. We had one very successful student assignment without STACK questions, but I had to cancel the second one where STACK was used because of performance issues. Hopefully we can resolve this issue over the next six months.
  • Andy Gokce
    Sun, 24 Nov 2019, 10:40 AM
    Thanks so much for the detailed answer. This is an awesome plugin. I guess I should install and test it but I am a little confused. I guess I need to be more specific:

    Let’s say a students takes a capquiz activity which has 10 problems to solve and finishes the test but doesn’t reach the required level (the rating or the stars) to pass (like the rating you require them to be able sit an exam). What happens? Do they take it again until they pass?

    And if there are a large number of questions in a capquiz activity (say 100), can the student leave the test when they are tired and continue where they left off the next day?

    Thanks a lot
  • George Schaathun
    Sun, 24 Nov 2019, 2:48 PM
    A CAPQuiz activity never ends, and the student can never start over from scratch (unless the teacher manually resets their rating). Instead the student can always get another question and lose or gain rating points. And yes, if the students leave, they would return where they left off.

    When I use it as a compulsory assignment, the requirement is that the student achieve three stars at any point before the deadline. While skilled students can do this in less than an hour, the assumption is that most students will have to try, fail, return to the book, ask a friend, and get back to CAPQuiz to continue another evening. But this obviously depends a lot on the topic and the question design.
Please login to post comments