ASSIGNMENT MODEL
SURAJ MARATHE
ASSIGNMENT MODEL
BASIC ASSUMPTION
The number of assignees and the number of tasks are the same (denoted by n).
Each assignee is to be assigned to exactly one task.
Each task is to be performed by exactly one assignee.
There is a cost Cij associated with assignee i performing task j.
The objective is to determine how all n assignments should be made to
minimize the total cost
JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 5 6 8 7
B 10 12 11 7
C 10 8 13 6
D 8 7 4 3
MATHEMATICAL MODEL
Xij = 1 if assignee i performs task j
0 if not Xij ≥ 0 (and binary) for all i and j
ASSIGNMENT MODEL
Assignment problem v.s. Transportation problem
The assignment problem is a special type of
transportation problem
Sources are equivalent to assignees and
destinations are tasks.
Number of sources m = number of destinations n.
Every supply si = 1 and every demand dj = 1.
Hungarian Algorithm
Matrix form
Check for balance (Square Matrix)
If not add dummy row or column
Check for Maximization /minimization
if Minimization continue
Maximization ,convert it to
Minimization
Select max cost and subtract from all
other cost
Raw Normalization
Column Normalization
Check for optimality(draw lines)
Check for No of lines
No of lines equal to size of matrix.
If not go for improving the solution.
From the last matrix,
1) From uncancelled ,select max,
and subtract from uncancelled and
add at line intersection
2) along the line remains the same.
Scan the zeros and draw the lines.
ASSIGNMENT MODEL
Given ‘ m ‘ facilities and ‘ n ‘ jobs and given
the effectiveness of each facility for each
job, the problem is to assign each facility
to one and only one job so that the given
measure of effectiveness is optimized.
ASSIGNMENT MODEL
Four different jobs can be done on four different
machines. The matrix below gives the cost in rupees of
producing job “i” on machine “j”. How should the jobs be
assigned to the various machines so that the total cost is
minimised.
JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 5 6 8 7
B 10 12 11 7
C 10 8 13 6
D 8 7 4 3
HUNGARIAN ALGORITHM
STEP I:PREPARE A SQUARE MATRIX
For m * n , (m≠n) , a dummy column or dummy row
should be added.
JOBS M/C M/C M/C M/C
JOBS M/C M/C M/C M/C 1 2 3 4
1 2 3 4
A 5 6 8 7
A 5 6 8 7
B 10 12 11 7
B 10 12 11 7
C 10 8 13 6
C 10 8 13 6
D 0 0 0 0
HUNGARIAN ALGORITHM
STEP 2:REDUCE THE MATRIX
subtract the smallest element of each row from all the elements of that
row. Examine if there is atleast one zero in each row and each column.
If not, subtract the minimum element of each column from all the
elements of that column.
JOBS M/C 1 M/C 2 M/C 3 M/C 4 JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 0 1 3 2
A 0 0 2 2
B 3 5 4 0
B 3 4 3 0
C 4 2 7 0 C 4 1 6 0
D 5 4 1 0 D 5 3 0 0
HUNGARIAN ALGORITHM
STEP 3:CHECK FOR OPTIMALITY
Examine the rows successively until a row with exactly one unmasked
zero is obtained. Make an assignment to this single zero by making a
square around it and strike off the entire column containing that
assignment. Proceed in this way till all other rows have been
examined.
JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 0 0 2 2
B 3 4 3 0
C 4 1 6 0
D 5 3 0 0
HUNGARIAN ALGORITHM
STEP 3:CHECK FOR OPTIMALITY
Now examine the columns successively until a column with exactly one
unmasked zero is obtained. Make an assignment to this single zero by
making a square around it and strike off the entire row containing that
assignment.
If the number of lines is equal to the order of the matrix, then the
solution is the optimal solution. Otherwise go to step 4.
JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 0 0 2 2
B 3 4 3 0
C 4 1 6 0
D 5 3 0 0
HUNGARIAN ALGORITHM
STEP 4: ITERATE TOWARDS THE OPTIMAL SOLUTION
Examine the uncovered elements. Select the smallest element and subtract it from
all the uncovered elements. Add this smallest element to every element that lies at the
intersection of two lines. Repeat step 3 to 4 until the number of lines crossing all zeros
becomes equal to the order of the matrix.
JOBS M/C 1 M/C 2 M/C 3 M/C 4 JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 0 0 2 2 A 0 0 3 3
B 3 4 3 0 B 2 3 3 0
C 4 1 6 0 C 3 0 6 0
D 5 3 0 0 D 4 2 0 0
HUNGARIAN ALGORITHM
JOBS M/C 1 M/C 2 M/C 3 M/C 4 JOBS M/C 1 M/C 2 M/C 3 M/C 4
A 0 0 3 3 A 0 0 3 3
B 2 3 3 0 B 2 3 3 0
C 3 0 6 0 C 3 0 6 0
D 4 2 0 0 D 4 2 0 0
Job A ------- Machine 1
JOBS M/C 1 M/C 2 M/C 3 M/C 4
Job B ------- Machine 4
A 0 0 3 3
Job C ------- Machine 2
B 2 3 3 0
Job D ------- Machine 3
C 3 0 6 0
Total Cost=5+8+4+7=24
D 4 2 0 0
ASSIGNMENT MODEL EXAMPLES
A company has a team of four salesmen and there are four districts where
the company wants to start its business. After taking into account the
capabilities of salesmen and the nature of districts, the company estimates
that the profit per day in rupees for each salesmen in each district is as
below.
1 2 3 4
A 16 10 14 11
B 14 11 15 15
C 15 15 13 12
D 13 12 14 15
Find the assignment of salesmen to various districts which will yield
maximum profit.
ASSIGNMENT MODEL EXAMPLES
Change to minimization type before using Hungarian Method.
Subtract all elements of matrix from the LARGEST element in it.
1 2 3 4 1 2 3 4
A 0 6 2 5 A 0 6 2 5
B 2 5 1 1 B 1 4 0 0
C 1 1 3 4 C 0 0 2 3
D 3 4 2 1 D 2 3 1 0
Salesman A should be assigned District 1
Salesman B should be assigned District 3
Salesman C should be assigned District 2
Salesman D should be assigned District 4
Maximum profit per day= Rs. (16 + 15 + 15 + 15) = Rs. 61
ASSIGNMENT MODEL EXAMPLES
Five different jobs can be done on Six different machines. The
matrix below gives the cost in rupees of producing job “i” on
machine “j”. How should the jobs be assigned to the various
machines so that the total cost is minimised.
1 2 3 4 5 6
A 12 10 15 22 18 8
B 10 18 25 15 16 12
C 11 10 3 8 5 9
D 6 14 10 13 13 12
E 8 12 11 7 13 10
ASSIGNMENT MODEL EXAMPLES
A small garment making unit has five tailors stitching five different types of
garments. All the five tailors are capable of stitching all the five types of garments.
The output per day per tailor and the profit (Rs.) for each type of garment are given
below.
Which type of garment should be assigned to which tailor in order to maximize
profit, assuming that there are no other constraints?
ASSIGNMENT MODEL EXAMPLES
The captain of a cricket team has to allot five middle batting positions to five batsmen. The average
runs scored by each batsmen at these positions are as follows:
1. Find the assignment of batsmen to positions which would give the maximum number of
runs.
2. If another batsman ‘U’ with the following average runs in batting positions added to team,
should he be included to play in the team? If so, who will be replaced by him?