=============================== A S S I G N M E N T S C O R E =============================== The scoring procedure determines the quality score for an assignment. We specify an assignment by the related event, room, start time, and duration. If the event gets no room, then set the score to the event's no-room penalty. If the event gets a room: Set the score to the weighted sum of preferences. If the assigned room has a "room value," then add this value. If the event was previously in a different room, then add the room-change penalty. If the event previously had a different start time, then add the time-change penalty. If the event previously had a different duration, then add the duration-change penalty. If the score is smaller than the minimal score value, then set it to the minimal value. If the score is greater than 1.0, then set it to 1.0. Multiply the score by the event weight, and add it to the overall schedule score.