Fair Allocation

Activities ::: mod_ratingallocate
Maintained by WWU logo smallLearnweb – University of Münster
This Module lets you add an activity to courses, in which users can rate choices. You may then distribute the users fairly to the choices by maximizing overall 'happiness' in terms of ratings. This may be an alternative to the choice activity or first-come-first-served.
Latest release:
607 sites
318 downloads
52 fans
Current versions available: 10

In the area of schools or universities, there are often allocation problems, where a group of pupils or students needs to be assigned to a bunch of resources. These resources may be study groups, thesis topics, or seminar slots.
Therefore often techniques as first come first serve are used, which is not seldom perceived as unfair by the students.

To reach a high acceptance for the distribution technique is module offers the students the possibility to rate the possible choices according to their preferences. For this purpose the module supports multiple different rating strategies (e.g. Yes-No, Order, Points, Likert-scale).
After a predefined time period for the users to hand in their preferences, the distribution can be started. Here, an algorithm solves the distribution problem by maximizing the overall satisfaction.

Additional features:
  • Choices have maximum sizes
  • After the automated distribution, the allocations can be changed manually (including students with no rating)
  • The students can be notified about their allocation via e-mail


No support in the comments section on this page

Please note that we don't provide any support for this plugin in the comments section on this page anymore.

We appreciate your commendation and reviews for this plugin in the comments. For bug reports and support requests create a ticket in the bug tracker which is linked below.

Thanks for your cooperation.

Screenshots

Screenshot #0
Screenshot #1

Contributors

WWU logo small
Learnweb – University of Münster (Lead maintainer)
Max Schulze: Initial committer
Alexander Bias: Feature contributor
Claus A. Us: Former Maintainer
Tobias Reischmann: Former Maintainer
Ulm University: Contributer
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Tobias Reischmann
    дүш. 18 сент. 2017, 22:43
    Hi Gabriel,
    it seems that for some reason your database does not allow to create entries within mdl_groups table without a description value defined. The install.xml of moodle within lib/db/install.xml states that the description field is allowed to be null. Additionally, there are multiple other locations in moodle code, where a group without a description is created.

    If you want a hotfix for your problem, you can add this line to your code:

    diff --git a/locallib.php b/locallib.php
    index 0323c21..cdbbf94 100644
    --- a/locallib.php
    +++ b/locallib.php
    @@ -624,6 +624,7 @@ class ratingallocate {
    $data->courseid = $this->course->id;
    $data->name = $choices[$choice['key']]->title;
    $data->idnumber = $groupid;
    + $data->description = '';
    $createdid = groups_create_group($data);
    groups_assign_grouping($groupingid, $createdid);
    $choiceids[$groupid]['groupid'] = $createdid;

    However, I do not consider this as a problem of this plugin.
    Grettings
    Tobias
  • Gabriel JALAM
    дүш. 18 сент. 2017, 23:10
    Thank you very much. The proposed code works perfectly.
  • Patrick Schaerer
    пәнҗ. 26 окт. 2017, 14:58
    Did someone try this with a lot of (280) Students?
    I think about using this to allocate Students in a project week.
    280 Students
    about 20 courses
    Students could give first, second and third priority course.
    Is this plugin working for such a huge ammount of data?
    Grettings
    Patrick
  • Tobias Reischmann
    җом. 27 окт. 2017, 17:32
    Hello Patrick,
    our biggest usage scenario in a course is currently 30 choices and 868 users. With these amounts of data, the algorithm of the plugin is working fine. In newer versions of the plugin, the manual allocation form is also usable for huge usage scenarios and gives a good overview of the ratings and the allocations. In older version, this was not recommendable, so make sure to use at least v3.3-r1.
    Greetings
    Tobias
  • Robert Brenstein
    дүш. 7 май 2018, 21:58
    This module sounds really great and we would love to use it for seat allocations. However, while doing the assignment we need to give higher priority to students from higher semesters not just the preferences provided by students. As far as I can see, this module does not support it. It would have to be an additional optional rating scale, I imagine.
  • Tobias Reischmann
    сиш. 8 май 2018, 22:41
    Hey Robert,
    you are welcome to file ideas for future development in the issues of the github repository. However, your suggestion is not that easily implementable. Thus, I think we will not be able to develop it in near future.
    Kind regards,
    Tobias
  • stefan weber
    җом. 29 мар. 2019, 21:30
    This is one of the most well thought-out and developed Moodle plugins I've ever seen. Great work!
  • Andreas Schenkel
    шим. 10 авг. 2019, 00:24
    AG-Wahlen mit z.B. 20 - 30 Angebotenen AGs und einer Verteilung auf 1000 Schülern die 1. Wahl, 2. Wahl und 3. Wahl angeben. Wäre das mit dem Plugin umsetzbar?
  • Tobias Reischmann
    сиш. 20 авг. 2019, 20:00
    Hallo Andreas,
    grundsätzlich ist das möglich. 20-30 Angebote mit 1000 Schülern lastet das Plugin auf jeden Fall gut aus. Wir haben das Plugin aber in Münster mit 850 Studierenden und 30 Wahlmöglichkeiten auch schon erfolgreich getestet. Die Ansichten zum Verteilungsüberblick und zur manuellen Änderung von einzelnen Zuordnungen sind inzwischen auch soweit, dass sie kein Problem in der Handhabung mit so vielen Schülern darstellen.
    Ich empfehle dir vor der entgültigen Zuteilung einen Blick in das Moodle Wiki: https://docs.moodle.org/31/en/Ratingallocate#Alter_Allocation (Momentan ist warum auch immer nur das Wiki zu Version 3.1 auf dem aktuellsten Stand, ich pflege das gleich in den anderen Versionen nach).
    Ich hoffe das Plugin unterstützt dich gut bei der Verteilung!
    VG
    Tobias
  • Michael Zwahlen
    сиш. 31 мар. 2020, 18:33
    Hallo Community
    Kann ich dieses Plugin verwenden, um eine Faire Aus-Wahl zu treffen? Meine Gruppe soll aus 12 Themen-Vorschlägen eine Wahl von 3 Themen treffen. Diese 3 Themen sollen für alle akzeptabel sein.
    Worauf muss ich bei der Ersterstellung achten? Gibt es für meinen Bedarf bessere Plugins/Services?
    Besten Dank für eure Hilfe.
    LG
    Michael
  • Miguël Dhyne
    җом. 15 июль 2022, 14:17
    Great plugin ! It's very useful, thank you !
  • Hakan Çiğci
    чәр. 31 авг. 2022, 04:58
    Thanks for this great plugin
  • Michael Zwahlen
    якш. 5 фев. 2023, 19:34
    Hi
    I' m searching a Plugin for fair voting. But not like here to send users to groups, but tto find one fair choice for all.
    Also known as ranked Choice. More infos about this system:
    Www.rankedvote.co

    Is there a plugin for moodle to do this?
  • Etienne Février
    сиш. 27 фев. 2024, 00:19
    Good afternoon,
    My colleagues and I are trying to use the Fair Allocation module at Toulouse University but when we install the module we receive the following message:

    Exception : syntax error, unexpected '=>' (T_DOUBLE_ARROW), expecting ')'
    line 682 of /mod/ratingallocate/locallib.php: ParseError thrown
    line 144 of /course/modedit.php: call to require_once()

    We currently have the 3.11 version of Moodle but will transition to version 4 next year.
    Do you know how we could move around this problem and use Fair Allocation in our university?
    Thank you very much in advance.
  • Alexander Noack
    дүш. 15 июль 2024, 19:18
    Good afternoon,

    We have been using this plug-in at our university for 4 semesters and are very happy that it exists. It saves us a lot of manual work. The only thing we are still missing would be to take the distribution by the respective departments into account. In the "Department" field of every Moodle user's profile, the student's department is always shown. In cross-semester and cross-departmental courses, we want to achieve a fair distribution of students in groups that do not all come from just one department. In other words, each group should include students from at least two different subject areas (departments). Does anyone have any ideas on how this could be implemented and would it perhaps even be possible to retrofit such functionality in the plug-in?

    I am looking forward to your feedback.

    Best regards
    Alex
1 2 3
Please login to post comments