The Objective Function,
, embodies all the
contraints used to match students and dorm room beds. The domain is
all the students in their beds.
The details of the two types of errors: Room-student and student-consensus, are as follows:
1. ROOM-STUDENT RELATED CONSTRAINTS: For each student: | ||
NAME | DESCRIPTION | SCORE |
Bed | not in a bed | 1 * ERR_NOBED |
Gender
![]() |
male in a female room, or female in a male room | 1 * ERR_WRONG_SEX |
Smoke | non-smoker in a smoking room, or smoker in a non-smoking room; | 1 * ERR_WRONG_SMOKE |
objector in a smoking room, or objector in a smoking-either room | * SMOKE_OBJ_WEIGHT | |
Dorm Prefs![]() |
specific room/bed, building, or better bed request not granted | ![]() ![]() |
Special Living Option (SLO) | ![]() ![]() |
|
![]() |
![]() ![]() |
|
![]() |
![]() ![]() |
|
![]() |
![]() ![]() |
|
Room-type not granted | ![]() ![]() |
|
Underage | the dorm has age restrictions
![]() |
#
years under age *
ERR_UNDERAGE |
New Resident | the dorm has new restrictions
![]() |
(NEW_RESIDENCY_SEMESTERS
- student ![]() ERR_NEW_RESIDENT ![]() |
Un-requested SLO | the dorm has special living options
but the student did not request a slo
![]() ![]() |
1 *
ERR_UNREQUESTED_SLO |
Better Bed | student is not in a better bed
![]() |
student![]() ERR_BETTER_BED ![]() |
Different Hall | student is not in the first hall, as
initialized by ASSIGN.LST
![]() |
1 * ERR_DIFFERENT_HALL |
Different Bed | student is in the same first hall, but a
different bed, as initialized by ASSIGN.LST
![]() |
1 * ERR_DIFFERENT_BED |
Worse Hall | student is not in the first hall or better hall
according to their prefs, as initialized by ASSIGN.LST
![]() |
1 * ERR_WORSE_HALL |
2. STUDENT-CONSENSUS CONSTRAINTS: For each room: |
||
NAME | DESCRIPTION | SCORE |
Gender
![]() |
not completely one gender | #
students * ![]() ERR_MIXED_SEX |
Smoke
![]() |
not completely smokers or non-smokers (smokers penalized); | # smokers *
ERR_MIXED_SMOKE |
if any smoke objector is present | * SMOKE_OBJ_WEIGHT | |
Music | for each student's objection clashing with another student's preference (both penalized) | 2 * # clashes *
ERR_MIXED_MUSIC |
Study Late | not completely late studiers, or not, lateness specifiers suffer | # late studiers *
![]() ERR_MIXED_STUDY_LATE |
Age Difference | for each student in the room with a dob,
![]() |
each student's
![]() ![]() ERR_AGE_DIFF |
Group
![]() |
for each student in the room
without requested roommates![]() |
![]() ERR_GROUP_INCOMPLETE ![]() |
Suite | each adjoining room's Group, Gender, and Smoke constraints are re-evaluated upon a move for the intermediate global grade calculations | |
Partial Fill ![]() |
room is partially filled or empty, not including blocks |
![]() ERR_PARTIAL_FILL |
Triple Fill | double room is packed with three students | # students *
ERR_TRIPLE_FILL |
First Timer | room has first time residents and overriding renewals | # first-time students *
(old ![]() ![]() ERR_MIXED_FIRSTTIMER ![]() |
NOTES: