How to Solve the Assignment Problem: A Complete Guide
Table of Contents
Assignment problem is a special type of linear programming problem that deals with assigning a number of resources to an equal number of tasks in the most efficient way. The goal is to minimize the total cost of assignments while ensuring that each task is assigned to only one resource and each resource is assigned to only one task. In this blog, we will discuss the solution of the assignment problem using the Hungarian method, which is a popular algorithm for solving the problem.
Understanding the Assignment Problem
Before we dive into the solution, it is important to understand the problem itself. In the assignment problem, we have a matrix of costs, where each row represents a resource and each column represents a task. The objective is to assign each resource to a task in such a way that the total cost of assignments is minimized. However, there are certain constraints that need to be satisfied – each resource can be assigned to only one task and each task can be assigned to only one resource.
Solving the Assignment Problem
There are various methods for solving the assignment problem, including the Hungarian method, the brute force method, and the auction algorithm. Here, we will focus on the steps involved in solving the assignment problem using the Hungarian method, which is the most commonly used and efficient method.
Step 1: Set up the cost matrix
The first step in solving the assignment problem is to set up the cost matrix, which represents the cost of assigning a task to an agent. The matrix should be square and have the same number of rows and columns as the number of tasks and agents, respectively.
Step 2: Subtract the smallest element from each row and column
To simplify the calculations, we need to reduce the size of the cost matrix by subtracting the smallest element from each row and column. This step is called matrix reduction.
Step 3: Cover all zeros with the minimum number of lines
The next step is to cover all zeros in the matrix with the minimum number of horizontal and vertical lines. This step is called matrix covering.
Step 4: Test for optimality and adjust the matrix
To test for optimality, we need to calculate the minimum number of lines required to cover all zeros in the matrix. If the number of lines equals the number of rows or columns, the solution is optimal. If not, we need to adjust the matrix and repeat steps 3 and 4 until we get an optimal solution.
Step 5: Assign the tasks to the agents
The final step is to assign the tasks to the agents based on the optimal solution obtained in step 4. This will give us the most cost-effective or profit-maximizing assignment.
Solution of the Assignment Problem using the Hungarian Method
The Hungarian method is an algorithm that uses a step-by-step approach to find the optimal assignment. The algorithm consists of the following steps:
- Subtract the smallest entry in each row from all the entries of the row.
- Subtract the smallest entry in each column from all the entries of the column.
- Draw the minimum number of lines to cover all zeros in the matrix. If the number of lines drawn is equal to the number of rows, we have an optimal solution. If not, go to step 4.
- Determine the smallest entry not covered by any line. Subtract it from all uncovered entries and add it to all entries covered by two lines. Go to step 3.
The above steps are repeated until an optimal solution is obtained. The optimal solution will have all zeros covered by the minimum number of lines. The assignments can be made by selecting the rows and columns with a single zero in the final matrix.
Applications of the Assignment Problem
The assignment problem has various applications in different fields, including computer science, economics, logistics, and management. In this section, we will provide some examples of how the assignment problem is used in real-life situations.
Applications in Computer Science
The assignment problem can be used in computer science to allocate resources to different tasks, such as allocating memory to processes or assigning threads to processors.
Applications in Economics
The assignment problem can be used in economics to allocate resources to different agents, such as allocating workers to jobs or assigning projects to contractors.
Applications in Logistics
The assignment problem can be used in logistics to allocate resources to different activities, such as allocating vehicles to routes or assigning warehouses to customers.
Applications in Management
The assignment problem can be used in management to allocate resources to different projects, such as allocating employees to tasks or assigning budgets to departments.
Let’s consider the following scenario: a manager needs to assign three employees to three different tasks. Each employee has different skills, and each task requires specific skills. The manager wants to minimize the total time it takes to complete all the tasks. The skills and the time required for each task are given in the table below:
The assignment problem is to determine which employee should be assigned to which task to minimize the total time required. To solve this problem, we can use the Hungarian method, which we discussed in the previous blog.
Using the Hungarian method, we first subtract the smallest entry in each row from all the entries of the row:
Next, we subtract the smallest entry in each column from all the entries of the column:
We draw the minimum number of lines to cover all the zeros in the matrix, which in this case is three:
Since the number of lines is equal to the number of rows, we have an optimal solution. The assignments can be made by selecting the rows and columns with a single zero in the final matrix. In this case, the optimal assignments are:
- Emp 1 to Task 3
- Emp 2 to Task 2
- Emp 3 to Task 1
This assignment results in a total time of 9 units.
I hope this example helps you better understand the assignment problem and how to solve it using the Hungarian method.
Solving the assignment problem may seem daunting, but with the right approach, it can be a straightforward process. By following the steps outlined in this guide, you can confidently tackle any assignment problem that comes your way.
How useful was this post?
Click on a star to rate it!
Average rating 0 / 5. Vote count: 0
No votes so far! Be the first to rate this post.
We are sorry that this post was not useful for you! 😔
Let us improve this post!
Tell us how we can improve this post?
Operations Research
1 Operations Research-An Overview
- History of O.R.
- Approach, Techniques and Tools
- Phases and Processes of O.R. Study
- Typical Applications of O.R
- Limitations of Operations Research
- Models in Operations Research
- O.R. in real world
2 Linear Programming: Formulation and Graphical Method
- General formulation of Linear Programming Problem
- Optimisation Models
- Basics of Graphic Method
- Important steps to draw graph
- Multiple, Unbounded Solution and Infeasible Problems
- Solving Linear Programming Graphically Using Computer
- Application of Linear Programming in Business and Industry
3 Linear Programming-Simplex Method
- Principle of Simplex Method
- Computational aspect of Simplex Method
- Simplex Method with several Decision Variables
- Two Phase and M-method
- Multiple Solution, Unbounded Solution and Infeasible Problem
- Sensitivity Analysis
- Dual Linear Programming Problem
4 Transportation Problem
- Basic Feasible Solution of a Transportation Problem
- Modified Distribution Method
- Stepping Stone Method
- Unbalanced Transportation Problem
- Degenerate Transportation Problem
- Transhipment Problem
- Maximisation in a Transportation Problem
5 Assignment Problem
- Solution of the Assignment Problem
- Unbalanced Assignment Problem
- Problem with some Infeasible Assignments
- Maximisation in an Assignment Problem
- Crew Assignment Problem
6 Application of Excel Solver to Solve LPP
- Building Excel model for solving LP: An Illustrative Example
7 Goal Programming
- Concepts of goal programming
- Goal programming model formulation
- Graphical method of goal programming
- The simplex method of goal programming
- Using Excel Solver to Solve Goal Programming Models
- Application areas of goal programming
8 Integer Programming
- Some Integer Programming Formulation Techniques
- Binary Representation of General Integer Variables
- Unimodularity
- Cutting Plane Method
- Branch and Bound Method
- Solver Solution
9 Dynamic Programming
- Dynamic Programming Methodology: An Example
- Definitions and Notations
- Dynamic Programming Applications
10 Non-Linear Programming
- Solution of a Non-linear Programming Problem
- Convex and Concave Functions
- Kuhn-Tucker Conditions for Constrained Optimisation
- Quadratic Programming
- Separable Programming
- NLP Models with Solver
11 Introduction to game theory and its Applications
- Important terms in Game Theory
- Saddle points
- Mixed strategies: Games without saddle points
- 2 x n games
- Exploiting an opponent’s mistakes
12 Monte Carlo Simulation
- Reasons for using simulation
- Monte Carlo simulation
- Limitations of simulation
- Steps in the simulation process
- Some practical applications of simulation
- Two typical examples of hand-computed simulation
- Computer simulation
13 Queueing Models
- Characteristics of a queueing model
- Notations and Symbols
- Statistical methods in queueing
- The M/M/I System
- The M/M/C System
- The M/Ek/I System
- Decision problems in queueing
Operations Research by
Get full access to Operations Research 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.
Assignment Problem
5.1 introduction.
The assignment problem is one of the special type of transportation problem for which more efficient (less-time consuming) solution method has been devised by KUHN (1956) and FLOOD (1956). The justification of the steps leading to the solution is based on theorems proved by Hungarian mathematicians KONEIG (1950) and EGERVARY (1953), hence the method is named Hungarian.
5.2 GENERAL MODEL OF THE ASSIGNMENT PROBLEM
Consider n jobs and n persons. Assume that each job can be done only by one person and the time a person required for completing the i th job (i = 1,2,...n) by the j th person (j = 1,2,...n) is denoted by a real number C ij . On the whole this model deals with the assignment of n candidates to n jobs ...
Get Operations Research 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.
Solving the Rectangular assignment problem and applications
- Open access
- Published: 05 June 2010
- Volume 181 , pages 443–462, ( 2010 )
Cite this article
You have full access to this open access article
- J. Bijsterbosch 1 &
- A. Volgenant 1
1599 Accesses
17 Citations
Explore all metrics
The rectangular assignment problem is a generalization of the linear assignment problem (LAP): one wants to assign a number of persons to a smaller number of jobs, minimizing the total corresponding costs. Applications are, e.g., in the fields of object recognition and scheduling. Further, we show how it can be used to solve variants of the LAP, such as the k -cardinality LAP and the LAP with outsourcing by transformation. We introduce a transformation to solve the machine replacement LAP.
We describe improvements of a LAP-algorithm for the rectangular problem, in general and slightly adapted for these variants, based on the structure of the corresponding cost matrices. For these problem instances, we compared the best special codes from literature to our codes, which are more general and easier to implement. The improvements lead to more efficient and robust codes, making them competitive on all problem instances and often showing much shorter computing times.
Article PDF
Download to read the full article text
Similar content being viewed by others
Linear Assignment Problems in Combinatorial Optimization
On the rectangular knapsack problem
The Lazy Matroid Problem
Avoid common mistakes on your manuscript.
Bertsekas, D. P., & Castañon, D. A. (1992). A forward reverse auction algorithm for asymmetric assignment problems. Computational Optimization and Applications , 1 , 277–297.
Google Scholar
Bertsekas, D. P., Castañon, D. A., & Tsaknakis, H. (1993). Reverse auction and the solution of asymmetric assignment problems. SIAM Journal on Optimization , 3 , 268–299.
Article Google Scholar
Burkard, R., Dell’Amico, M., & Martello, S. (2009). Assignment Problems . Philadelphia: Society for Industrial and Applied Mathematics.
Caseau, Y., & Laburthe, F. (2000). Solving weighted matching problems with constraints. Constraints, an International Journal , 5 , 141–160.
Dell’Amico, M., & Martello, S. (1997). The k -cardinality assignment problem. Discrete Applied Mathematics , 76 , 103–121.
Dell’Amico, M., & Toth, P. (2000). Algorithms and codes for dense assignment problems: the state of the art. Discrete Applied Mathematics , 100 , 17–48.
Goldberg, A. V., & Kennnedy, J. R. (1995). An efficient cost scaling algorithm for the assignment problem. Mathematical Programming , 71 , 153–177.
Hsieh, A. J., Fan, K. C., & Fan, T. I. (1995). Bipartite weighted matching for on-line handwritten Chinese character recognition. Pattern Recognition , 28 , 143–151.
Jonker, R., & Volgenant, A. (1987). A shortest augmenting path algorithm for dense and sparse linear assignment problems. Computing , 38 , 325–340.
Knuth, D. E. (1981). The Art of Computer Programming , Vol. 2: Seminumerical Algorithms . Reading: Addison-Wesley.
Machol, R. E., & Wien, M. (1976). A hard assignment problem. Operations Research , 24 , 190–192.
Mosheiov, G., & Yovel, U. (2006). Minimizing weighted earliness-tardiness and due-date cost with unit processing-time jobs. European Journal of Operational Research , 172 , 528–544.
Pinedo, M. (2002). Scheduling Theory, Algorithms, and Systems (2nd edn.). Upper Saddle River: Prentice Hall.
Wiel Vander, R. J., & Sahinidis, N. V. (1997). The assignment problem with external interactions. Networks , 30 , 171–185.
Volgenant, A. (1996). Linear and semi-assignment problems, a core oriented approach. Computers & Operations Research , 10 , 917–932.
Volgenant, A. (2004). Solving the k -cardinality assignment problem by transformation. European Journal of Operational Research , 157 , 322–331.
Download references
Author information
Authors and affiliations.
Operations Research Group, Faculty of Economics and Econometrics, University of Amsterdam, Roetersstraat 11, 1018 WB, Amsterdam, The Netherlands
J. Bijsterbosch & A. Volgenant
You can also search for this author in PubMed Google Scholar
Corresponding author
Correspondence to A. Volgenant .
Rights and permissions
Open Access This is an open access article distributed under the terms of the Creative Commons Attribution Noncommercial License ( https://creativecommons.org/licenses/by-nc/2.0 ), which permits any noncommercial use, distribution, and reproduction in any medium, provided the original author(s) and source are credited.
Reprints and permissions
About this article
Bijsterbosch, J., Volgenant, A. Solving the Rectangular assignment problem and applications. Ann Oper Res 181 , 443–462 (2010). https://doi.org/10.1007/s10479-010-0757-3
Download citation
Published : 05 June 2010
Issue Date : December 2010
DOI : https://doi.org/10.1007/s10479-010-0757-3
Share this article
Anyone you share the following link with will be able to read this content:
Sorry, a shareable link is not currently available for this article.
Provided by the Springer Nature SharedIt content-sharing initiative
- Linear assignment
- k -Cardinality linear assignment
- Linear assignment problem with outsourcing
- Machine replacement
- Find a journal
- Publish with us
- Track your research
Assignment Problem: Meaning, Methods and Variations | Operations Research
After reading this article you will learn about:- 1. Meaning of Assignment Problem 2. Definition of Assignment Problem 3. Mathematical Formulation 4. Hungarian Method 5. Variations.
Meaning of Assignment Problem:
An assignment problem is a particular case of transportation problem where the objective is to assign a number of resources to an equal number of activities so as to minimise total cost or maximize total profit of allocation.
The problem of assignment arises because available resources such as men, machines etc. have varying degrees of efficiency for performing different activities, therefore, cost, profit or loss of performing the different activities is different.
Thus, the problem is “How should the assignments be made so as to optimize the given objective”. Some of the problem where the assignment technique may be useful are assignment of workers to machines, salesman to different sales areas.
Definition of Assignment Problem:
ADVERTISEMENTS:
Suppose there are n jobs to be performed and n persons are available for doing these jobs. Assume that each person can do each job at a term, though with varying degree of efficiency, let c ij be the cost if the i-th person is assigned to the j-th job. The problem is to find an assignment (which job should be assigned to which person one on-one basis) So that the total cost of performing all jobs is minimum, problem of this kind are known as assignment problem.
The assignment problem can be stated in the form of n x n cost matrix C real members as given in the following table:
270+ Operations Research Solved MCQs
Done Reading?
IMAGES
VIDEO
COMMENTS
Problem 4. Job shop needs to assign 4 jobs to 4 workers. The cost of performing a job is a function of the skills of the workers. Table summarizes the cost of the assignments. Worker1 cannot do job3, and worker 3 cannot do job 4. Determine the optimal assignment using the Hungarian method. Job. Worker.
ASSIGNMENT PROBLEM - Sri Chandrasekharendra Saraswathi Viswa ...
The assignment problem is a standard topic discussed in operations research textbooks [8] and [10]. It is an important subject, put forward immediately after the transportation problem, is the assignment problem. This is particularly important in the theory of decision making. The assignment problem is one of the earliest
This paper presents a review pertaining to assignment problem within the education domain, besides looking into the applications of the present research trend, developments, and publications ...
• The second problem: the transportation simplex method is a general method, it does not exploit the additional special structure in the assignment problem • Solution: Specialized method for assignment problems →Hungarian algorithm [1] • Description • Mathematical model • Solution procedures • Hungarian algorithm
minimizes the total cost or maximizes the total profit. The original version of the assignment problem is discussed in almost every textbook for an introductory course in either management science/operations research or production and operations management. Assignment problem is well structured linear programming problem,
Step 1: Set up the cost matrix. The first step in solving the assignment problem is to set up the cost matrix, which represents the cost of assigning a task to an agent. The matrix should be square and have the same number of rows and columns as the number of tasks and agents, respectively.
as the transportation problem, the assignment problem, the shortest path problem, the maximum flow problem, and the minimum cost flow problem. Very efficient algorithms exist which are many times more efficient than linear programming in the utilization of computer time and space resources. Introduction to Operations Research - p.6
5.1 INTRODUCTION. The assignment problem is one of the special type of transportation problem for which more efficient (less-time consuming) solution method has been devised by KUHN (1956) and FLOOD (1956). The justification of the steps leading to the solution is based on theorems proved by Hungarian mathematicians KONEIG (1950) and EGERVARY ...
Assignment model is a powerful operations research techniques that can be used to solve assignment or allocation problem. This study applies the assignment model to the course allocation problem ...
The rectangular assignment problem is a generalization of the linear assignment problem (LAP): one wants to assign a number of persons to a smaller number of jobs, minimizing the total corresponding costs. Applications are, e.g., in the fields of object recognition and scheduling. Further, we show how it can be used to solve variants of the LAP, such as the k-cardinality LAP and the LAP with ...
Limitations of Operations Research The Operations Research has number of applications, similarly it has certain limitations. These limitations are mostly related to model building and money & time factors problems that are involved in the application. Some of these are as given below: i) Distance between the O.R. specialist and Manager
Abstract. This paper presents a review pertaining to assignment problem within the education domain, besides looking into the applications of the present research trend, developments, and publications. Assignment problem arises in diverse situations, where one needs to determine an optimal way to assign subjects to subjects in the best possible ...
Mathematically, the assignment model can be represented as a linear-programming model in which each coefficient in every constraint equation is zero or unity. It provides a particularly attractive introduction for students to linear programming because the model is so simple, and because the Hungarian method (Flood, Merrill M. 1956. The ...
models the source is connected to one or more of destination. The most common. method to solve assignment models is the Hungarian metho d. In this paper. introduced another method to solve ...
In linear programming problem, assignment problem is introducing instantly after transportation problem [1]. The main aim of the assignment problem is to minimize total cost or time of several resources to an equal number of activities [1]. Assignment problem holds a condition that one resource can connect with only one activity [2].
UNIT 5 ASSIGNMENT PROBLEMS - eGyanKosh
After reading this article you will learn about:- 1. Meaning of Assignment Problem 2. Definition of Assignment Problem 3. Mathematical Formulation 4. Hungarian Method 5. Variations. Meaning of Assignment Problem: An assignment problem is a particular case of transportation problem where the objective is to assign a number of resources to an equal number of activities so as to minimise total ...
solved by the application of Operations Research techniques are as follows: Finance department of an organisation needs to optimise capital investment, determine optimal replacement strategies, apply cash flow ... transportation and assignment problems, which you will study in Units 3 and 4 of this Block and Unit 5 of Block 2 are deterministic ...
II. Course purpose: The course is intended to cover some of the analytical methods like Dynamic Programming, Simulation Methods, Linear Programming Methods, Transportation, Assignment, Sequencing, Replacement, Theory of Games, Analytical Waiting Lines and Inventory Models to help make better decisions. III.
of two main sections: methods and applications. The first aims to summarise the up-to-date knowledg e. and provide an overview of the state-of -the-art methods and key developments in the v ...
Abstract. This paper is concerned with a target assignment model of a probabilistic and nonlinear nature, but nevertheless one which is closely related to the "personnel-assignment" problem. It is shown here that, despite the apparent nonlinearities, it is possible to devise a linear programming formulation that will ordinarily provide a ...
Solved MCQs for Operations Research, with PDF download and FREE Mock test ... → Bachelor of Computer Applications ... When a maximization assignment problem is converted in minimization problem, the resulting matrix is called matrix. A. cost: B. regret: C. profit: D. dummy ...