Assignment Problem
Assignment Problem
MSU6502
Assignment problem
The assignment problem is a special case of linear programming problem; it is one of the
fundamental combinational optimization problems in the branch of optimization or operations
research in mathematics.
Its goal consists in assigning m resources (usually workers) to n tasks (usually jobs) on a one to
one basis while minimizing assignment costs.
As a general rule,
◦ all jobs must be performed by exactly one worker
◦ every worker must be assigned exclusively to one job.
◦ Any worker can be assigned to perform any job, incurring in some cost that may vary depending on
the work-job assignment.
Assignment problem
Basic Notation:
m = number of worker (i = 1 … m)
n = number of jobs (j = 1 … n)
c i,j = unit cost of assigning worker i to job j
x i,j = worker i assigned to job j (1 if assigned, 0 otherwise)
Note: m (number of workers) must be equal to n (number of jobs).
Assignment problem
Formulation:
Assignment problem
Step 1. Determine the cost table from the given problem.
(i) If the no. of sources is equal to no. of destinations, go to step 3. (ii) If the no. of sources is
not equal to the no. of destination, go to step2.
Step 2. Add a dummy source or dummy destination, so that the cost table becomes a square
matrix. The cost entries of the dummy source/destinations are always zero.
Step 3. Locate the smallest element in each row of the given cost matrix and then subtract the
same from each element of the row.
Step 4. In the reduced matrix obtained in the step 3, locate the smallest element of each
column and then subtract the same from each element of that column. Each column and row
now have at least one zero.
Assignment problem
Step 5. In the modified matrix obtained in the step 4, search for the optimal assignment as
follows:
◦ (a) Examine the rows successively until a row with a single zero is found. Enrectangle this row ()and
cross off (X) all other zeros in its column. Continue in this manner until all the rows have been taken
care of.
◦ (b) Repeat the procedure for each column of the reduced matrix.
◦ (c) If a row and/or column has two or more zeros and one cannot be chosen by inspection then assign
arbitrary any one of these zeros and cross off all other zeros of that row / column.
◦ (d) Repeat (a) through (c) above successively until the chain of assigning () or cross (X) ends.
Assignment problem
Step 6. If the number of assignment () is equal to n (the order of the cost matrix), an optimum
solution is reached.
If the number of assignment is less than n(the order of the matrix), go to the next step.
Step7. Draw the minimum number of horizontal and/or vertical lines to cover all the zeros of
the reduced matrix.
Assignment problem
Step 8. Develop the new revised cost matrix as follows:
◦ (a)Find the smallest element of the reduced matrix not covered by any of the lines.
◦ (b)Subtract this element from all uncovered elements and add the same to all the elements laying at the
intersection of any two lines.
Step 9. Go to step 6 and repeat the procedure until an optimum solution is attained.
Assignment problem
Example
J1 J2 J3 J4 J5
M1 13 5 9 18 12
M2 13 19 6 13 14
M3 3 2 4 4 5
M4 18 9 13 20 16
M5 12 6 14 19 10
Assignment problem
Row reduction
J1 J2 J3 J4 J5 J1 J2 J3 J4 J5
M1 13 5 9 18 12 5 M1 8 0 4 13 7
M2 13 19 6 13 14 6 M2 7 13 0 7 8
M3 3 2 4 4 5 2 M3 1 0 2 2 3
M4 18 9 13 20 16 9 M4 9 0 4 11 7
M5 12 6 14 19 10 6 M5 6 0 8 13 4
Assignment problem
Column reduction
J1 J2 J3 J4 J5 J1 J2 J3 J4 J5
M1 8 0 4 13 7 M1 7 0 4 11 4
M2 7 13 0 7 8 M2 6 13 0 5 5
M3 1 0 2 2 3 M3 0 0 2 0 0
M4 9 0 4 11 7 M4 8 0 4 9 4
M5 6 0 8 13 4 M5 5 0 8 11 1
1 0 0 2 3
Assignment problem
Row scanning, Column scanning,
J1 J2 J3 J4 J5
M1 7 0 4 11 4
M2 6 13 0 5 5
M3 0 0 2 0 0
M4 8 0 4 9 4
M5 5 0 8 11 1
Assignment problem
Updating table
J1 J2 J3 J4 J5
M1 6 0 4 10 3
M2 5 13 0 4 4
M3 0 1 3 0 0
M4 7 0 4 8 3
M5 4 0 8 10 0
Assignment problem
New solutions
J1 J2 J3 J4 J5
M1 6 0 4 10 3
M2 5 13 0 4 4
M3 0 1 3 0 0
M4 7 0 4 8 3
M5 4 0 8 10 0
Assignment problem
Updating table
J1 J2 J3 J4 J5
M1 2 0 4 6 3
M2 1 13 0 0 4
M3 0 2 4 0 1
M4 3 0 4 4 3
M5 0 0 8 6 0
Assignment problem
New solutions
J1 J2 J3 J4 J5
M1 2 0 4 6 3
M2 1 13 0 0 4
M3 0 2 4 0 1
M4 3 0 4 4 3
M5 0 0 8 6 0
Assignment problem
Update Table
J1 J2 J3 J4 J5
M1 0 0 2 4 1
M2 1 15 0 0 4
M3 0 4 4 0 1
M4 1 0 2 2 1
M5 0 2 8 6 0
Assignment problem
New solution
J1 J2 J3 J4 J5
M1 0 0 2 4 1
M2 1 15 0 0 4
M3 0 4 4 0 1
M4 1 0 2 2 1
M5 0 2 8 6 0
Optimum solution
Assignment problem
❑M1 J1
❑M2 J3
❑M3 J4
❑M4 J2
❑M5 J5
Assignment problem
If its maximization problem???