Labor Assignment Problem Considering Skills and

Labor Assignment Problem Considering Skills and
Preferences in a Cellular Manufacturing Environment
David Vandegrift
Dr. Viviana Cesaní
University of Puerto Rico Mayagüez
Department of Industrial Engineering
NSF REU Program – Summer 2010
Abstract
By accounting for employees’ preferences as well as their skill levels, an assignment problem can be
made to maximize production output as well as employee satisfaction in a cellular manufacturing
environment. Specifically, the assignment problem consists of two linear programs. The first program
assigns employees to bottleneck stations at each cell based on skill. The second program assigns the
remaining employees to the remaining assignments based on their preferences. A cellular manufacturing
environment is particularly suited to this method of assignment because of the relatively high number of
bottleneck assignments and the importance of human factors in production. This study also develops a
method of making suggestions for cross-training employees in order to improve the average skill and
preference levels of the employees in the assignment. Finally, it incorporates the two linear programs,
cross-training suggestions, and basic production scheduling into a single Microsoft Excel tool designed to
allow managers to easily optimize their employee assignments.
Contents
1. Introduction
2. Prior Work
3. Data Requirements
4. Bottleneck Skill Assignment Linear Program
5. Non-Bottleneck Preference Assignment Linear Program
6. Determining Skill/Preference Levels for Employees
7. Making Cross-Training Recommendations
8. Excel Manager’s Tool
9. GE Case Study
10. Conclusions
11. Potential for Further Research
12. Acknowledgements
13. References
1. Introduction
Labor Assignment Problem
Labor assignment is a well-studied problem in the field of linear programming. The basic precept
of the problem is: given a set of employees and a set of labor assignments, what is the best way to assign
the employees to the assignments? Although the details vary between implementations, all labor
assignment problems will consist of an objective function that determines the “best” assignment and a set
of constraints that the assignment must be subject to.
Cellular Manufacturing
Cellular manufacturing is a lean concept that breaks the traditional manufacturing environment
into a set of logical “cells” that function—more or less—independent of each other. These cells are
typically built around a product or a set of similar products. The idea is that by having a small cell
dedicated to a product, flexibility is increased because the employees of that cell are more familiar with
the product and their peers’ jobs than they would be on, for instance, an assembly line.
There are two aspects unique to cellular manufacturing that are important to the work in this
paper. The first is that the nature of cellular manufacturing lends itself to employee cross-training. That is,
employees can often be trained on multiple stations within a cell to allow for more flexibility and to
account for employee absenteeism. The second is that because each cell operates as an independent
manufacturing environment, each cell will contain a single bottleneck station. By identifying these
bottleneck stations, a savvy manager can target his or her attention where it is most needed and make
more accurate production forecasts.
Labor Assignment in a Cellular Manufacturing Environment Considering Skill and Preference
The focus of this paper is taking advantage of the nature of a cellular manufacturing environment
to form an assignment linear program that will allow for optimal rates of production while also allowing
the employees to be as satisfied as possible with their assignments.
By using information about each employee’s skill at and preference for each available
assignment, an optimal assignment will assign the most skilled employees to the most important
assignments (the bottlenecks) and will assign the remaining employees to the stations which they prefer
the most and are trained on. Because the most skilled workers are working at the bottleneck stations,
production levels will be maximized. On the remainder of stations, assuming that an employee’s low level
of skill does not create a new bottleneck, employees are made to be as satisfied as possible by solely
taking their preferences into account.
There are numerous reasons why a manufacturing plant would want to maximize the job
satisfaction of its employees. Obvious reasons include reducing employee turnover and absenteeism.
Cross-Training
This paper also presents a method by which a manager can determine the most valuable
employees and assignments to target for cross-training. This method uses the same information regarding
skill and preference as the labor assignment problem. The simple idea behind the method is that each
assignment should—if possible—have at least three employees trained on it who have a relatively high
level of preference for the assignment.
2. Prior Work
Prior work
3. Data Requirements
Environment Information
The methods in this research rely upon some basic information about the manufacturing
environment. This includes a list of the employees that are available for assignment and a list of the
assignments to which they can be assigned.
Skill Matrix
The skill matrix consists of a “skill level” between 0-10 for each employee at each assignment.
Therefore if there are 20 employees and 30 assignments, then the skill matrix would be a 20x30 matrix
containing 600 skill levels. A skill level of 0 indicates the employee is not trained at that assignment. A
skill level of 10 indicates that the employee is an expert at the assignment.
There are numerous ways to collect the data for the skill matrix. One such method would be to
conduct time studies for each employee at each station. The quickest employee at each station is given a
skill level of 10 and the other employees are given progressively lower levels.
Preference Matrix
The preference matrix has the same structure as the skill matrix. The difference is that rather than
a “skill level,” there is a “preference level” for each employee at each assignment. Again, this information
could be collected in different ways. One simple way would be to simply ask each employee to rank their
preference for each assignment. Another—more advanced—method that attempts to eliminate
subjectivity is using an AHP analysis.
Station Cycle Times by Product
The method presented in this paper also relies on the cycle times for each product at each station.
This information is used to determine the bottleneck station in each cell. The method allows for an
environment in which the bottleneck can move depending on the product, but it is easier to perform in an
environment in which the bottleneck is stationary.
4. Bottleneck Skill Assignment Linear Program
Introduction
The assignment problem that this paper is concerned with can be broken into two separate linear
programs. The first is the bottleneck skill assignment LP (BSALP) that is concerned with assigning the
most skilled employees to the most important assignments: the bottlenecks. The BSALP takes in three
inputs: the employees available to be assigned, the bottleneck assignments, and the skill matrix. The goal
of the BSALP is to assign one employee to each of the bottlenecks such that the minimum skill level
across the bottlenecks is maximized. A secondary goal is to maximize the average of the skill levels
across the bottlenecks.
Objective Function
Max(Min(S1,S2,…,SN) + 0.01*Avg(S1,S2,…,SN))
where SN is the skill level of the employee assigned to the N th bottleneck assignment
The objective function of the BSALP seeks to assign the most skilled employees to the bottleneck
assignments. The primary objective is to maximize the minimum skill level of the employees assigned to
the bottlenecks. The secondary objective is to maximize the average skill level of the employees assigned
to the bottlenecks. For instance, there may be two bottleneck assignments. The maximum of the minimum
skill level between the two might be 7. However, there might be several ways to achieve a minimum skill
level of 7 between the two assignments. One feasible solution could be two employees with skill level of
7 each. Another might be one with skill 7 and one with skill 10. Obviously the second solution is
preferable. The secondary objective is intended to choose the second solution over the first.
Variables
The BSALP makes use of several variables in its constraints. These are the variables and their definitions:
WA
A,W
Worker Assignment Matrix – The worker assignment matrix is an NAxNW matrix (where NA is
the number of bottleneck assignments and NW is the number of workers. The matrix has only binary
values where a value of 1 at (A,W) indicates Worker W is assigned to Assignment A.
PE
WA
A,W
Worker Assignment Matrix (Present Employees) – This refers to the worker assignment matrix,
but only to the columns that correspond to employees that are marked as present for the day and available
for assignment.
NP
WA
A,W
Worker Assignment Matrix (Non-Present Employees) – This refers to the worker assignment
matrix, but only to the columns that correspond to employees that are marked as absent for the day and
not available for assignment.
SM
PE
A,W
Skill Matrix (Present Employees) – This is another NAxNW matrix that contains the skill level
of each employee at each assignment. Only the columns that contain data corresponding to present and
available employees are considered.
Constraints
Binary Assignment Constraint
= 0 or 1| for W = 1,2,...,NW and A = 1,2,…,NA
WA
A,W
This constraint ensures that values in the worker assignment matrix can only be 0 (indicating not
assigned) or 1 (indicating assigned).
One Employee to Each Assignment Constraint
N
WA
A,W
W 1
 1 | for A = 1,2,…,NA and N = NW
This constraint ensures that there is exactly one employee assigned to each assignment.
At Most One Assignment to Each Employee Constraint
N
WA
PE
A,W
A1
 1 | for W = 1,2,…,NPW and N = NA
This constraint ensures that each present employee is assigned to at most one assignment, where NPW is
the number of present and available employees.
Absent Employee Constraint
N
WA
NP
A 1
A,W
 0 | for W = 1,2,…,NW and N = NAW
This constraint ensures that no employees that have been marked as absent are assigned to an assignment.
Minimum Skill Level Constraint
N
Y   (WAA,W * SM A,W ) | for A = 1,2,…,NA and N = NPW
PE
PE
W 1
This constraint sets a new variable, Y, less than or equal to the minimum skill value of any of the
employees on the assignments to which they are assigned. Y is then maximized in the objective function,
forcing Y to take the minimum skill value.
The skill value is calculated as the skill level in the skill matrix that is in the same (x,y) position as a value
of 1 in the assignment matrix. This is explained in more detail in Section 7.
5. Non-Bottleneck Preference Assignment Linear Program
Introduction
Once the appropriate employees have been assigned to the bottleneck assignments, the remainder
of the employees must be assigned to the remainder of the assignments. For instance, if there were
originally 15 employees and 20 assignments (4 of which are bottlenecks), but 2 employees were absent,
then after the bottleneck assignments there would be 9 employees available to be assigned to 16
assignments. It is often the case in a manufacturing setting that there are more assignments than there are
available employees. The constraints of the problem must be structured such that the assignment is
feasible, as opposed to in the BSALP, where there is exactly one employee for each assignment. Often,
there are existing unofficial constraints in the manufacturing environment which can easily be adapted to
a linear program.
The goal of the non-bottleneck preference assignment linear program (NPALP) is to maximize
the average preference level of the employees assigned to non-bottleneck assignments. It is a similar
linear program to the BSALP with some intuitive differences. It is worth noting that the bottleneck
assignments and the employees that were assigned to them are not to be included in this linear program.
This study makes use of integration with Microsoft Excel to perform this function automatically.
Objective Function
Max(Avg(P1,P2,…,PN))
where PN is the preference level of the Nth employee
The objective function for the NPALP is simpler than that for the BSALP. It is more important to
maximize average satisfaction in non-bottleneck assignments that it is to maximize average skill in
bottleneck assignments because the minimum skill for bottleneck assignments limits total production
whereas the minimum preference has no real significance except to one employee.
Variables
Most of the variables in the NPALP are identical to those in the BSALP. There is one exception:
PM
PE
A,W
Preference Matrix (Present Employees) – This is identical to the skills matrix in structure.
Instead of containing skill levels for each employee at each assignment, it contains preference levels.
Constraints
Binary Assignment Constraint
This constraint is identical to the one in the BSALP.
One Assignment to Each Employee Constraint
N
WA
PE
A,W
A1
 1 | for W = 1,2,…,NPW and N = NA
This constraint ensures that each employee is assigned to exactly one assignment.
Absent Employee Constraint
This constraint is identical to the one in the BSALP.
Preference Level Constraint
N
PL
W
  (WAA,W * PM A,W ) | for W = 1,2,…,NPW and N = NA
PE
PE
A1
This constraint establishes the preference value for each employee, which is to be averaged in the
objective function. The preference value is calculated as the preference level in the preference matrix that
is in the same (x,y) position as a value of 1 in the assignment matrix. This is explained in more detail in
Section 7.
Assignment Constraints
Assignment constraints depend entirely upon the manufacturing environment to which this method is
being applied. The constraints are specified by cell (each cell would have a minimum number of
employees and a maximum number of employees). The goal of these constraints is to ensure that there is
a minimum number of employees working in a cell to keep it working but not more employees than
needed. The constraints can be established to allow for flexibility with production schedules and/or
absenteeism. Depending on fluctuating demand, these constraints may not be static across production
periods.
6. Determining Skill/Preference Levels for Employees
To determine the skill or preference value of an employee after they have been assigned, one must
perform a scalar multiplication operation between the skill/preference matrix and the assignment matrix.
As an example, one skill/preference matrix and one assignment matrix are given below:
Table 7.1 – Sample Skill/Preference Matrix
A1
A2
A3
E1
V1,1
V2,1
V3,1
E2
V1,2
V2,2
V3,2
E3
V1,3
V2,3
V3,3
E4
V1,4
V2,4
V3,4
E5
V1,5
V2,5
V3,5
A4
A5
A6
V4,1
V5,1
V6,1
V4,2
V5,2
V6,2
V4,3
V5,3
V6,3
V4,4
V5,4
V6,4
V4,5
V5,5
V6,5
E4
A1,4
A2,4
A3,4
A4,4
A5,4
A6,4
E5
A1,5
A2,5
A3,5
A4,5
A5,5
A6,5
Table 7.2 – Sample Assignment Matrix
A1
A2
A3
A4
A5
A6
E1
A1,1
A2,1
A3,1
A4,1
A5,1
A6,1
E2
A1,2
A2,2
A3,2
A4,2
A5,2
A6,2
E3
A1,3
A2,3
A3,3
A4,3
A5,3
A6,3
Recall that the assignment matrix takes Boolean values. When the two matrices are scalar multiplied (see
Table 7.3), the only remaining values will be the values from Table 7.1 (if the associated value in Table
7.2 is 1) or zero (if the associated value in Table 7.2 is 0).
Table 7.3 – Matrices Being Scalar-Multiplied
A1
A2
A3
E1
A1,1*V1,1
A2,1*V2,1
A3,1*V3,1
E2
A1,2*V1,2
A2,2*V2,2
A3,2*V3,2
E3
A1,3*V1,3
A2,3*V2,3
A3,3*V3,3
E4
A1,4*V1,4
A2,4*V2,4
A3,4*V3,4
E5
A1,5*V1,5
A2,5*V2,5
A3,5*V3,5
A4
A5
A6
A4,1*V4,1
A5,1*V5,1
A6,1*V6,1
A4,2*V4,2
A5,2*V5,2
A6,2*V6,2
A4,3*V4,3
A5,3*V5,3
A6,3*V6,3
A4,4*V4,4
A5,4*V5,4
A6,4*V6,4
A4,5*V4,5
A5,5*V5,5
A6,5*V6,5
The purpose of this operation is to eliminate all values from the skill/preference matrix that are not
relevant to the assignment, leaving only values that correspond to the actual assignment.
7. Making Cross-Training Recommendations
Introduction
As mentioned previously, one of the advantages of a cellular manufacturing layout is that it can
increase flexibility by cross-training employees on several assignments within the same cell. While this
study assumes an even higher degree of flexibility by allowing employees to be assigned—and trained—
across cells, it is trivial to adapt these methodologies to restrict employees to a particular cell.
It is intuitive that when given information regarding what employees are trained to what extent
where and what employees prefer to work where, recommendations can be made as to what training can
be performed to increase overall skill and/or preference. The recommendations made in this study are
limited to increasing overall preference, but it is trivial to adapt the problem to improving skill levels.
Process for Recommendations
Because recommendations are subjective, the process is subject to modification depending upon
the requirements of the individual using the tool. This process assumes that a manager would want to
have three good choices of employees for each assignment. The examples given below come from an
implementation of this process in Excel. This implementation is shown in Figure 8.1.
Step #1 – Determine Current Situation
The goal of the first step is to determine what the current situation is. By doing so, the tool will
establish which assignments to focus most on when deciding which employees to train. The product of
the first step is a binary NAxNW matrix where a 1 at (A,W) indicates Employee W is trained at
Assignment A and also prefers to work there. “Prefers” is a relative term and can be established by the
user. As the threshold for “preference” increases, the output matrix will identify progressively more
assignments lacking “good” employees.
For instance, let us assume that the threshold for preference is set at 5. For a given employee and
given assignment, if the employee is trained on that assignment and has a preference level of at least 5,
then that employee will be marked as “good” on that assignment. If the employee is not trained there or
has a preference level lower than 5, then he/she is not a “good” employee for that assignment.
The process then identifies assignments that require training as those that have fewer than three
good employees. If an assignment has fewer than two good employees then it is in critical need of crosstraining.
Step #2 – Identify Potentials
The goal of the second step is to take the assignments that require more good employees and
determine which employees could potentially be good. It achieves this by determining which employees
have a preference level above the threshold but are not trained at the assignment.
For instance, if Employee E is not trained at Assignment A, then Employee E is a potential
employee for cross-training at Assignment A. That is to say, if Employee was to receive training at
Assignment A, then he/she would become a good employee at that assignment.
Step #3 – Consider Existing Training
Once potential good employees have been identified at critical assignments, it is largely up to a
manager that is more familiar with the qualitative aspects of the problem to determine which employees
to train. However, the recommendation also offers some recommendation based on how many other
assignments each employee has been trained at. The idea is that giving training to an employee who is
trained at five assignments is more valuable than giving training to an employee who is trained at fifteen
assignments and is likely in large demand in the NPALP anyway.
Figure 8.1 – Excel Tool for Cross-Training Recommendations
8. Excel Manager’s Tool
Putting all of these processes (BSALP, NPALP, and Cross-Training) together and having them
interact on a daily basis is not feasible for a manager seeking to create labor schedules. Therefore, this
study has integrated the three processes into a single tool contained in a Microsoft Excel workbook.
While this is certainly not the only possible implementation of the processes, it is familiar to many users,
easy to transfer, and produces easy-to-understand outputs. The BSALP and NPALP linear programs were
put together in LINGO 11.0 and embedded into the Excel workbook.
Usage
On a day-to-day basis, it is the role of the manager using the Excel tool to input which of his
employees are present and absent (Figure 9.1). He/she then creates a production schedule for the day
(Figure 9.2). The workbook includes support for product cycle time by station and will calculate
bottlenecks for a given time of day automatically. Then the manager simply runs the embedded linear
programs (Figure 9.3).
LINGO imports the inputs and then exports the assignments back to Excel. The result is an
assignment matrix that is easy to read and use (Figure 9.4).
The workbook also contains a worksheet for the cross-training recommendations. That worksheet
is shown in Figure 8.1.
Figure 9.1 – Present/Absent Selection
Figure 9.2 – Production Schedule
Figure 9.3 – Labor Assignment Matrix
9. GE Case Study
Benefit
The results of this study were all initially modeled on data obtained from a General Electric
manufacturing plant in Vega Alta, Puerto Rico. Although all of the results presented in this paper are in a
theoretical form that is easily adapted to most cellular manufacturing settings, they are the direct result of
modeling the environment at the Vega Alta plant.
The main advantage of creating these methods based on real production data is that it ensures the
methods are realistic and applicable. Although the Vega Alta case study does not prove that these results
are able to be generalized to other production settings, it does establish that they are applicable to a
manufacturing environment.
Vega Alta Plant Background
General Electric is an international conglomerate founded in 1892 by Thomas Edison. It currently
exists in four divisions: Technology Infrastructure, Energy Infrastructure, GE Capital, and NBC
Universal. The Vega Alta plant is one of eleven GE manufacturing facilities in Puerto Rico. It is one of
six that are dedicated to the component and control business of Energy Infrastructure.
The Vega Alta plant was founded in 1967 and currently employs approximately 220 employees
working across 48 production lines. The company produces a large mix of small electrical devices,
including switches, breakers, and buttons. The plant has been recognized from 2007-2009 as a high
performer in the component and control business.
10. Conclusions
The purpose (and results) of this study are three-fold. The first conclusion is that by considering
skill when making assignments to bottleneck stations in a cellular manufacturing environment, a manager
can maximize the production capability of his/her lines. The second is that by considering preferences for
non-bottleneck assignments, a manager can maximize employee satisfaction. The third is that by these
criteria, a manager can improve his/her assignment options by making well-informed cross-training
decisions.
11. Potential for Further Research
Cross-Training
The process for making cross-training recommendations developed in this study only considers
cross-training from the perspective of increasing employee preference. It is easy to imagine a situation in
which a manager would want to increase the skill level of employees at the bottleneck assignments
instead. Further research might develop a similar method for increasing skill levels instead of—or in
addition to—preference levels.
This study operates under the assumption that the cost of cross-training is the same for each
assignment. This is most likely not the case in the majority of real-life environments. In addition, this
study does not take into account other costs of cross-training, such as forgetfulness (the decrease in skill
level of a trained employee over time). Further research could incorporate these costs of cross-training to
develop a more comprehensive model for cross-training suggestions.
Assignment Coverage within Cells
Due to the nature of the case study, the assignment linear programs in this study assume that
employees assigned to a cell will be able to cover any unassigned stations in that cell without affecting
production or preference levels. The linear program simply assigns at least a minimum number of
employees to stations that they are trained at within a cell, with no regard to their ability or desire to
perform the tasks at the other assignments within the cell.
Further research could take into account the skill and preference levels of the employees at the
unassigned stations in their cells. By doing so, it would provide a more optimal assignment that would
take into account additional factors. It could also provide a more comprehensive model for making crosstraining suggestions with additional considerations.
12. Acknowledgements
This research was made possible by National Science Foundation grant EEC-0851879.
13. References