Placement Settings
Placement Settings
Before generating placements, you can configure settings that control how the algorithm distributes students across classrooms. These settings affect classroom size limits, boy/girl balance targets, and how larger feeder-school groups are spread across classrooms.
Default Students per Classroom
This setting defines the maximum number of students that can be placed in a classroom unless that classroom has its own custom capacity. The algorithm will not exceed the active limit when distributing students. If you leave the field blank, classrooms without custom capacity do not use a workspace default cap.
- The default value is calculated automatically based on your total student count and number of classrooms, ensuring an even split.
- You can increase the cap to give the algorithm more room to optimize for other factors like preferences and scale balance.
- You can leave the field blank when you only want per-classroom custom capacities, or when classroom size should not block generation.
- Setting the cap too low may prevent the algorithm from finding a valid placement, especially when combined with required placements.
- Individual classrooms can override this workspace default. See Setting Classroom Capacity for per-classroom overrides.
Boy/Girl Difference Allowed per Classroom
This setting controls the maximum allowed difference between the number of boys and girls in each classroom. A lower number means stricter boy/girl balance enforcement.
- Example: A value of 3 means no classroom can have more than 3 more boys than girls, or vice versa.
- The lowest supported value is 1, and there is no fixed upper cap. Use the smallest gap that still reflects your school's real roster mix.
- Setting the limit too low with an uneven overall gender ratio can cause generation to fail. If this happens, try increasing the limit.
Split Larger School Cohorts Across Classrooms
This setting is on by default. It helps prevent a large group of students from the same previous school from landing in one classroom, while still trying to keep very small school cohorts together when that is practical.
- Cohorts of four or fewer students are treated as a small group, so the algorithm prefers to keep them together when other constraints allow it.
- Larger cohorts are balanced more gently across classrooms to avoid outcomes like one class receiving most of a feeder school.
- Turn this off only when preserving school cohorts matters more than spreading them across the new class list.
How Settings Affect the Algorithm
The algorithm uses your settings as boundaries during generation:
- Default students per classroom acts as a hard cap — no classroom will have more students than its active limit. When the default is blank, only classrooms with custom capacity have a size cap.
- Boy/girl difference allowed per classroom is enforced as a constraint — the algorithm rejects arrangements that violate the limit.
- Split larger school cohorts is a balancing preference rather than a hard constraint. It gives the algorithm a stronger reason to avoid putting a large same-school group in one classroom while leaving room for required placements and other rules.
- Together with restrictions and required placements, these settings define the feasible solution space. The tighter your constraints, the fewer valid arrangements exist.
Recommended Defaults vs. Custom Tuning
For most schools, the default settings work well out of the box. Here are guidelines for when to adjust:
- Start with defaults. Run a generation first with the default values and review the results. Only adjust if the output doesn't meet your needs.
- Increase the classroom size cap if you have many required placements or restrictions that limit flexibility.
- Relax the boy/girl limit if your student population has a significant gender imbalance — requiring strict balance with uneven numbers is often impossible.
- Keep school cohort splitting on unless your staff has a specific reason to preserve larger feeder-school groups.
- Tighten settings gradually. If you want stricter constraints, adjust one setting at a time and re-generate to see the effect.