Assignment Of Trainees To Software Project Requirements A Stable Matching Based Approach
1. Accepted Manuscript
Assignment of Trainees to Software Project Requirements: A Stable Matching
Based Approach
Mangesh Gharote, Rahul Pati, Sachin Lodha, Rajiv Raman
PII: S0360-8352(15)00231-4
DOI: http://dx.doi.org/10.1016/j.cie.2015.05.017
Reference: CAIE 4051
To appear in: Computers & Industrial Engineering
Received Date: 19 November 2014
Revised Date: 30 April 2015
Accepted Date: 12 May 2015
Please cite this article as: Gharote, M., Pati, R., Lodha, S., Raman, R., Assignment of Trainees to Software Project
Requirements: A Stable Matching Based Approach, Computers & Industrial Engineering (2015), doi: http://
dx.doi.org/10.1016/j.cie.2015.05.017
This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers
we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and
review of the resulting proof before it is published in its final form. Please note that during the production process
errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.
2. 1
Mangesh Gharote,
SJMSOM, IIT Bombay
Mumbai India 400076
Rahul Patil
SJMSOM IIT Bombay
Mumbai, India, 400076
Sachin Lodha,
TCS, Pune, India
Rajiv Raman
IIIT Delhi, India
Abstract
Greedy and optimization approaches used for assigning trainees to software project
requirements can give rise to unstable pairs. The presence of unstable pairs can
unnecessarily hamper both trainee and project satisfaction. In this paper, we use the theory
of stable matching to remove the unstable pairs. We propose an efficient method to predict
preferences for both trainees and projects using the utility theory. Our computational
experiments suggest that the stable matching approach performs better with average trainee
and project requirement satisfaction in terms of the preference ranks of allocated choices.
Compared to cost based optimization model, the proposed approach obtains significantly
better trainee project match at the expense of small additional allocation cost.
Keywords: workforce allocation; stable matching; information technology; service
management.
Assignment of Trainees to Software Project Requirements: A Stable Matching Based
Approach
3. 2
1. Introduction
Many Information Technology (IT) service firms hire a large pool of students (often in
thousands) each year (Srivastava et al., 2015). These fresh hires go through a training program to
hone their skills in specific areas. In parallel, human resource (HR) manager collects software
project requirements such as programming skills required, project type, location, etc. from
project managers. At the end of the training program, trainees submit their preferences for
project locations and interests in specific project requirements. Each trainee has a unique
perspective towards these project requirements. For example, some trainees may be interested in
the project requirements with niche technology, while some trainees may prefer the project
requirements having work locations near their hometowns.
Using this data gathered from trainees and project managers, HR managers have to
allocate trainees to software project requirements. In the past, HR managers have mainly used
greedy approaches for this allocation based on their knowledge, perceptions and experience
(Acuna et al., 2006). In the greedy approach followed by one firm, trainees are sorted as per their
training performance and then each trainee is assigned to his/her location preference based
project requirement where there is a matching skill requirement. If no match is found, a trainee is
allocated arbitrarily to a software project requirement (Gharote et al., 2012). The greedy
approach, if done manually is time consuming and may not give the best solution. Recently,
some firms have started using an allocation cost based linear programming (LP) assignment
model (Gharote et al., 2012). Re-training and re-location costs are used to represent the
allocation costs by HR managers as follows: When trainees are not allocated to their first
location choice, the firm pays traineeās logistics and accommodation cost. In addition, if traineeās
technological skill does not match with assigned project requirement, the firm incurs re-training
expenses depending upon the training duration. Their model attempts to minimize the overall
cost of the assignment.
Both these approaches have several drawbacks. An effective allocation would involve a
consideration of the individual preferences of trainees as well as software project requirement in
addition to the costs. In the greedy approach, trainees at the lower order are arbitrarily allocated
to any project requirement when their preferences do not match. Though the cost based LP
assignment model is an improvement over the greedy heuristic, it has some limitations. For
example, importance is given to allocation cost minimization rather than trainees preferences. If
such trainees do not get their choice, they may become unhappy and leave the organization. This
is a major issue for IT service firms since they face high attrition rates (Infosys, 2014). Thus,
both the greedy and assignment models do not consider trainees preferences in an effective way.
Similarly, a software projectās quality or due date may suffer considerably due to an
inappropriate allocation of an employee to a project requirement (Otero et al., 2009). In the end,
a firm may end up incurring higher total costs.
4. 3
We also believe that both these approaches lead to unstable pairs (Firat et al., 2012). In
other words, we can find a trainee-project requirement pair (e, r), where a trainee e prefers to a
requirement r over the assigned requirement, and a project requirement r finds a trainee e as a
better fit compared to existing assigned trainee, the pair (e, r) is called a unstable pair.
Intuitively, as the number of such unstable pairs increases, unhappiness among the trainees and
the project managers also increases. Clearly, the minimization of such unstable pairs can
improve satisfaction for at least one member, without affecting the satisfaction of the other
member, since both can get a better or at least the same assignment.
The generation of trainees and project requirements preferences needed for stable
matching is difficult task in case of a large trainee ā project allocation problem. It is time
consuming and monotonous for a trainee to rank a large number of project requirements.
Similarly, the project managerās valuable time is wasted to assign preferences to a large number
of trainees after reviewing their resumes for each project requirement. This is one of the major
hurdles in the trainee allocation problem. Thus, there is a need for an efficient preference
generating method.
In this paper, we have attempted to address the above mentioned issues faced by an IT
firm. Our research contributes to the literature in the following ways. We show the existence of
the unstable pairs in the allocation made by the greedy and the cost based models. We discuss
how the removal of an unstable pair can increase satisfaction for at least one member, without
affecting other memberās satisfaction. We then develop a stable matching based optimization
model to efficiently remove the unstable pairs. The measurement of satisfaction in terms of
preference ranking for both trainees and project managers is an initial step in the stable matching
model. We conduct a survey to understand the factors that can influence trainee and software
project utilities. Further we suggest a general methodology to efficiently predict preferences for
both trainees and project requirements. We compare greedy, the cost based and stable matching
based models, and show the importance of using stable matching in assigning trainees to project
requirements.
The paper is organized as follows. In section 2, we provide a short survey of the
assignment problems and discuss in detail the relevant literature on workforce allocation in IT
services. In section 3, we introduce the notion of unstable pairs, develop the basic and
generalized stable matching based model. In section 4, we discuss the results, various
performance measures and the test cases used for comparison of different allocation approaches.
The paper ends with the relevant applications and conclusion section.
2. Literature Review
The research on the assignment problem has a long history. Dantzig (1951) showed that the
linear programming relaxation of the classical assignment problem provided an integer solution,
5. 4
because the constraint matrix was totally unimodular. Kuhn (1955) proposed an algorithm for
solving the assignment problem and Munkres (1957) further showed that this algorithm ran in a
polynomial time. The papers by Burkard (1999), ncan (2007) and Pentico (2007) provide a
detail survey of the different variations of the assignment problem. The literature on the
applications of the assignment model is vast. The assignment formulation has been used to solve
airline fleet assignment (Sherali et al., 2006), rental fleet assignment (Yang et al., 2008), sailor
assignment (Lennon, 2012), buyer-supplier assignment (Jafar, 2015), manufacturing shop floor
allocation (Saadat et al., 2013) problems. Table 1 reports the applications of the assignment
model in human resource allocation contexts. Considering our research problem, we discuss in
detail the workforce assignment problems in the software industry, in the next subsection.
-------------------------
Insert Table 1 here
--------------------------
2.1 Workforce Assignment Problems
One of the critical factors in the success of software projects in an IT service industry is human
resource allocation decision (Acuna and Juristo, 2004). As a result, various approaches have
been used for solving different workforce allocation problems in the software industry. Otero et
al. (2009) used linear programming to address the issue of assigning resources to tasks in order
to reduce the training time. The authors also pointed out the need to expand their approach to
include multiple attributes and workplace preferences in the allocation model. Barreto et al.
(2008) proposed different utility functions for managers, such as most qualified team, cheapest
team, faster team and so on. They used constraint satisfaction and the branch-and-bound
technique for solving the allocation problem. Gonsalves and Itoh (2010) proposed a skill-to-time
based allocation model and formulated the problem as a multi-objective particle swarm
optimization algorithm. Naveh et al. (2007) considered multiple attributes for allocating IT
professionals and modeled the problem as a constraint programming problem where constraints
are applied at both the individual and the team levels. Saaty et al. (2007) stated that there were
both tangible and intangible factors that should be considered for workforce allocation, to meet
organizational goals. They proposed a methodology that combines the analytical hierarchy
process and linear programming to assign the best combination of people to jobs. Dixit et al.
(2009) developed a decision support tool for the optimal assignment of practitioners to projects.
They formulated the problem as an integer programming problem with objective of minimizing
the unallocated employees and increasing revenue from new project opportunities. Duggan et al.
(2004) formulated the task allocation problem as a multi-objective optimization problem using
an evolutionary algorithm. The various objectives considered were the minimization of software
defects and project completion time and cost, maximization of worker utilization, and customer
satisfaction. Acuna and Juristo (2004) proposed an allocation model that takes into consideration
a personās capabilities and the capabilities demanded by the role for software projects allocation.
6. 5
Gharote et al. (2012) studied the assignment of trainees to software projects. They found that the
cost-based model minimized the logistics and retraining costs compared to the greedy approach.
One of the important aspects in workforce to software project allocation problem is the
consideration of employeeās and project managerās preferences. This consideration of bilateral
preferences has not been studied in the above stated research. In addition, the allocation methods
used in the prior research could give rise to the unstable matching, as discussed in the
introduction section. The stable matching approach can not only take into consideration the
preferences but also can provide a stable solution. So, we report the stable matching literature in
the next sub section.
2.2 Workforce Allocation using Stable Matching
The stable matching problem was first introduced by Gale and Shapley (1962) in the seminal
paper on āCollege Admissions and the Stability of Marriageā. The concept of stable matching is
discussed in detail in the Section 1 and Section 3. It has been used extensively in solving real
life assignment problems. Some of the popular applications of stable marriage problem are:
medical students matching to hospitals (Gusfield and Irving, 1989), student-project allocation
problem (Abraham et al., 2003), school admission problem (Abdulkadiroglu et al., 2005), multi-
skill workforce scheduling problem (Firat et al., 2012) and roommates assignment problem
(Irving, 1985). Iwama and Miyazaki (2008) have provided a brief survey on the stable marriage
problem and its variants.
Motivated by this, our study examines the use of stable matching concepts in the trainees to
software project requirements assignment problem. Our goal is to demonstrate that the removal
of unstable pairs would result in better trainee and project manager satisfaction.
3. Allocation Using Stable Matching
In this section, we first discuss the basic traineeās allocation problem, where the number of
trainees and project requirements are equal. We discuss two approaches suggested in the
literature for solving this stable matching problem. Then, we discuss the generalized traineeās
assignment model where the number of trainees and project requirements are not necessarily
equal.
An important input for solving the traineeās stable matching problem is the generation of
trainee and project requirement preferences. We discuss in detail the preference generation
methods for both the trainees and the project requirements.
3.1 Basic Trainees Allocation Problem
As discussed in the introduction section in detail, there are Ne trainees and Nr project
requirements. Each trainee possesses a set of attributes and preferences for the project
7. 6
requirements. Project requirementās specifications and preferences for trainees are also specified
by the concerned project manager. We assume that each trainee (project requirement) ranks each
project requirement (trainee) in a strict order. In the basic model, we assume Nr = Ne. The
decision problem is to allocate trainees to software project requirements by considering their
preferences to obtain an optimal stable allocation.
Two methods have been suggested in the literature to solve the stable matching problem.
We will describe them in the next two sections.
3.1.1 Deferred Acceptance Algorithm for Basic Trainee Allocation Problem
The first method to solve the matching problem is the Gale and Shapleyās (1962) deferred
acceptance algorithm. Paraphrased to our context, the algorithm is described as follows, which
proceeds in rounds. In each round, the trainees make a proposal for the most preferred project
requirement on their list that has not yet rejected them. Each project requirement retains the most
preferred trainee it has received (if any), and rejects the rest. In the next round, all trainees who
were rejected in the previous round make a fresh proposal to the highest project requirement that
has not yet rejected them. The project requirement repeats its rejection and deferred acceptance,
and the algorithm continues. Gale and Shapley (1962) proved that this algorithm converges in
O(n2
) time, where n is the number of trainees/project requirements, and that the matching
returned is stable. The matching produced by this algorithm is a biased optimal stable matching
solution.
3.1.2 SM based Linear Programming formulation for Basic Trainee Allocation Problem
Vande Vateās (1989) linear programming formulation is the other method to produce an optimal
stable matching solution. This linear program has a surprising feature. While the constraint
matrix itself is not totally unimodular, the polytope defined by the LP still has only integral
coordinates. We can use this result to our advantage and solve this LP. This property makes it
possible to use our model to solve large realistic problems. Here, we describe a mathematical
formulation, that can be used to find a stable solution for the trainee allocation problem.
Notation and meaning:
Ne Number of trainees, e = 1, ā¦, Ne
Nr Number of project requirements, r = 1, ā¦, Nr
Project requirement r prefers trainee i over trainee e
Trainee e prefers project r over project j
= 1, if trainee e is matched to project requirement r, otherwise 0.
Problem Formulation:
(1)
8. 7
(2)
(3)
(4)
The first two constraints are the assignment constraints, to ensure that each trainee is matched
with exactly one project requirement and each project requirement is assigned to exactly one
trainee. The third constraint is the stability constraint. Suppose, , it means trainee
e is matched to the project requirement j which it prefers less than the requirement r. The stable
pair can only happen when , because then the requirement r is matched to the
trainee i, which it prefers more over the trainee e. Thus, constraint 3 ensures non-formation of
unstable pairs.
3.2 Generalized Trainees Allocation Problem
In practice, the project requirements and the number of trainees need not be equal (Nr ā Ne).
When we solve this stable matching problem, min (Ne, Nr) of trainees and project requirements
would get an assignment while the remaining |Nr ā Ne| trainees or project requirements would be
left unassigned. We show, how one can solve this generalized version using linear programming
and deferred acceptance algorithm.
The linear programming version of the optimal SM problem with unequal sizes can be
solved by introducing |Nr ā Ne| number of dummy trainees (if Nr > Ne) or |Nr ā Ne| dummy
project requirements (if Ne > Nr). We discuss in detail the solution methodology for a case, where
Nr > Ne.
Let, = |Nr ā Ne|+ Ne represent the total number of trainees including the dummy trainees.
i) Real Ne trainees provide their strict preference list as done in the basic model.
ii) Preference list for the remaining (Nr ā Ne) dummy trainees is generated using random
permutation within the range (0, Nr).
iii) Generate the preference lists for Nr project requirements as follows:
a. Each project requirement provides the strict preference order for the real Ne trainees
as done in the basic model.
b. The dummy trainees are ranked below the real trainees (i.e. least preferred), in the
preference list of the project requirements. The rank is generated using random
permutation within the range (Ne, ). These large numbers act as a penalty which
ensures that a project requirement always prefers a real trainee over a dummy trainee
in a stable solution.
iv) Now, because Nr = , we can solve the generalized version using the linear programming
based SM model (equations 1 to 4), with the number of trainees = and the number of
9. 8
project requirements = Nr and the new preference lists. The SM linear program would
always assign dummy trainees to the project requirements which are least preferred,
irrespective of the preference order for the project requirements in the dummy traineeās
preference list.
To solve this unbalanced trainees assigned problem, McVitie and Wilson (1970)
proposed an algorithm similar to and based on Gale and Shapley algorithm for stable marriage
problem with unequal sets. In this modified algorithm, the stopping criteria is changed. For
example, if Nr > Ne, the algorithm is stopped, when |Nr ā Ne| number of project requirements
have been rejected by all the trainees and/or when none of the trainees opted for some of the
project requirements. McVitie and Wilson (1970) further showed that, if a person is left
unmarried in a stable marriage solution, then the person would be unmarried in all the stable
solutions. Paraphrased to our context, if a project requirement is unassigned then it would be left
unassigned in the all the stable solutions. We discuss the experimentation results for the
generalized model in details in the Section 4.8.
3.3 An efficient preference prediction method
Analogous to the stable marriage problem, to solve the stable trainee allocation problem, we
require preferences of each trainee (project requirement) towards project requirements (trainees).
An approach used in the stable matching literature is to collect the actual ranked preferences of
trainees (project requirements) towards all the project requirements (trainees). As discussed
earlier, this process is time consuming and hence an efficient approach that can quickly predict
preferences is required.
There is large body of literature on how an individual develops preference towards a
particular task. Different models have been proposed for predicting job preferences (Moss,
1993). Otero et al. (2009) suggested further enhancements are needed in allocation models to
include other attributes. Thus, in this sub section, we study how trainees consider different
attributes while deciding preferences for software project requirements using a multi attribute
theory.
3.3.1 Utility function for predicting trainee preferences for software project requirements
We conducted interviews and survey to understand the factors governing the choices made by
the population of graduate trainees while selecting the software project requirements. The
participants were the final year students who were in the process of joining IT industry. The
participants were asked to rank four project requirement attributes on a scale ranging from (1 to
4), where (1) means most important factor and (4) means least important. The attributes
considered were: project requirement location, technological skill desired by project requirement,
type of project requirement and project domain. We received 180 responses for the survey. The
survey results are shown in the Figure 1.
10. 9
-------------------------
Insert Figure 1 here
-------------------------
The method followed to understand the reasons behind the preferences selection was using
unstructured interviews. Some important interview findings are reported below.
Domain: IT services companies have software projects in various domains such as banking and
finance, insurance, supply chain management, retail etc. We found that as a new hire, a trainee
has strong inclination towards projects in some domains and incompatibility with other domains.
For example, students from production and industrial engineering backgrounds preferred retail,
manufacturing, and supply chain management domains while students from a biology
background were more interested in life sciences projects.
Type of Project Requirement: Software projects can be categorized as development,
maintenance, testing, integration, research etc. The survey pointed out that trainees take into
consideration the type of project requirement during the ranking exercise because it can affect
their career goals.
Location: Some trainees gave project requirement location high importance during the ranking
exercise. For example, some trainees due to family constraints preferred a location closer to
home. Also, some trainees preferred locations that could give an onsite opportunity.
Technological Skill: A trainee in IT service firm needs to use different technologies such as
C++, Java, and .NET depending on software project requirement. It was found that trainees have
different preferences for the technologies depending upon their career plans and interests.
We computed the frequency distribution of 24 preference patterns. We report below two
preference patterns:
a) The preference pattern: Technology Type of project Location Domain was chosen
by 12.4% of the population. Here, the symbol represents preference of an attribute
over other.
b) The preference pattern: Location Type of Project Technology Domain was chosen
by 5.9% of the population,
23 out of 24 preference patterns received the first choice from at least one participant. Clearly,
each trainee had a unique perspective towards location, project type, skill and domain. As a
result, the weights given by trainees to the mentioned factors varied considerably.
Agrawal (2013) suggested an additive utility model to estimate the preferences of medical
students to the hospital using observed matches. He also found that students evaluated hospital
on different factors such as location before deciding their preferences.
An additive utility model is intuitive and easy to implement. Hence, following discrete
choice literature; we suggest an additive utility model to predict both trainee and project
preferences as follows (Huber, 1974; Olinick, 1978). A firm can gather the importance given to
11. 10
location, technology, domain and type of project factors by each trainee. A simple scale from
zero to 100 can be used to measure the importance of each factor for a trainee where a score of
zero represents the least important while a score of 100 means most important. Similarly, for
each factor, a set of choices are available. A trainee can give liking score to each of these
choices. Using these numbers, we can use utility function (equation 5) to compute the utility
derived by a trainee i after being assigned to a particular project requirement j. Thus, the
advantage of this approach is that a trainee has to provide data for only small number of options
in contrast to assigning preferences for a large number of project requirements. Let,
Represents total utility derived by ith
trainee if assigned to the jth
project requirement
E Represents utility for Trainees
K Set of factors considered by trainee for ranking
Captures the importance of ith
trainee for kth
factor
Represents the liking score given by ith
trainee for kth
factor of jth
project
Then the additive utility model that captures total utility of a trainee i from project requirement j
can be expressed as follows.
(5)
The preferences of a trainee for project requirements can be estimated by sorting the total
utilities in a descending order assuming that trainees are rational decision makers who want to
maximize their utility. The project requirement that provides the highest utility to a trainee
becomes the first preference. Table 2 shows how to predict a traineeās preferences for three
projects requirements. The trainee has given importance scores of 70 and 30 for location and
technology factors. Within location, the trainee has given scores of 80 and 20 for Mumbai and
Chennai locations. Also, the trainee has given scores of 80 and 20 for Java and C++
technologies. We have computed the utilities of project requirements for the trainee and ranked
them as shown in the Table 2. In our utility model, we have not considered the random error as it
cannot be measured during the prediction and hence the hypothesized preferences can be
different from the true preferences. In the Section 4.7, we investigate how the error made by the
proposed model in estimating true preferences influences the performance measures.
----------------------------------
Insert Table 2 here
----------------------------------
3.3.2 Utility function for generating project requirement preferences
Project managers are usually more concerned with factors such as technological and
communication skills, relevant domain exposure and so on. It is practically impossible for the
project manager to rank a large number of trainees for each project requirement by reviewing
their resumes. Firms recently have been using several technologies such as natural language
processing, text-mining, data-mining and information retrieval to process and analyze resumes
12. 11
(Srivastava et al., 2015). Otero et al. (2009) suggested a general method to compute the fit of a
resource (trainee) to task (software requirement). Using these tools, companies are able to collect
data regarding candidateās competency in a particular technical skill, or soft skill such as
communication or learning abilities from extra-curricular activities, awards and certification
(Acuna and Juristo, 2004; Srivastava et al., 2015). As a result, when a project manager provides
relative importance to factors related to a project requirement, we can make inferences about the
utility offered by a trainee for a project requirement. The equation (6) states the utility function
that can be used to predict preferences of project managers for trainees. Let,
Represents the utility derived by jth
project requirement, if ith
trainee is assigned,
P Represents the utility for project requirement
Represents the weights assigned by the jth
project manager for ākā factors,
Represents the competency score of ith
trainee on kth
factor for jth
project requirement,
(6)
4. Results and Discussions
In this section we discuss performance measures used for comparing various trainees allocation
methods. We also report the procedure followed for generating test cases and then discuss the
results in detail.
4.1 Performance measures
Each allocation method generates a solution that describes the assignment of a trainee to a
project requirement. Using the traineeās preference list, we determine the preference rank given
by a trainee to the allocated project requirement. A similar exercise can be done for the project
requirements. We used these ranks as a satisfaction index for trainee and project requirements.
Lower the preference rank of the project assigned to the trainee, higher will be the trainee
satisfaction. Similar, lower the preference rank of a trainee assigned to a project requirement,
the higher will be the project managerās satisfaction. Next, we compute the average and
standard deviation of the satisfaction index in terms of preference ranks of the choices assigned
to both trainees and project requirements. For example, if all trainees get their first preferred
project requirement, then the average trainee satisfaction is one. The smaller average preference
rank indicates better satisfaction with an average of one being the best case. The other measure
of performance used in this paper is the allocation cost.
4.2 Test cases
We collected data from the IT service company about the trainee allocation details and
consolidated software project requirements. From the data, the preference distribution of trainees
and projects are derived. We used this information to generate various test cases that provided
13. 12
the preference list of both trainees and projects. Our reported results are based on the average
values obtained after solving five instances for each problem size having an equal number of
trainees and project requirements. We solve this problem using IBM ILOG CPLEX 12.5 (ILOG).
All the experiments were performed on an Intel core i5-2520M 2.50 GHz processor with 4GB
RAM.
4.3 Finding unstable pairs
We have hypothesized that the allocation solution produced by the greedy heuristics and
assignment cost optimization could produce unstable pairs. We illustrate the presence of the
unstable pairs with an example of two trainees and two project requirements. Table 3 shows the
preference details of two trainees along with their attributes such as location preferences, skill in
which he/she has been trained, and training score. Table 4 shows the solutions obtained by using
greedy and stable matching methods. Let ei represent the ith
trainee and rj denote the jth
project
requirement. It can be seen that e1 is matched to r1 using greedy approach, which gives
preference to the trainee having higher training score. The trainee e1 has got the location choice
but the skill does not match. In addition, for trainee e2, there is mismatch in both location as well
as skill. Hence both the trainees are dissatisfied with the current allocation. Trainee e2 prefers
requirement r1 than its current match and for project requirement r1 trainee e2 is a better fit than
its current assigned trainee. Hence the pair (e2, r1) forms an unstable pair.
----------------------------------------
Insert Table 3 here
----------------------------------------
----------------------------------------
Insert Table 4 here
----------------------------------------
The unstable pairs result in unnecessary dissatisfaction for trainees and project requirements.
Table 5 shows that many unstable pairs exist in both the greedy and the cost optimization
approaches in six test cases of different sizes. It suggests that the greedy approach results in a
lower number of unstable pairs compared to the cost based LP model. Optimal stable matching
approach on the other hand gives zero unstable pairs.
----------------------------------------
Insert Table 5 here
----------------------------------------
4.4 SM performs better with average allocated preference ranks
Figure 2 shows the preference ranks of the project requirements allocated to trainees using the
assignment cost optimization and stable matching models for a single test case containing20
trainees and 20 project requirements. As shown in the Figure 2, the trainee e1 is assigned to the
first choice project requirement using the cost optimization method and the second choice project
requirement using the stable matching method. The stable matching allocated very less number
14. 13
of extremely non-preferred project requirements to trainees compared to the cost optimization
model. Hence, a small number of trainees will be strongly dissatisfied after the allocation using
the stable matching compared to the cost based assignment model. Similarly, Figure 3 shows the
preference ranks of the trainees assigned to the project requirements. The stable matching
assigned a large number of best-fit trainees to the project requirements compared to the cost
optimization model. As a result, the variance of the dissatisfaction will be lower with the stable
matching approach as it reduces the variation in the allocated preference ranks.
----------------------------------------
Insert Figure 2 here
----------------------------------------
----------------------------------------
Insert Figure 3 here
----------------------------------------
Figure 4 shows the average and standard deviation for preference ranks of the project
requirements allocated to trainees for the same test case discussed previously. The average
preference ranks are better (lower) with stable matching as compared to other approaches. Also,
the standard deviation is lower with the stable matching. This again supports that the stable
matching reduces very bad assignments and extreme dissatisfaction situations. As a result, both
the trainees and project managers would be happy with the stable matching assignment
compared to the other assignments.
----------------------------------------
Insert Figure 4 here
----------------------------------------
Figure 5 shows the average trainee satisfaction in terms of the average preference rank of the
project requirement assigned to the trainee. Clearly, stable matching solution produces better
preference matching compared to other methods. The gap between average preference rank of
the project requirements assigned to trainees using SM and other methods, increases with the
problem size. This suggests that stable matching performance improves with the problem size.
Also, compared to assignment cost optimization, the greedy approach performs better because
the number of unstable pairs is more with assignment cost optimization compared to greedy
approach as shown in Table 5. This supports our claim that as the number of unstable pair
increases, the satisfaction decreases.
----------------------------------------
Insert Figure 5 here
----------------------------------------
Fig. 6 shows the average project satisfaction in terms of preference rank of the trainee assigned
to the project requirement using greedy approach, LP cost optimization and optimal stable
matching. The average project satisfaction is better with optimal stable matching compared to
15. 14
other approaches. For larger size problems greedy turns out to be doing poor compared to LP
cost optimization.
----------------------------------------
Insert Figure 6 here
----------------------------------------
The allocation method can be termed as unbiased towards either trainees or project requirements
if the difference between the average trainee satisfaction and average project satisfaction is
negligible. Fig. is a plot showing this difference for various test cases. With optimal stable
matching the average difference between trainee and project satisfaction is less, compared to
other allocation approaches and thus helps the firm in making unbiased assignments. reedy
heuristics performs better than assignment cost optimization model on this dimension. It is
because assignment cost optimization model favors projects and hence its average project
satisfaction is better than the greedy heuristic. In contrast, the average trainee satisfaction is poor
with assignment cost model compared to greedy heuristics and hence the gap is larger between
greedy and assignment allocations.
----------------------------------------
Insert Figure 7 here
----------------------------------------
4.5 Comparison using different stable matching algorithms
We have implemented the Deferred Acceptance (DA) algorithm for both male (trainee) and
female (project requirement) proposal and compared their results with optimal stable matching
solution obtained from the mathematical program. As expected, average trainee satisfaction is
higher with DA ā trainee proposal algorithm than DA - project proposal algorithm. Similarly,
average project satisfaction is higher with DA project proposal algorithm. The difference
between the average trainee and project satisfaction with the deferred acceptance algorithm in all
the test cases is less than 1%. It can be explained using Lennon (2012) finding that greater
similarity between applicant (trainee) and employer (project) could result in fewer stable
matching solutions. Our preference order generated after using the utility function takes into
consideration the similarities between the trainees and project requirements. This has resulted in
fewer stable solutions. The time taken to run the DA algorithm is few seconds while stable
matching based mathematical model takes a couple of hours to solve large sized problems, as
seen in the Table 6. Trainee allocation decisions are tactical decisions that have considerable
influence on satisfaction and costs. Therefore, it is worthwhile for firms to spend several hours to
obtain the optimal solution. However, when solution time is a severe constraint, firms can use
deferred acceptance algorithm to quickly generate very good solutions.
----------------------------------------
Insert Table 6 here
----------------------------------------
16. 15
4.6 SM solution at a lower increase in cost of allocation
The cost structure used by us is from the Gharote et al. (2013) paper. We compute the cost
incurred by the stable matching solution using the same cost model which is reported in the Fig.
8.The assignment model has the lower cost of allocation compared to the stable matching
because assignment model uses only the allocation cost objective. Now, the interesting question
that arises is: What is the worth of the additional cost paid by the stable matching compared to
the assignment cost model in terms of the improved satisfaction?
----------------------------------------
Insert Figure 8 here
----------------------------------------
We compute the percentage change in cost of allocation and percentage change in average
trainee and project satisfaction. Fig. 9 shows the comparison between the percentage change in
the allocation cost and percentage change in satisfaction when firm uses stable matching instead
of cost based assignment model. It can be seen that the percentage increase in average trainee
and project satisfaction is significantly higher compared to the percent increase in the additional
allocation cost incurred. Thus, by using the stable matching, we can achieve better trainee as
well as project satisfaction at the expense of the modest increase in cost of allocation while doing
larger assignments.
----------------------------------------
Insert Figure 9 here
----------------------------------------
4.7 Sensitivity Analysis
In earlier section (3.3), we discussed a method to efficiently predict the preferences. Naturally,
the predicted preferences are prone to the forecasting errors, as we do not know the random error
component during the prediction exercise. When the predicted preferences are used as input in
the allocation exercise, the allocation performance can suffer due to these errors. We conducted
experiments to check the influence of this unobserved error and thus the mismatch between
predicted and true trainee preferences on the performance measures. To do so, we first use the
utility model from Section 3.4 to predict traineesā preference lists. We then assume that we know
the random unobserved error and compute the true utility value by adding the random
unobserved component as follows:
Where, represents the random error and Ī³ = percent deviation from the
predicted utility . is true utility value of trainee i towards project requirement j. By using the
predicted trainee preference list, the trainees are optimally assigned to project requirements using
17. 16
the stable matching model. But, to compute the performance measures, the true preference rank
of the project requirement (trainee) allocated to a trainee (project requirement) is used.
Table 7 shows the percentage change in average trainee dissatisfaction (in terms of true
preference ranks of the projects allocated to trainees) with the percentage change in deviation of
the true utility from the predicted utility for a problem size of 100 trainees and 100 project
requirements. The step size of 3% deviation from the predicted utility was used in the sensitivity
analysis. The performance measures are computed using the average of 25 test runs for each step
size. The percentage change in the performance measures is computed by comparing these
performance numbers against the base case where both the predicted and true preferences are the
same (100% prediction situation). The result suggests that the trainees dissatisfaction increases
as the deviation of trainees predicted preferences from their true preferences increases. The
percent change in allocation cost is negligible with the deviation. Thus, the proposed preference
prediction model results in efficiency albeit at the expense of moderate increase in the
dissatisfaction for the trainees.
----------------------------------------
Insert Table 7 here
----------------------------------------
4.8 Results for unbalanced Trainees Matching problem (Ne ā Nr)
We demonstrate the experimentation results where the number of project requirements are more
than the number of trainees (Nr > Ne). Table 8 shows the experimentation results for unbalanced
matching problem. The results show that with more project requirement options, the average
preference matching is better for trainees. Also the average preference matching is better for the
project requirements that got matched. In addition, the trainee allocation cost is reduced. The
percentage change is computed based on the balanced matching problem (Ne = Nr) results.
Similar results are applicable to case where Nr < Ne.
----------------------------------------
Insert Table 8 here
----------------------------------------
5. Relevant Applications and Summary
Jafar (2015) proposed a bilateral buyer-supplier matching problem, where both the parties (buyer
and supplier) evaluate each other on several qualitative (such as mutual trust, openness,
commitment, shared risk and so on) and quantitative criteriaās (price, capacity, quality, delivery
and so on). Based on these perceived criteria, attractiveness scores are computed for both the
parties. This buyer-supplier matching problem can be modelled and solved using, our stable
matching approach as follows. We can generate the complete preference list for each buyer and
18. 17
supplier using the perceived attractiveness scores. One can then solve this matching problem
either by using the buyer or supplier deferred acceptance algorithm or by using optimal stable
matching linear programming approach. A similar approach is suggested by Jung and Kwon
(2011) in retailer and supplier stable matching problem, where preferences are derived only
using the order quantities.
Second relevant application is sailor employer assignment problem (Lenon, 2012) where the
preference lists are provided by the involved parties. It can also be solved using our approach.
As the number of sailors and employers are in thousands, our preferences generation
methodology could be quite useful to create preferences, rather than manual preference ordering.
5.1 Summary
In this paper, we have proposed a stable matching approach for trainee allocation. We have
developed a methodology to predict preferences for both trainees and project requirements using
the utility theory. We created test cases by collecting and analyzing the relevant data that
represented the characteristics of the problem. Our computational experiments offered several
insights for managers. The allocation made by the greedy heuristics and the assignment cost
optimization produces unstable pairs that unnecessarily decrease satisfaction for both trainees
and project requirements. Stable matching performs better with average trainee and project
preference satisfaction compared to other allocation methods because it reduces these unstable
pairs. However, it increases the logistics and retraining costs. Yet the percentage increase in
average trainee satisfaction and average project satisfaction is significantly higher compared to
the percent increase in the additional cost incurred when stable matching is used instead of the
cost based LP assignment model. Managers may consider achieving a higher satisfaction index
by paying a little extra in terms of the initial assignment costs.
This work could be extended by testing the proposed method in other contexts such as buyer-
supplier generalized assignment problem and sailor assignment problem as discussed in the
previous section.
References
Abboud, N., Inuiguchi, M., Sakawa, M., & Uemura, Y. (1998). Manpower allocation using genetic
annealing. European Journal of Operational Research, 111(2), 405-420.
Abdulkadiroglu, A., Pathak, A., & Roth, A. (2005). The New York city high school match. American
Economic Review, Papers and Proceedings, 95, 364 - 367.
Abraham, D., R, I., & Manlove, D. (2003). The student-project allocation problem. Proceedings of
ISAAC, Lecture Notes in Computer Science, 2906, 474 - 484.
19. 18
Acuna, S., & Juristo, N. (2004). Assigning people to roles in software projects. Software: Practice
and Experience, 34(7), 675-696.
Acuna, T., Juristo, N., & Moreno, M. (2006). Emphasizing human capabilities in software
development. IEEE Software, 23(2), 94-101.
Agrawal, N. (2013). Essays in empirical matching. Doctoral Dissertation. Harvard University.
Barreto, A., Barros, M., & Werner, C. (2008). Staffing a software project: A constraint satisfaction
and optimization-based approach. Computers & Operations Research, 35(10), 3073-3089.
Burkard, R. E., and E. Cela. 1999. Linear Assignment Problems and Extensions. In Handbook of
Combinatorial Optimization, edited by D.-Z. Du and P. M. Pardalos, 75ā149. USA: Springer.
Costa Filho, C. F. F., Rocha, D. A. R., Costa, M. G. F., & de Albuquerque Pereira, W. C. (2012).
Using Constraint Satisfaction Problem approach to solve human resource allocation problems in
cooperative health services. Expert Systems with Applications, 39(1), 385-394.
Dantzig, G. B. (1951). Application of the simplex method to a transportation problem. Activity
analysis of production and allocation, In Proceedings Conference on Linear Programming, 13, 359-
373.
Dixit, K., Gupta, P., Kambhatla, N., Lotlikar, R., Majumdar, D., Parija, G. (2009). Effective decision
support for workforce deployment service systems. IEEE International Conference on Services
Computing. 104-111.
Duggan, J., Byrne, J., & Lyons, G. (2004). A task allocation optimizer for software construction.
IEEE Software, 21(3), 76-82.
Filho, C., Fernandes , C., Rocha, D. A. R., Costa, M. G. F., & de Albuquerque Pereira, W. C. (2012).
Using Constraint Satisfaction Problem approach to solve human resource allocation problems in
cooperative health services. Expert Systems with Applications, 39(1), 385-394.
Firat, M., Hurkens, C., & Laugier, A. (2012). Stability in multi-skill workforce assignments of
technicians. Annals of Operations Research, DOI 10.1007/s10479-012-1224-0.
Gale, D., & Shapley, L. S. (1962). College Admissions and the Stability of Marriage. American
Mathematical Monthly, 69, 9-14.
Gharote, M., Patil, R., & Lodha, S. (2012). Trainees assignment problem in Information Technology
(IT) service organizations. In International Conference on Applied Operational Research, Lecture
Notes in Management Science. 4, 46-53.
Gonsalves, T., & Itoh, K. (2010). Multi-Objective optimization for software development projects. In
International MultiConference of Engineers and Computer Scientists.1. Hong Kong: ISBN.
20. 19
Gusfield, D., & Irving, R. (1989). The Stable Marriage Problem: Structure and Algorithms. Boston,
MA: MIT Press.
Huber, G. P. (1974). Multi-attribute utility models: A review of field and field-like studies.
Management Science, 20(10), 1393-1402.
Irving, W. (1985). An efficient algorithm for the "stable roommates" problem. Journal of Algorithms,
6(4), 577 - 595.
Iwama K., M. S. (2008). A survey of the Stable Marriage problem and its variants. International
Conference on Informatics Education and Research for Knowledge-Circulating Society. 131-136.
Jafar, R. (2015). A two-way approach to supply chain partner selection. International Journal
of Production Research DOI:10.1080/00207543.2014.1003663
Jung, T., and Kwon, C. (2011). Retailer-supplier matching: an application of the deferred
acceptance algorithm. International Journal of Services Operations and Informatics, 6(3),
248-258.
Kuhn, H. W. (1955). The Hungarian method for the assignment problem. Naval research logistics
quarterly, 2(1ā2), 83-97.
LeBlanc, L., Randels Jr, D., & Swann, T. (2000). Heery International's spreadsheet optimization
model for assigning managers to construction projects. Interfaces, 30(6), 95-106.
Lennon, C. (2012). Stable Matchings with Additional Objectives. Unpublished manuscript.
http://www.dcs.gla.ac.uk/~pat/jchoco/gatsp/papers/Lennondrft.pdf (accessed 25 May 2012).
McVitie, D. G., & Wilson, L. B. (1970). Stable marriage assignment for unequal sets. BIT
Numerical Mathematics, 10(3), 295-309.
Meyer, D. (2009). OptAssign - A web-based tool for assigning students to groups. Computers &
Education, 53(4), 1104-1119.
Moss, M. K., & Frieze, I. H. (1993). Job preferences in the anticipatory socialization phase: A
comparison of two matching models. Journal of Vocational Behavior, 42(3), 282-297.
Munkres, J. (1957). Algorithms for the Assignment and Transportation Problems. Journal of the
Society for Industrial and Applied Mathematics 5 (1), 32ā38.
Naveh, Y., Richter, Y., Altshuler, Y., Gresh, D., & Connors, D. (2007). Workforce optimization:
Identification and assignment of professional workers using constraint programming. IBM Journal of
Research and Development, 51(3), 263-279.
Olinick, M. (1978). Chapter 8 Utility Theory. In Mathematical Models in the Social and Life
21. 20
Sciences. Addison - Wesley.
Ćncan, T. (2007). A survey of the generalized assignment problem and its applications. INFOR:
Information Systems and Operational Research, 45(3), 123-141.
Otero, L., Centeno, G., Ruiz-Torres, A., & Otero, C. (2009). A systematic approach for resource
allocation in software projects. Computers & Industrial Engineering, 56(4), 1333-1339.
Pentico, D. W. (2007). Assignment Problems: A Golden Anniversary Survey. European Journal of
Operational Research, 176 (2), 774ā793.
Saadat, M., Tan, M. C., Owliya, M., & Jules, G. (2013). Challenges and trends in the allocation of the
workforce in manufacturing shop floors. International Journal of Production Research, 51(4),
1024-1036.
Saaty, T., Peniwati, K., & Shang, J. (2007). The analytic hierarchy process and human resource
allocation Half the story. Mathematical and Computer Modelling, 46(7-8), 1041-1053.
Shaikh, M. A. (1998). A āPeak Shavingā approach to project staff reallocation. Computers and
Industrial Engineering, 35(1ā2), 129ā132.
Sherali, H. D., Bish, E. K., & Zhu, X. (2006). Airline fleet assignment concepts, models, and
algorithms. European Journal of Operational Research, 172(1), 1-30.
Srivastava R., Palshikar, G., & Pawar, S., (2015). Analytics for Improving Talent Acquisition
Processes, In Proceedings of 4th International Conference on Advanced Data Analysis, Business
Analytics and Intelligence (ICADABAI 2015) April 11-12, 2015.
Vande Vate, J. (1989). Linear Programming brings marital bliss. Operations Research Letters, 8, 147-
153.
Yang, Y., Jin, W., & Hao, X. (2008). Car rental logistics problem: A review of literature. In Service
Operations and Logistics, and Informatics, 2008. International Conference on IEEE/SOLI. 2, 2815-
2819.
Infosys (2014). Annual Report Infosys FY2013-14. http://www.infosys.com/investors/reportsfilings
(Accessed on 10-Feb-2015).
Table 1 Literature Review of Human Resource Assignment Problem.
Authors Methodology Allocation issues and goal
Abbound et al.
(1998)
Heuristics ā Genetic Annealing
Algorithm
Salesmen force distribution over branches
problem
22. 21
Shaikh (1998) Analytical Model
Project staff reallocation model to increase
probability of project finishing time
LeBlanc et al.
(2000)
Integer Programming
Managers to construction projects, maintain
workload balance
Meyer (2009) Linear Programming
Web-based tool for students to project groupās
allocation
Filho et al.
(2012)
Constraint satisfaction
technique
Human resource allocation in health units
Table 2 Illustration of trainees preference generation.
Project
Requirement
Number
Project Requirement Details
Trainees Total utility
Predicted
Preference
Rank
Technology Location
1 Java Mumbai 70 * 80 + 30 * 80 = 8000 Rank 1
2 C++ Chennai 70 * 20 + 30 * 20 = 2000 Rank 3
3 C++ Mumbai 70 * 80 + 30 * 20 = 6200 Rank 2
Table 3 Trainee and project preferences
Trainee Preferences
e1
Location Preferences [Bangalore, Delhi, Pune]
Technology [Java]
Training Score [10/10]
e2
Location Preferences [Bangalore, Pune, Delhi]
Technology [Unix/C++]
Training Score [7/10]
Project Requirements Details
r1
Location is Bangalore
Technology is Unix/C++
r2
Location is Pune
Technology is .Net
Table 4 Allocation Solution (Trainee, Requirement).
Greedy Approach Stable Matching
(e1, r1) (e1, r2)
(e2, r2) (e2, r1)
23. 22
Table 5 Number of blocking pairs.
Case No Problem Size
Number of Blocking Pairs in
Greedy Approach
Number of Blocking Pairs in
cost optimization model
1 20 39 44
2 50 84 186
3 100 362 457
4 150 884 1197
5 200 1332 1954
6 250 2230 2827
Table 6 Test cases and problem size.
Case No
Batch size
Ne = Nr
Optimal Stable Matching Run Time
Number of
Variables
Number of
Constraints
Seconds
1 20 400 440 4.84
2 50 2,500 2,600 73.42
3 100 10,000 10,200 371.9
4 150 22,500 22,800 1182.38
5 200 40,000 40,400 2863.48
6 250 62,500 63,000 5941.11
Table 7 Sensitivity analysis.
Experiment Number 1 2 3
Percentage deviation from base utility 3% 6% 9%
Percentage decrease in average trainees
satisfaction
7.3% 10.2% 10.6%
Percentage decrease in average project
satisfaction
0.6% 1.8% 1.5%
Percentage increase in Actual Allocation
Cost
0.0% 0.1% 1.3%
Table 8 Experimentation results for unbalanced matching problem.
Experimentation Number 1 2 3 4 5 6
Percentage increase in project
requirements
5% 10% 15% 20% 25% 30%
25. 24
Fig. 3 Project Requirement Preference Matching
Fig. 4 Comparison of different allocation method on average preference rank of the project
assigned to trainee.
0
5
10
15
20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Rank
Trainee
Assignment Cost Optimization Optimal Stable Matching
0.00
1.00
2.00
3.00
4.00
5.00
6.00
Greedy Approach LP Cost Optimization Optimal Stable
Matching
Average
Preference
Rank
Allocation Methods
Average preference rank of allocated Project
Standard Deviation
26. 25
Fig. 5 Comparison on Trainees Satisfaction (Average Preference Rank of the project assigned to
trainee).
Fig. 6 Comparison on Project Satisfaction (Average Preference Rank of Trainee assigned to
project).
0
10
20
30
40
50
60
0 1 2 3 4 5 6 7
Average
Preference
Rank
Test Cases
Greedy Assignment Cost Opt Optimal Stable Matching
0.00
5.00
10.00
15.00
20.00
25.00
30.00
35.00
0 1 2 3 4 5 6 7
Average
Preference
Rank
Test Cases
Greedy Assignment Cost Opt Optimal Stable Matching
27. 26
Fig. 7 Difference between the average trainee and project satisfaction.
Fig. 8 Allocation cost comparison.
-5
0
5
10
15
20
25
0 50 100 150 200 250 300
Difference
in
Average
Preference
Ranks
Test Cases
Greedy Assignment Cost Optimization
Optimal Stable Matching
0
100000
200000
300000
400000
500000
600000
1 2 3 4 5 6
Cost
(Rs)
Test Cases
Greedy Assignment Cost Opt Optimal Stable Matching
28. 27
Fig. 9 Chart shows percentage change in cost and average satisfaction.
Highlights
Trainee allocation to software projects is important from cost and satisfaction viewpoints.
A stable matching based approach is proposed to improve the allocation performance.
The proposed approach increases trainee satisfaction compared to prior approaches.
We show how to reduce the unstable assignments and its positive implications.
-30.00%
-10.00%
10.00%
30.00%
50.00%
70.00%
1 2 3 4 5 6
% Change in Cost of Allocation
% Change in Employee Satisfaction
% Change in Project Satisfaction