Group elements in differently sized groups so that their means are as close as possible

Viewed 57

I am not very experienced in real world applications of known algorithms, nor do I know many named problems in computer science. However, a problem was presented to me and I'm not quite sure where to research to find a solution.

Problem is formally presented as: There are N single-valued elements and they are normally distributed. There are K groups with each group having its own number of elements it can contain Ki. Group sizes Ki do not necessarily have to be different from one another (they can all be the same). Add each element Ni to a group in such a way that:

  1. Primarily, mean of each group mean is as close to each other as possible
  2. Secondarily, the standard deviation of each group is a close as possible

N, Ni, K, Ki are variables that are given at the start and are constant throughout a single problem. Mean similarity has a precedence over standard deviation, but one group having exclusively mean values and the other group having extreme/outlier values should be avoided. Number of elements is usually around 100 or in order of magnitude, so more complex but precise algorithms are preferred. This problem is translated so some details could be lost to translation so do not refrain from asking for clarification.

My main issue is that I do not know what areas to research; do I research evolutionary algorithms (Multicriteria optimization), linear programming (K+1 equalities and inequalities), dynamic programming (Partitioning into subgroups), statistics (Sampling methods)? Does this problem already have very well known solution?

Example of this problem would be: A class has 30 students with each student having a grade from 0 to 100. Group each student in six groups of five students so that each group has equal means and variance. Obviously, it's impossible to get equal means and variance between group, but the point is to get close the possible. Another example would be 3 groups of 15, 10 and 5 students respectively.

Thanks in advance.

0 Answers
Related