## Hungarian Method

The Hungarian method is a computational optimization technique that addresses the assignment problem in polynomial time and foreshadows following primal-dual alternatives. In 1955, Harold Kuhn used the term “Hungarian method” to honour two Hungarian mathematicians, Dénes Kőnig and Jenő Egerváry. Let’s go through the steps of the Hungarian method with the help of a solved example. ## Hungarian Method to Solve Assignment Problems

The Hungarian method is a simple way to solve assignment problems. Let us first discuss the assignment problems before moving on to learning the Hungarian method.

## What is an Assignment Problem?

A transportation problem is a type of assignment problem. The goal is to allocate an equal amount of resources to the same number of activities. As a result, the overall cost of allocation is minimised or the total profit is maximised.

Because available resources such as workers, machines, and other resources have varying degrees of efficiency for executing different activities, and hence the cost, profit, or loss of conducting such activities varies.

Assume we have ‘n’ jobs to do on ‘m’ machines (i.e., one job to one machine). Our goal is to assign jobs to machines for the least amount of money possible (or maximum profit). Based on the notion that each machine can accomplish each task, but at variable levels of efficiency.

## Hungarian Method Steps

Check to see if the number of rows and columns are equal; if they are, the assignment problem is considered to be balanced. Then go to step 1. If it is not balanced, it should be balanced before the algorithm is applied.

Step 1 – In the given cost matrix, subtract the least cost element of each row from all the entries in that row. Make sure that each row has at least one zero.

Step 2 – In the resultant cost matrix produced in step 1, subtract the least cost element in each column from all the components in that column, ensuring that each column contains at least one zero.

Step 3 – Assign zeros

• Analyse the rows one by one until you find a row with precisely one unmarked zero. Encircle this lonely unmarked zero and assign it a task. All other zeros in the column of this circular zero should be crossed out because they will not be used in any future assignments. Continue in this manner until you’ve gone through all of the rows.
• Examine the columns one by one until you find one with precisely one unmarked zero. Encircle this single unmarked zero and cross any other zero in its row to make an assignment to it. Continue until you’ve gone through all of the columns.

Step 4 – Perform the Optimal Test

• The present assignment is optimal if each row and column has exactly one encircled zero.
• The present assignment is not optimal if at least one row or column is missing an assignment (i.e., if at least one row or column is missing one encircled zero). Continue to step 5. Subtract the least cost element from all the entries in each column of the final cost matrix created in step 1 and ensure that each column has at least one zero.

Step 5 – Draw the least number of straight lines to cover all of the zeros as follows:

(a) Highlight the rows that aren’t assigned.

(b) Label the columns with zeros in marked rows (if they haven’t already been marked).

(c) Highlight the rows that have assignments in indicated columns (if they haven’t previously been marked).

(d) Continue with (b) and (c) until no further marking is needed.

(f) Simply draw the lines through all rows and columns that are not marked. If the number of these lines equals the order of the matrix, then the solution is optimal; otherwise, it is not.

Step 6 – Find the lowest cost factor that is not covered by the straight lines. Subtract this least-cost component from all the uncovered elements and add it to all the elements that are at the intersection of these straight lines, but leave the rest of the elements alone.

Step 7 – Continue with steps 1 – 6 until you’ve found the highest suitable assignment.

## Hungarian Method Example

Use the Hungarian method to solve the given assignment problem stated in the table. The entries in the matrix represent each man’s processing time in hours.

$$\begin{array}{l}\begin{bmatrix} & I & II & III & IV & V \\1 & 20 & 15 & 18 & 20 & 25 \\2 & 18 & 20 & 12 & 14 & 15 \\3 & 21 & 23 & 25 & 27 & 25 \\4 & 17 & 18 & 21 & 23 & 20 \\5 & 18 & 18 & 16 & 19 & 20 \\\end{bmatrix}\end{array}$$

With 5 jobs and 5 men, the stated problem is balanced.

$$\begin{array}{l}A = \begin{bmatrix}20 & 15 & 18 & 20 & 25 \\18 & 20 & 12 & 14 & 15 \\21 & 23 & 25 & 27 & 25 \\17 & 18 & 21 & 23 & 20 \\18 & 18 & 16 & 19 & 20 \\\end{bmatrix}\end{array}$$

Subtract the lowest cost element in each row from all of the elements in the given cost matrix’s row. Make sure that each row has at least one zero.

$$\begin{array}{l}A = \begin{bmatrix}5 & 0 & 3 & 5 & 10 \\6 & 8 & 0 & 2 & 3 \\0 & 2 & 4 & 6 & 4 \\0 & 1 & 4 & 6 & 3 \\2 & 2 & 0 & 3 & 4 \\\end{bmatrix}\end{array}$$

Subtract the least cost element in each Column from all of the components in the given cost matrix’s Column. Check to see if each column has at least one zero.

$$\begin{array}{l}A = \begin{bmatrix}5 & 0 & 3 & 3 & 7 \\6 & 8 & 0 & 0 & 0 \\0 & 2 & 4 & 4 & 1 \\0 & 1 & 4 & 4 & 0 \\2 & 2 & 0 & 1 & 1 \\\end{bmatrix}\end{array}$$

When the zeros are assigned, we get the following: The present assignment is optimal because each row and column contain precisely one encircled zero.

Where 1 to II, 2 to IV, 3 to I, 4 to V, and 5 to III are the best assignments.

Hence, z = 15 + 14 + 21 + 20 + 16 = 86 hours is the optimal time.

## Practice Question on Hungarian Method

Use the Hungarian method to solve the following assignment problem shown in table. The matrix entries represent the time it takes for each job to be processed by each machine in hours.

$$\begin{array}{l}\begin{bmatrix}J/M & I & II & III & IV & V \\1 & 9 & 22 & 58 & 11 & 19 \\2 & 43 & 78 & 72 & 50 & 63 \\3 & 41 & 28 & 91 & 37 & 45 \\4 & 74 & 42 & 27 & 49 & 39 \\5 & 36 & 11 & 57 & 22 & 25 \\\end{bmatrix}\end{array}$$

Stay tuned to BYJU’S – The Learning App and download the app to explore all Maths-related topics.

## Frequently Asked Questions on Hungarian Method

What is hungarian method.

The Hungarian method is defined as a combinatorial optimization technique that solves the assignment problems in polynomial time and foreshadowed subsequent primal–dual approaches.

## What are the steps involved in Hungarian method?

The following is a quick overview of the Hungarian method: Step 1: Subtract the row minima. Step 2: Subtract the column minimums. Step 3: Use a limited number of lines to cover all zeros. Step 4: Add some more zeros to the equation.

## What is the purpose of the Hungarian method?

When workers are assigned to certain activities based on cost, the Hungarian method is beneficial for identifying minimum costs.

Request OTP on Voice Call

Post My Comment • Share Share

Register with byju's & watch live videos. ## Procedure, Example Solved Problem | Operations Research - Solution of assignment problems (Hungarian Method) | 12th Business Maths and Statistics : Chapter 10 : Operations Research

Chapter: 12th business maths and statistics : chapter 10 : operations research.

Solution of assignment problems (Hungarian Method)

First check whether the number of rows is equal to the numbers of columns, if it is so, the assignment problem is said to be balanced.

Step :1 Choose the least element in each row and subtract it from all the elements of that row.

Step :2 Choose the least element in each column and subtract it from all the elements of that column. Step 2 has to be performed from the table obtained in step 1.

Step:3 Check whether there is atleast one zero in each row and each column and make an assignment as follows. Step :4 If each row and each column contains exactly one assignment, then the solution is optimal.

Example 10.7

Solve the following assignment problem. Cell values represent cost of assigning job A, B, C and D to the machines I, II, III and IV. Here the number of rows and columns are equal.

∴ The given assignment problem is balanced. Now let us find the solution.

Step 1: Select a smallest element in each row and subtract this from all the elements in its row. Look for atleast one zero in each row and each column.Otherwise go to step 2.

Step 2: Select the smallest element in each column and subtract this from all the elements in its column. Since each row and column contains atleast one zero, assignments can be made.

Step 3 (Assignment): Thus all the four assignments have been made. The optimal assignment schedule and total cost is The optimal assignment (minimum) cost

Example 10.8

Consider the problem of assigning five jobs to five persons. The assignment costs are given as follows. Determine the optimum assignment schedule. ∴ The given assignment problem is balanced.

Now let us find the solution.

The cost matrix of the given assignment problem is Column 3 contains no zero. Go to Step 2. Thus all the five assignments have been made. The Optimal assignment schedule and total cost is The optimal assignment (minimum) cost = ` 9

Example 10.9

Solve the following assignment problem. Since the number of columns is less than the number of rows, given assignment problem is unbalanced one. To balance it , introduce a dummy column with all the entries zero. The revised assignment problem is Here only 3 tasks can be assigned to 3 men.

Step 1: is not necessary, since each row contains zero entry. Go to Step 2. Step 3 (Assignment) : Since each row and each columncontains exactly one assignment,all the three men have been assigned a task. But task S is not assigned to any Man. The optimal assignment schedule and total cost is The optimal assignment (minimum) cost = ₹ 35

Related Topics ## Hungarian Method: Assignment Problem

Hungarian Method is an efficient method for solving assignment problems .

This method is based on the following principle:

• If a constant is added to, or subtracted from, every element of a row and/or a column of the given cost matrix of an assignment problem, the resulting assignment problem has the same optimal solution as the original problem.

## Hungarian Algorithm

The objective of this section is to examine a computational method - an algorithm - for deriving solutions to the assignment problems. The following steps summarize the approach:

## Steps in Hungarian Method

1. Identify the minimum element in each row and subtract it from every element of that row.

2. Identify the minimum element in each column and subtract it from every element of that column.

3. Make the assignments for the reduced matrix obtained from steps 1 and 2 in the following way:

• For every zero that becomes assigned, cross out (X) all other zeros in the same row and the same column.
• If for a row and a column, there are two or more zeros and one cannot be chosen by inspection, then you are at liberty to choose the cell arbitrarily for assignment.

4. An optimal assignment is found, if the number of assigned cells equals the number of rows (and columns). In case you have chosen a zero cell arbitrarily, there may be alternate optimal solutions. If no optimal solution is found, go to step 5.

5. Draw the minimum number of vertical and horizontal lines necessary to cover all the zeros in the reduced matrix obtained from step 3 by adopting the following procedure:

• Mark all the rows that do not have assignments.
• Mark all the columns (not already marked) which have zeros in the marked rows.
• Mark all the rows (not already marked) that have assignments in marked columns.
• Repeat steps 5 (i) to (iii) until no more rows or columns can be marked.
• Draw straight lines through all unmarked rows and marked columns.

You can also draw the minimum number of lines by inspection.

6. Select the smallest element from all the uncovered elements. Subtract this smallest element from all the uncovered elements and add it to the elements, which lie at the intersection of two lines. Thus, we obtain another reduced matrix for fresh assignment.

7. Go to step 3 and repeat the procedure until you arrive at an optimal assignment.

For the time being we assume that number of jobs is equal to number of machines or persons. Later in the chapter, we will remove this restrictive assumption and consider a special case where no. of facilities and tasks are not equal.

Operations Research Simplified Back Next

Goal programming Linear programming Simplex Method Transportation Problem Index     Assignment problem     Hungarian algorithm     Solve online

## The Hungarian algorithm

The Hungarian algorithm consists of the four steps below. The first two steps are executed once, while Steps 3 and 4 are repeated until an optimal assignment is found. The input of the algorithm is an n by n square matrix with only nonnegative elements.

Step 1: Subtract row minima

For each row, find the lowest element and subtract it from each element in that row.

Step 2: Subtract column minima

Similarly, for each column, find the lowest element and subtract it from each element in that column.

Step 3: Cover all zeros with a minimum number of lines

Cover all zeros in the resulting matrix using a minimum number of horizontal and vertical lines. If n lines are required, an optimal assignment exists among the zeros. The algorithm stops.

If less than n lines are required, continue with Step 4.

Find the smallest element (call it k ) that is not covered by a line in Step 3. Subtract k from all uncovered elements, and add k to all elements that are covered twice.

Continue with:

The Hungarian algorithm explained based on an example.

The Hungarian algorithm explained based on a self chosen or on a random cost matrix. HungarianAlgorithm.com uses cookies to provide you with an optimal user experience.

indiafreenotes

Read BBA, BMS, B.Com Syllabus wise Notes

## Hungarian method of assignment problem

The Hungarian method is a popular algorithm used to solve assignment problems, which involve assigning a set of agents to a set of tasks with given costs, such that each agent is assigned to exactly one task and each task is assigned to exactly one agent, while minimizing the total cost of the assignments.

The Hungarian method involves the following steps:

• Create a cost matrix : Create an n x n matrix representing the costs of assigning each agent to each task, where n is the number of agents and tasks.
• Subtract the smallest cost in each row from all the costs in that row, and subtract the smallest cost in each column from all the costs in that column.
• Draw the minimum number of horizontal or vertical lines to cover all the zeros in the matrix. If the number of lines equals n, then an optimal assignment has been found. If not, proceed to step 4.
• Determine the smallest uncovered element in the matrix, and subtract it from all uncovered elements. Then, add it to all elements at the intersection of two lines.
• Repeat steps 3 and 4 until an optimal assignment has been found.
• Assign the agents to the tasks based on the lines. If an agent is assigned to a task covered by a vertical line, or a task is assigned to an agent covered by a horizontal line, the assignment is optimal.

Here is an example of the Hungarian method in action:

Suppose we have the following cost matrix representing the costs of assigning three agents to three tasks:

Step 1: Create a cost matrix.

Step 2: Subtract the smallest cost in each row from all the costs in that row, and subtract the smallest cost in each column from all the costs in that column.

Step 3: Draw the minimum number of horizontal or vertical lines to cover all the zeros in the matrix. In this case, we can cover all the zeros with two horizontal lines (through rows A2 and A3).

Step 4: Determine the smallest uncovered element in the matrix, which is 2. Subtract it from all uncovered elements, and add it to all elements at the intersection of two lines.

Step 5: Repeat steps 3 and 4 until an optimal assignment has been found.

• We can cover all the zeros in the matrix with two horizontal lines, but we still need to cover one more cell to have a complete assignment.
• The uncovered cell with the smallest value is (A2, T2) with a cost of 0.
• We can draw a vertical line through column T2 to cover cell (A2, T2).
• Now we can cover all the zeros in the matrix with two lines. The covered cells correspond to an optimal assignment:

The optimal assignment is:

• Agent 1 is assigned to Task 2 with a cost of 0.
• Agent 2 is assigned to Task 1 with a cost of 2.

Agent 3 is assigned to Task 3 with a cost of 5.

## Quantitative Techniques: Theory and Problems by P. C. Tulsian, Vishal Pandey

Get full access to Quantitative Techniques: Theory and Problems and 60K+ other titles, with a free 10-day trial of O'Reilly.

There are also live events, courses curated by job role, and more.

## HUNGARIAN METHOD

Although an assignment problem can be formulated as a linear programming problem, it is solved by a special method known as Hungarian Method because of its special structure. If the time of completion or the costs corresponding to every assignment is written down in a matrix form, it is referred to as a Cost matrix. The Hungarian Method is based on the principle that if a constant is added to every element of a row and/or a column of cost matrix, the optimum solution of the resulting assignment problem is the same as the original problem and vice versa. The original cost matrix can be reduced to another cost matrix by adding constants to the elements of rows and columns where the total cost or the total completion time of an ...

Get Quantitative Techniques: Theory and Problems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.

## Don’t leave empty-handed

Get Mark Richards’s Software Architecture Patterns ebook to better understand how to design components—and how they should interact.

## It’s yours, free. ## Check it out now on O’Reilly

Dive in for free with a 10-day trial of the O’Reilly learning platform—then explore all the other resources our members count on to build skills and solve problems every day.  #### IMAGES

1. How to Solve an Assignment Problem Using the Hungarian Method 2. Assignment Problem (Part-2) Introduction to Hungarian Method to Solve 3. How to Solve Assignment Problem Using Hungarian Method (Maximization 4. Assignment Problem 5. L 18 Hungarian Method for solving Assignment problems Part 2|Operations 6. Assignment Problem using Hungarian method #### VIDEO

1. Assignment

2. 2. Minimal Assignment problem {Hungarian Method}

3. Assignment Hungarian method operations management CMA INTER

4. Assignment problem, simple probl

5. Assignment in Ms Excel

6. 03 Assignment Problem Hungarian Method

1. How Do You Write a Project Overview?

To write a project overview, explain the area of need or the problem that you are trying to solve. Then, explain how your project fills that need or provides a solution. Briefly explain your methods and the expected result.

2. The Benefits of Collaborative Learning in Completing Student Assignments

Assignments are an integral part of a student’s academic journey. They not only assess their understanding of the subject matter but also help in developing critical thinking, problem-solving, and time management skills.

3. Boosting Your Math Skills: Essential Tools and Resources for Solving Homework

Math can be a challenging subject for many students, and completing math homework assignments can feel like an uphill battle. However, with the right tools and resources at your disposal, solving math homework problems can become a breeze.

4. Hungarian Method

The Hungarian method is defined as a combinatorial optimization technique that solves the assignment problems in polynomial time and foreshadowed subsequent

5. Learn Hungarian Method

The Hungarian method, also known as the Kuhn-Munkres algorithm, is a computational technique used to solve the assignment problem in

6. Hungarian algorithm

The Hungarian method is a combinatorial optimization algorithm that solves the assignment problem in polynomial time and which anticipated later primal–dual

7. How to Solve an Assignment Problem Using the Hungarian Method

In this lesson we learn what is an assignment problem and how we can solve it using the Hungarian method.

8. Using the Hungarian Algorithm to Solve Assignment Problems

The Hungarian Algorithm is used to find the minimum cost in assignment problems that involve assigning people to activities. To use this

9. Solution of assignment problems (Hungarian Method)

(i) Examine the rows successively until a row with exactly one zero is found. Mark that zero by , that means an assignment is made there . Cross

10. Hungarian Method: Assignment Problem

Identify the minimum element in each row and subtract it from every element of that row. 2. Identify the minimum element in each column and subtract it from

11. An Assignment Problem solved using the Hungarian Algorithm

The Hungarian algorithm: An example · Step 1: Subtract row minima · Step 2: Subtract column minima · Step 3: Cover all zeros with a minimum number of lines · Step 4

12. HungarianAlgorithm.com

The Hungarian algorithm · Step 1: Subtract row minima · Step 2: Subtract column minima · Step 3: Cover all zeros with a minimum number of lines · Step 4: Create

13. Hungarian method of assignment problem

The Hungarian method is a popular algorithm used to solve assignment problems, which involve assigning a set of agents to a set of tasks

14. Hungarian Method

The Hungarian Method is based on the principle that if a constant is added to every element of a row and/or a column of cost matrix, the optimum solution of the