What is the best way to identify highly performing groups?


I am currently working on a project that involves sorting people into groups based on their ability to work well with others.

While it is a bit of a simplification, I have a problem that is essentially as follows:

Let us say we have 100 people. These people have to complete a task, and will subsequently receive a score depending on how well they performed. In order to complete the task, the participants are allowed to form groups of up to 5. When they collectively complete the task, they will also receive a single score. How can I identify (1) individuals that have a high capacity for teamwork; and (2) specific groups that are extremely good at performing said task (by receiving high scores)?

I’ve given it some thought but not many good answers come to mind. For example, I could make all the possible combinations of groups of 2, 3, 4, and 5 and try to identify such high performance groups. However, the number of combinations is astronomical and so I would like to determine a more elegant solution.

Thank you for your help. Please ask me any questions, I will be happy to answer if I have missed anything.