Just a curiosity question. Remember when in class groupwork the professor would divide people up into groups of a certain number (n
)?
Some of my professors would take a list of n
people one wants to work with and n
people one doesn't want to work with from each student, and then magically turn out groups of n
where students would be matched up with people they prefer and avoid working with people they don't prefer.
To me this algorithm sounds a lot like a Knapsack problem, but I thought I would ask around about what your approach to this sort of problem would be.
EDIT: Found an ACM article describing something exactly like my question. Read the second paragraph for deja vu.