jennpeare / cs-capstone

CS Capstone
0 stars 0 forks source link

lecture capacity #3

Closed jennpeare closed 10 years ago

jennpeare commented 10 years ago

[look I'm learning!]

what we are currently doing in assignRoom() is grabbing the class size of each section (from lecture & recitation hashmap) and trying to match it with the room capacity to arrive at an optimal assignment. this is fine for recitation, but may be problematic/not exactly what we want for lectures.

for example, cs111 has 4 lectures, meaning each lecture is comprised of 1/4 of all recitations. sortCourses() looks at the different elements of each section (i.e. the hash) and determines the 4 unique lectures, but the "lucky" section that gets filtered into the lecture hashmap still only has like, 12 people, and not the 150+ people I imagine would be in an actual lecture. right now, if my merge works correctly, the four lectures get assigned to an ARC classroom and not like, Hill 116.

need to think through this more to make sure it works, but it's late and i'm just leaving a note here for now...we might be able to fix this if, when we're cascading down the professors, we aggregate the sections' class sizes for that unique lecture. that way, the lecture in CourseCondensed will actually have like, 150 ppl and will get assigned to a proper lecture hall.

jennpeare commented 10 years ago

Ran into a problem: turns out, the instructors array thing is not uniform across all courses, meaning we can't actually assume they cascade down all the time. For example:

    DATA STRUCTURES 112 01 LEC T 0320 35 (SESH)
    DATA STRUCTURES 112 01 LEC TH 0320 35 (SESH)

    DATA STRUCTURES 112 05 LEC TH 0810 35 (ANDREW)
    DATA STRUCTURES 112 05 LEC T 0810 35 (ANDREW)

These are the two lectures for CS112, but if I print out their class sizes and try to aggregate:

    DATA STRUCTURES 35 (SESH)
    DATA STRUCTURES 70
    DATA STRUCTURES 105
    DATA STRUCTURES 140
    DATA STRUCTURES 35 (ANDREW)
    DATA STRUCTURES 35 (ANDREW)
    DATA STRUCTURES 70

For some reason, they added Andrew's name to the second to last section, even though we're already assuming he's teaching that section because of the instructor array in the preceding section.

This doesn't affect the LEC and RECIT separation because the hash will still be the same, but I am having trouble with the lecture capacity if this is not uniform. I thought to just fill in the instructors array like you suggested, but then I ran into the zero-sized array problem (see my other ISSUE).

jennpeare commented 10 years ago

STUFF HAPPENED and apparently problem fixed itself...

though this inconsistency still exists, so we might want to look into this eventually