Repeatedly assigning people to subgroups so everyone knows each other

110 Views Asked by At

Say a teacher divides his students into subgroups once every class. The profile of subgroup sizes is the same everyday (e.g. with 28 students it might be always 8 groups of 3 and 1 group of 4). How can the teacher specify the subgroup assignments for a classes so that in the shortest number of classes, everyone has been in a subgroup with everyone else? Exhaustive search seems intractable, so what would be good optimization approach?

Edit: To clarify, I'm assuming the subgroup structure is given and fixed. The optimization is just the assignment of students to groups across the days.

1

There are 1 best solutions below

2
On

The shortest number of classes is 1, with a single subgroup that contains all the students.

The second shortest number of classes is 3, which is achieved with one small subgroup and a large one. For example, ABCDEFG/HI, ABCDEHI/FG, ABCFGHI/DE.

The proof that 2 classes is impossible: let X, Y be the two largest subgroups from the first day. Each member of X must meet each member of Y on the second day, but to do this would create a subgroup larger than either X or Y.