I am very new to LP, Goal Seek, Decision Models etc and I have a multiple-objective decision making problem that may or may not require a mix of techniques although I am trying to solve it purely using LP + Excel Solver. I do not know where to begin.

I cross-posted it in math

Approach Ideas

Would it be easiest to sum each category first and then use that data? e.g. 22 females, 23 males, 20 Chinese, 13 British etc.

Is it correct to say the objective functions are to maximise the diversity of members within groups and minimise the average differences between groups? And the constraints are 1,2,3,4 below?


Students are often allocated into syndicate groups to work together on various projects, which are subsequently assessed as a group work. The groups formed should maximise the diversity of members within groups and minimise the average differences between groups.


The data provided contains the records for 45 students with the relevant characteristics for each one of them given through the five columns: Student ID (S), Nationality (N), Cultural Background (C), Gender (G) and Quantitative Background (Q).

enter image description here


Using any resources available to you, prepare a model that will be able to perform automatic allocation of students into groups while satisfying as much as possible these ideal targets:

  1. Groups should be of the same size if possible. The ideal size is 5 members per group.
  2. Groups should be balanced with respect to gender (G).
  3. Groups should be balanced with respect to quantitative background (Q).
  4. Groups should be balanced with respect to ethnic background in a very specific way. According to the most up-to-date research on harnessing cultural diversity:
  • $\begingroup$ Would you care to let me know what the problem with the question so I can learn and edit my question before hiding and downvoting please. Maybe you've heard of the word "community"? Thanks. $\endgroup$ – Edison Jun 11 at 7:33
  • $\begingroup$ I didn't downvote you and I'm fairly new to SE OR, so maybe I'm wrong. But I think it's because you copy/pasted an assignement that you have. Your question also needs more focus, you have 6 different questions. Try doing more research and then edit your post. $\endgroup$ – Kh4zit Jun 11 at 8:32
  • $\begingroup$ Thanks. The tutorial contains much much more than what I pasted. If we can't paste then we cannot accurately explain the technical details of the problem. I already posted how I thought I should go about it. I also said I don't know where to begin so I don't really have much choice but to post a chunk of the tutorial question. $\endgroup$ – Edison Jun 11 at 8:46
  • $\begingroup$ Cross-posted: math.stackexchange.com/questions/4169612/… $\endgroup$ – RobPratt Jun 11 at 10:51
  • $\begingroup$ @RobPratt So which is best? $\endgroup$ – Edison Jun 11 at 11:08

This is not a direct answer, but I can point you to two papers that are closely related to what you are working on.

[1] Rubin, Paul A. and Lihui Bai (2015). “Forming Competitively Balanced Teams”. IIE Transactions 47, 6, pp. 620-633. DOI: 10.1080/0740817X.2014.953643. eprint: http://dx.doi.org/10.1080/0740817X.2014.953643.

[2] Daniel Solow, Jie Ning, Jieying Zhu & Yishen Cai (2020). Improved heuristics for finding balanced teams, IISE Transactions 52, 12, pp. 1312-1323. DOI: 10.1080/24725854.2020.1732506.

  • $\begingroup$ Thanks. Already seen that one. As well as Goal Programming Approach to the Team Formation Problem, Design of Balanced MBA Student Teams, Building Teams of Experts using Integer Linear Programming and a few others. That's why I'm on StackExchange. I'll probably just delete the question because it looks like it requires too much work for it to be solved on a Stack site. Might have better success posting the question on a paid homework site where I can see how it's done in detail. Cheers. $\endgroup$ – Edison Jun 12 at 2:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.