The public school system in the city where I live has high demand and low supply. You apply to some schools in order of preference and there is a scoring system to give priority to all applicants based on some factors (having another child in the same school, home proximity, job proximity, social factors, etc.).

For every promotion in every school there is a variable number of available spots.

Despite the scoring system, many applicants end up with the same score and to resolve this, there is a special lottery draw every year. This only draw resolves the order of access of all ties in all classes of all schools in the city.


We are currently waiting for the lottery draw and we already know how many applicants and vacants there are for our chosen school and class.

Some vacants will be filled by applicants with more score than us and many applicants won't get access since they have les points than us. We are currently 8 applicants tied for 7 remaining vacants.

According to them, the lottery procedure is the following:

9 withdrawals are made from a bag with the numbers 0 to 9, reintroducing the ball after each extraction. From here, we obtain the first, second, to ninth digits of a number between 000,000,000 and 999,999,999. This number is divided by the total number of requests and obtain the quotient and the remainder. The result of the draw will be the next integer of the remainder of the division. This number will be the starting position from which to order the applicants draw number.

This lottery will be public and live streamed. We have already been given a "random" draw number, no one can tell me how it was generated. I have also asked what is the total number of requests since I believe the draw number range should be the same as the total request number. Their response is they won't know the total number of requests until the day of the lottery draw.

Here is the list of tied applicants and draw numbers assigned. Applicants with more score have already been removed (as well as the vacants they will fill). Also removed from the list all applicants with less score, since there are no vacants for them. I have ordered them by draw number:

applicant_id draw_number
We 163
n_2 190
n_3 412
n_4 595
n_5 691
n_6 738
n_7 907
n_8 1157

Apparently, we are in good shape since with 7 positions and 8 applicants there are just 27 unfavorable results for us (results from 164 to 190). However, if the total number of requests would be lower than the draw number range, it could mean some applicants would already be accepted BEFORE this lottery draw.

For instance, if the total number of requests would be 900, n_7 would be accepted since the remainder of the division can't be higher than the divisor (total number of requests) making >907 impossible to reach no matter the result of the lottery. Otherwise, a total number of requests higher than 1157 would benefit us, since all higher results would put us first in the list.

I'm not at all an expert but I find it odd they put so much effort in doing this lottery draw so transparent, live streamed, etc. and they don't say anything about the draw number assignation or knowing the total number of requests. Of course, I could be missing something.

  • $\begingroup$ What sort of allocation system is being used? Is this a system where people give multiple preferences for particular schools? $\endgroup$ Commented May 25, 2023 at 15:08
  • $\begingroup$ You can pick up to 3 ordered choices but realistically, your first choice is the only one that matters. Just in case there are still vacants after resolving all "first choicers" they move on to resolve second and third choices. Someone with a lower score in first choice gets preference over another with higher score but second choice. $\endgroup$
    – Albert
    Commented May 25, 2023 at 15:17

1 Answer 1


The lottery aspect seems fair. It is not transparent how the draw_numbers are generated, but if they are random then it doesn't matter whether or not the final draw for the starting position seems more or less beneficial for different people. The draw_numbers being random make that anybody could have had this beneficial position.

However, the matching system does not need to be fair. These problems have to balance several aspects and none of them are fully optimised in any algorithm (see for an example the stable marriage problem an for a more in-depth treatment this article: "The Performance of School Assignment Mechanisms in Practice"). The systems have aspect like

  • stability

    Whether or not there can be people that would like to change after the matching is over (people that somehow end up with each others preference)

  • strategy proof

    Whether or not the applicants can fill in a different order of preferences than their true preferences in order to gain some advantage in the matching. E.g. if your second choice is a school with a lot of places free then you might not choose this (and choose a school with few places) if this can increase your chances for your first option.

  • efficiency

    Do most applicants reach their most preferred places? (This is a vague expression, and can be quantified in different ways. But the point is whether you get in average students in the best place.)

  • fairness/envy-free

    Do students get in a place with equal probability? Is the placement of students fair.

Example of envy: Your lottery system seems almost like this. Without the rule,

Someone with a lower score in first choice gets preference over another with higher score but second choice.

, then there is a single tie-breaking lottery for all students. Say if the starting position is 191, then it seems like you are through because draw_number 190 has bad luck and you with draw_number 163 are in. However, it can be the case that the applicant with draw number 162 is missing out on their first, second, third, etc choice, because those schools are already full. Then, if their last choice is your first choice school, then they get in instead of you. Is it fair that somebody with a school on their last place of choice kicks out somebody with that school on the first place of their list of choices?

Example of strategy behaviour:

With the rule,

Someone with a lower score in first choice gets preference over another with higher score but second choice.

it means that the system creates an incentive for strategic behaviour. People might fear to give their first choice if this is a popular school with few places, because it might disadvantage them in their second choice.

  • $\begingroup$ It is unclear why they perform the complicated draw with 9 times a digit. Possibly they want to minimise any bias from the draw. But it is a silly method. With 8 applicants only the last three digits are relevant for determining the remainder. The bias is only slightly reduced. $\endgroup$ Commented May 25, 2023 at 14:16
  • $\begingroup$ Also, if my idea about the lottery is correct, then the lottery is not fair, because the probabilities for a specific remainder/rank are not equal distributed (although very close as the number is large). But with the initial draw numbers, if those are fair, then this doesn't matter. $\endgroup$ Commented May 25, 2023 at 14:21
  • $\begingroup$ There aren't just 8 applicants, there are actually thousands of applicants. I edited the question and added some context. I didn't want to add it since it makes my question too long I see now it needed more information. $\endgroup$
    – Albert
    Commented May 25, 2023 at 14:57
  • $\begingroup$ @Albert I don't follow. You wrote "there are 7 available positions and we are just 8 applicants". $\endgroup$ Commented May 25, 2023 at 15:01
  • $\begingroup$ Yes sorry, I think is clear now $\endgroup$
    – Albert
    Commented May 25, 2023 at 15:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.