Equality, Diversity, Optimisation and Team Selection

Equality, Diversity, Optimisation and Team Selection

In many situations, the team leader should select the team members from a pool of available resources. One example is grouping the students in a class. Suppose you have 25 students in a class. You can see them in the following graph (they all look like the same but for sure they have different characteristics):

No alt text provided for this image

We need to create 4 groups of them. As a matter of fact, each student has a unique set of skills namely 'Reporting', 'Coding', 'Visualisation' and 'Presentation'. The following graph visualises the overall attributes of each student (each attribute is a number between 0 and 1, the bigger this number is, the student is stronger in this attribute):

No alt text provided for this image

Now, the question is how to create 4 teams in a way that the equality and diversity are ensured?

DISCLAIMER: there might be much better ways of doing that. This is just a math example.

The max difference between the total attribute a in any two groups should be minimized. (So the strength of each group in attribute a is close to the other groups).

No alt text provided for this image

Here is the Pyomo code :

No alt text provided for this image

Once the model is solved we can see the selected members of each group:

No alt text provided for this image

The benefit of this approach is that it is not required to have equal number of members in each group. You can observe that group 3 has 7 members while ther rest of them have 6 members each.

We can also change the number of groups:

No alt text provided for this image

Data used in this post (randomly generated):

        1	         2 	        3	        4
0	0.751955	0.419353	0.203902	0.842483
1	0.163134	0.415190	0.394875	0.641152
2	0.698225	0.456870	0.122004	0.565717
3	0.156324	0.472411	0.213337	0.982291
4	0.548871	0.517587	0.530757	0.030891
5	0.923582	0.049472	0.384209	0.228463
6	0.296625	0.852300	0.512238	0.009674
7	0.658101	0.745380	0.516441	0.848679
8	0.171064	0.089288	0.380144	0.575669
9	0.903400	0.342490	0.763324	0.114152
10	0.109931	0.015624	0.640811	0.803484
11	0.052484	0.996933	0.026773	0.565981
12	0.402230	0.853718	0.452101	0.151685
13	0.672450	0.336654	0.179285	0.093849
14	0.063392	0.855043	0.898708	0.051562
15	0.641516	0.191191	0.112330	0.380972
16	0.907040	0.711960	0.980342	0.730286
17	0.102096	0.623138	0.053394	0.737842
18	0.269196	0.430087	0.697759	0.538268
19	0.925812	0.237167	0.535753	0.846335
20	0.578743	0.578680	0.398400	0.664735
21	0.150844	0.495148	0.444864	0.911912
22	0.295748	0.228432	0.866932	0.860444
23	0.166527	0.375518	0.926567	0.051751
24	0.211493	0.614118	0.431299	0.901210        

1- Subscribe to the?Newsletter to have access to the upcomming posts: ?https://lnkd.in/eYHerqY8

2- Folow?#pyomo4all?and?Alireza Soroudi?for more!

3- Also you may mention those who might be interested in these topics in the comment section.

4- Please share this article to let everyone interested in business analytics.

Anusuya Ghosh

Industry Research | OR | MATHEMATICS | DS | Product Management | IITKharagpur | IITBombay

1 年

What is the name of the coding file please? I could not find out.

回复
Rakesh Verma

Professor at Indian Institute of Management, Mumbai

2 年

I think this. Very interesting

回复

要查看或添加评论,请登录

Alireza Soroudi, PhD的更多文章

社区洞察

其他会员也浏览了