Operations Research - Definition and formulation of Assignment Problem | 12th Business Maths and Statistics : Chapter 10 : Operations Research

Chapter: 12th business maths and statistics : chapter 10 : operations research, definition and formulation of assignment problem.

Definition and formulation

Consider the problem of assigning n jobs to n machines (one job to one machine). Let C ij be the cost of assigning i th job to the j th machine and x ij represents the assignment of i th job to the j th machine.

formulation of assignment problem

 x ij is missing in any cell means that no assignment is made between the pair of job and machine.( i.e ) x ij = 0.

x ij presents in any cell means that an assignment is made their.In such cases x ij = 1

The assignment model can be written in LPP as follows

formulation of assignment problem

Subject to the constrains

formulation of assignment problem

The optimum assignment schedule remains unaltered if we add or subtract a constant from all the elements of the row or column of the assignment cost matrix.

If for an assignment problem all C ij > 0 then an assignment schedule (x ij ) which satisfies ∑ C ij x ij   = 0 must be optimal.

Related Topics

Privacy Policy , Terms and Conditions , DMCA Policy and Compliant

Copyright © 2018-2023 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.

Assignment Problem: Meaning, Methods and Variations | Operations Research

formulation of assignment problem

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:

formulation of assignment problem

www.springer.com The European Mathematical Society

  • StatProb Collection
  • Recent changes
  • Current events
  • Random page
  • Project talk
  • Request account
  • What links here
  • Related changes
  • Special pages
  • Printable version
  • Permanent link
  • Page information
  • View source

Assignment problem

The problem of optimally assigning $ m $ individuals to $ m $ jobs. It can be formulated as a linear programming problem that is a special case of the transport problem :

maximize $ \sum _ {i,j } c _ {ij } x _ {ij } $

$$ \sum _ { j } x _ {ij } = a _ {i} , i = 1 \dots m $$

(origins or supply),

$$ \sum _ { i } x _ {ij } = b _ {j} , j = 1 \dots n $$

(destinations or demand), where $ x _ {ij } \geq 0 $ and $ \sum a _ {i} = \sum b _ {j} $, which is called the balance condition. The assignment problem arises when $ m = n $ and all $ a _ {i} $ and $ b _ {j} $ are $ 1 $.

If all $ a _ {i} $ and $ b _ {j} $ in the transposed problem are integers, then there is an optimal solution for which all $ x _ {ij } $ are integers (Dantzig's theorem on integral solutions of the transport problem).

In the assignment problem, for such a solution $ x _ {ij } $ is either zero or one; $ x _ {ij } = 1 $ means that person $ i $ is assigned to job $ j $; the weight $ c _ {ij } $ is the utility of person $ i $ assigned to job $ j $.

The special structure of the transport problem and the assignment problem makes it possible to use algorithms that are more efficient than the simplex method . Some of these use the Hungarian method (see, e.g., [a5] , [a1] , Chapt. 7), which is based on the König–Egervary theorem (see König theorem ), the method of potentials (see [a1] , [a2] ), the out-of-kilter algorithm (see, e.g., [a3] ) or the transportation simplex method.

In turn, the transportation problem is a special case of the network optimization problem.

A totally different assignment problem is the pole assignment problem in control theory.

[a1] D.B. Yudin, E.G. Gol'shtein, "Linear programming" , Israel Program Sci. Transl. (1965) (In Russian)
[a2] R. Frisch, "La résolution des problèmes de programme linéaire par la méthode du potentiel logarithmique" , (1956) pp. 20–23
[a3] K. Murtz, "Linear and combinatorial programming" , Wiley (1976)
[a4] M. Grötschel, L. Lovász, A. Schrijver, "Geometric algorithms and combinatorial optimization" , Springer (1987)
[a5] C.H. Papadimitriou, K. Steiglitz, "Combinatorial optimization" , Prentice-Hall (1982)
  • This page was last edited on 5 April 2020, at 18:48.
  • Privacy policy
  • About Encyclopedia of Mathematics
  • Disclaimers
  • Impressum-Legal

Assignment Problem: Linear Programming

The assignment problem is a special type of transportation problem , where the objective is to minimize the cost or time of completing a number of jobs by a number of persons.

In other words, when the problem involves the allocation of n different facilities to n different tasks, it is often termed as an assignment problem.

The model's primary usefulness is for planning. The assignment problem also encompasses an important sub-class of so-called shortest- (or longest-) route models. The assignment model is useful in solving problems such as, assignment of machines to jobs, assignment of salesmen to sales territories, travelling salesman problem, etc.

It may be noted that with n facilities and n jobs, there are n! possible assignments. One way of finding an optimal assignment is to write all the n! possible arrangements, evaluate their total cost, and select the assignment with minimum cost. But, due to heavy computational burden this method is not suitable. This chapter concentrates on an efficient method for solving assignment problems that was developed by a Hungarian mathematician D.Konig.

"A mathematician is a device for turning coffee into theorems." -Paul Erdos

Formulation of an assignment problem

Suppose a company has n persons of different capacities available for performing each different job in the concern, and there are the same number of jobs of different types. One person can be given one and only one job. The objective of this assignment problem is to assign n persons to n jobs, so as to minimize the total assignment cost. The cost matrix for this problem is given below:

The structure of an assignment problem is identical to that of a transportation problem.

To formulate the assignment problem in mathematical programming terms , we define the activity variables as

x = 1 if job j is performed by worker i
0 otherwise

for i = 1, 2, ..., n and j = 1, 2, ..., n

In the above table, c ij is the cost of performing jth job by ith worker.

Generalized Form of an Assignment Problem

The optimization model is

Minimize c 11 x 11 + c 12 x 12 + ------- + c nn x nn

subject to x i1 + x i2 +..........+ x in = 1          i = 1, 2,......., n x 1j + x 2j +..........+ x nj = 1          j = 1, 2,......., n

x ij = 0 or 1

In Σ Sigma notation

x ij = 0 or 1 for all i and j

An assignment problem can be solved by transportation methods, but due to high degree of degeneracy the usual computational techniques of a transportation problem become very inefficient. Therefore, a special method is available for solving such type of problems in a more efficient way.

Assumptions in Assignment Problem

  • Number of jobs is equal to the number of machines or persons.
  • Each man or machine is assigned only one job.
  • Each man or machine is independently capable of handling any job to be done.
  • Assigning criteria is clearly specified (minimizing cost or maximizing profit).

Share this article with your friends

Operations Research Simplified Back Next

Goal programming Linear programming Simplex Method Transportation Problem

Your Article Library

Assignment problem in linear programming : introduction and assignment model.

formulation of assignment problem

ADVERTISEMENTS:

Assignment problem is a special type of linear programming problem which deals with the allocation of the various resources to the various activities on one to one basis. It does it in such a way that the cost or time involved in the process is minimum and profit or sale is maximum. Though there problems can be solved by simplex method or by transportation method but assignment model gives a simpler approach for these problems.

In a factory, a supervisor may have six workers available and six jobs to fire. He will have to take decision regarding which job should be given to which worker. Problem forms one to one basis. This is an assignment problem.

1. Assignment Model :

Suppose there are n facilitates and n jobs it is clear that in this case, there will be n assignments. Each facility or say worker can perform each job, one at a time. But there should be certain procedure by which assignment should be made so that the profit is maximized or the cost or time is minimized.

job of Work

In the table, Co ij is defined as the cost when j th job is assigned to i th worker. It maybe noted here that this is a special case of transportation problem when the number of rows is equal to number of columns.

Mathematical Formulation:

Any basic feasible solution of an Assignment problem consists (2n – 1) variables of which the (n – 1) variables are zero, n is number of jobs or number of facilities. Due to this high degeneracy, if we solve the problem by usual transportation method, it will be a complex and time consuming work. Thus a separate technique is derived for it. Before going to the absolute method it is very important to formulate the problem.

Suppose x jj is a variable which is defined as

1 if the i th job is assigned to j th machine or facility

0 if the i th job is not assigned to j th machine or facility.

Now as the problem forms one to one basis or one job is to be assigned to one facility or machine.

Assignment Model

The total assignment cost will be given by

clip_image005

The above definition can be developed into mathematical model as follows:

Determine x ij > 0 (i, j = 1,2, 3…n) in order to

Assignment Model

Subjected to constraints

Assignment Model

and x ij is either zero or one.

Method to solve Problem (Hungarian Technique):

Consider the objective function of minimization type. Following steps are involved in solving this Assignment problem,

1. Locate the smallest cost element in each row of the given cost table starting with the first row. Now, this smallest element is subtracted form each element of that row. So, we will be getting at least one zero in each row of this new table.

2. Having constructed the table (as by step-1) take the columns of the table. Starting from first column locate the smallest cost element in each column. Now subtract this smallest element from each element of that column. Having performed the step 1 and step 2, we will be getting at least one zero in each column in the reduced cost table.

3. Now, the assignments are made for the reduced table in following manner.

(i) Rows are examined successively, until the row with exactly single (one) zero is found. Assignment is made to this single zero by putting square □ around it and in the corresponding column, all other zeros are crossed out (x) because these will not be used to make any other assignment in this column. Step is conducted for each row.

(ii) Step 3 (i) in now performed on the columns as follow:- columns are examined successively till a column with exactly one zero is found. Now , assignment is made to this single zero by putting the square around it and at the same time, all other zeros in the corresponding rows are crossed out (x) step is conducted for each column.

(iii) Step 3, (i) and 3 (ii) are repeated till all the zeros are either marked or crossed out. Now, if the number of marked zeros or the assignments made are equal to number of rows or columns, optimum solution has been achieved. There will be exactly single assignment in each or columns without any assignment. In this case, we will go to step 4.

4. At this stage, draw the minimum number of lines (horizontal and vertical) necessary to cover all zeros in the matrix obtained in step 3, Following procedure is adopted:

(iii) Now tick mark all the rows that are not already marked and that have assignment in the marked columns.

(iv) All the steps i.e. (4(i), 4(ii), 4(iii) are repeated until no more rows or columns can be marked.

(v) Now draw straight lines which pass through all the un marked rows and marked columns. It can also be noticed that in an n x n matrix, always less than ‘n’ lines will cover all the zeros if there is no solution among them.

5. In step 4, if the number of lines drawn are equal to n or the number of rows, then it is the optimum solution if not, then go to step 6.

6. Select the smallest element among all the uncovered elements. Now, this element is subtracted from all the uncovered elements and added to the element which lies at the intersection of two lines. This is the matrix for fresh assignments.

7. Repeat the procedure from step (3) until the number of assignments becomes equal to the number of rows or number of columns.

Related Articles:

  • Two Phase Methods of Problem Solving in Linear Programming: First and Second Phase
  • Linear Programming: Applications, Definitions and Problems

No comments yet.

Leave a reply click here to cancel reply..

You must be logged in to post a comment.

web statistics

Problem level

Assignment problem

1 formulation of the problem, 2 variants of the problem, 3 algorithms for solving the problem, 4 references.

Suppose that there are [math]n[/math] agents and [math]m[/math] tasks, which can be distributed between these agents. Only one task can be assigned to each agent, and each task can be assigned to only one agent. The cost of assignment of the [math]i[/math] -th task to the [math]j[/math] -th agent is [math]c(i, j)[/math] . If [math]c(i, j) = \infty[/math] , then the [math]i[/math] -th task cannot be assigned to the [math]j[/math] -th agent.

The assignment problem : find a feasible set of assignments [math]A = \{ (i_1, j_1), \ldots, (i_k, j_k) \}[/math] , [math]k = \min \{m, n\}[/math] having the maximum total cost:

If [math]m = n[/math] , then we say of the linear assignment problem : each agent is assigned to perform exactly one task, and each task is assigned to exactly one agent.

In the case of unit weights, we have to find a maximum matching in a bipartite graph, and the problem reduces to assigning as much tasks as possible.

  • The Hungarian Method [1] [2] [3] for the linear problem. The complexity is [math]O(n^4)[/math] (and can be reduced [4] to [math]O(n^3)[/math] );
  • the auction algorithm [5] [6] ;
  • the Hopcroft-Karp algorithm [7] for the problem with unit weights. The complexity is [math]O(m \sqrt{n})[/math] .
  • ↑ Kuhn, H W. “The Hungarian Method for the Assignment Problem.” Naval Research Logistics Quarterly 2, no. 1 (March 1955): 83–97. doi:10.1002/nav.3800020109.
  • ↑ Kuhn, H W. “Variants of the Hungarian Method for Assignment Problems.” Naval Research Logistics Quarterly 3, no. 4 (December 1956): 253–58. doi:10.1002/nav.3800030404.
  • ↑ Munkres, James. “Algorithms for the Assignment and Transportation Problems.” Journal of the Society for Industrial and Applied Mathematics 5, no. 1 (March 1957): 32–38. doi:10.1137/0105003.
  • ↑ Tomizawa, N. “On Some Techniques Useful for Solution of Transportation Network Problems.” Networks 1, no. 2 (1971): 173–94. doi:10.1002/net.3230010206.
  • ↑ Bertsekas, Dimitri P. “Auction Algorithms for Network Flow Problems: a Tutorial Introduction.” Computational Optimization and Applications 1 (1992): 7–66.
  • ↑ Zavlanos, Michael M, Leonid Spesivtsev, and George J Pappas. “A Distributed Auction Algorithm for the Assignment Problem,” Proceedings of IEEE CDC'08, 1212–17, IEEE, 2008. doi:10.1109/CDC.2008.4739098.
  • ↑ Hopcroft, John E, and Richard M Karp. “An $N^{5/2} $ Algorithm for Maximum Matchings in Bipartite Graphs.” SIAM Journal on Computing 2, no. 4 (1973): 225–31. doi:10.1137/0202019.
  • Problem level
  • Articles in progress

Navigation menu

Personal tools.

  • Create account
  • View source
  • View history
  • Recent changes

File storage

  • Upload file
  • What links here
  • Related changes
  • Special pages
  • Printable version
  • Permanent link
  • Page information
  • This page was last edited on 6 March 2018, at 17:08.
  • Content is available under Creative Commons Attribution unless otherwise noted.
  • Privacy policy
  • About Algowiki
  • Disclaimers

Creative Commons Attribution

Please enable JavaScript to pass antispam protection! Here are the instructions how to enable JavaScript in your web browser http://www.enable-javascript.com . Antispam by CleanTalk.

Assignment Problem

  • Feb 20, 2024

The assignment problem is a special case of transportation problem.

Suppose there are $n$ jobs to be performed and $n$ persons are available for these jobs. Assume that each person can do each job at a time, though with varying degree of efficiency.

Let $c_{ij}$ be the cost if the $i^{th}$ person is assigned the $j^{th}$ job. Then the problem is to find an assignment so that the total cost of performing all jobs is minimum. (i.e., which job should be assigned to which person with minimum cost). Such problem is called an Assignment Problem (AP).

The tabular form of the assignment problem is as follows

Persons \ Jobs $1$ $2$ $\cdots$ $j$ $\cdots$ $n$
Persons/ Jobs $1$ $2$ $\cdots$ $j$ $\cdots$ $n$
$1$ $c_{11}$ $c_{12}$ $\cdots$ $c_{1j}$ $\cdots$ $c_{1n}$
$2$ $c_{21}$ $c_{22}$ $\cdots$ $c_{2j}$ $\cdots$ $c_{2n}$
$\vdots$ $\vdots$ $\vdots$ $\vdots$ $\vdots$ $\vdots$ $\vdots$
$i$ $c_{i1}$ $c_{i2}$ $\cdots$ $c_{ij}$ $\cdots$ $c_{in}$
$\vdots$ $\vdots$ $\vdots$ $\vdots$ $\vdots$ $\vdots$ $\vdots$
$n$ $c_{n1}$ $c_{n2}$ $\cdots$ $c_{nj}$ $\cdots$ $c_{nn}$

The above table is called the $n\times n$ cost-matrix, where $c_{ij}$ are real numbers.

Thus the objective in the Assignment Problem is to assign a number of jobs to the equal number of persons at a minimum cost or maximum profit. e.g. assigning men to offices, classes to rooms, drivers to trucks, problems to research teams etc.

Mathematical Formulation of AP

Mathematically, the AP can be stated as $$ \begin{equation}\label{eq2.4} \min z = \sum_{i=1}^n\sum_{j=1}^n x_{ij} c_{ij}. \end{equation} $$ subject to $$ \begin{equation}\label{eq2.5} \sum_{j=1}^n x_{ij} =1,; \text{ for } i=1,2,\ldots, n \end{equation} $$

$$ \begin{equation}\label{eq2.6} \sum_{i=1}^n x_{ij} =1,; \text{ for } j=1,2,\ldots,n \end{equation} $$ where $$ \begin{equation*} x_{ij}=\left{ \begin{array}{ll} 1, & \hbox{if $i^{th}$ person is assigned $j^{th}$ job;} \ 0, & \hbox{otherwise.} \end{array} \right. \end{equation*} $$ Constraint \eqref{eq2.5} indicate that one job is done by $i^{th}$ person $i=1,2,\ldots, n$ and constraint \eqref{eq2.6} indicate that one person should be assigned $j^{th}$ job $j=1,2,\ldots, n$.

It may be observed from the above formulation that AP is a special type of Linear programming problem.

Unbalanced Assignment Problem

If the cost matrix of an assignment problem is not a square matrix, the assignment problem is called an Unbalanced Assignment Problem . In such a case, add dummy row or dummy column with zero cost in the cost matrix so as to form a square matrix. Then apply the usual assignment method to find the optimal solution.

Maximal Assignment Problem

Sometimes, the assignment problem deals with the maximization of an objective function instead of minimization.. For example, it may be required to assign persons to jobs in such a way that the expected profit is maximum. In such a case, first convert the problem of maximization to minimization and apply the usual procedure of assignment.

The assignment problem of maximization type can be converted to minimization type by subtracting all the elements of the given profit matrix from the largest element.

Restrictions on Assignment

Sometimes due to technical or other difficulties do not permit the assignment of a particular facility to a particular job. In such a situation, the difficulty can be overcome by assigning a very high cost (say, infinity i.e. $\infty$) to the corresponding cell.

Because of assigning an infinite penalty to such a cell the activity will be automatically excluded from the optimal solution. Then apply the usual procedure to find the optimal assignment.

formulation of assignment problem

Linear Assignment Problems and Extensions

Cite this chapter.

formulation of assignment problem

  • Rainer E. Burkard 4 &
  • Eranda Çela 4  

1644 Accesses

154 Citations

Assignment problems deal with the question how to assign n items (e.g. jobs) to n machines (or workers) in the best possible way. They consist of two components: the assignment as underlying combinatorial structure and an objective function modeling the ”best way”.

This research has been supported by the Spezialforschungsbereich F 003 “Optimierung und Kontrolle”, Projektbereich Diskrete Optimierung.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Subscribe and save.

  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
  • Durable hardcover edition

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Unable to display preview.  Download preview PDF.

Similar content being viewed by others

formulation of assignment problem

Some results on an assignment problem variant

formulation of assignment problem

The Quadratic Assignment Problem

formulation of assignment problem

Integer Programming

H. Achatz, P. Kleinschmidt, and K. Paparrizos, A dual forest algorithm for the assignment problem, in Applied Geometry and Discrete Mathematics, P. Gritzmann and B. Sturmfels, eds., DIMACS Series in Discrete Mathematics and Theoretical Computer Science 4, AMS, Providence, RI, 1991, pp. 1–11.

Google Scholar  

R. K. Ahuja, T. L. Magnanti, J. B. Orlin, and M. R. Reddy, Applications of network optimization, in Network Models–Handbooks of Operations Research and Management Science 7), M. O. Ball, T. L. Magnanti, C. L. Monma, and G. L. Nemhauser, eds., Elsevier, Amsterdam, 1995, pp. 1–83.

R. K. Ahuja, K. Mehlhorn, J. B. Orlin, and R. E. Tarjan, Faster algorithms for the shortest path problem, Journal of the ACM 37 , 1990, 213–223.

Article   MathSciNet   MATH   Google Scholar  

R. K. Ahuja and J. B. Orlin, The scaling network simplex algorithm, Operations Research 40 , Suppl. No. 1, 1992, S5 - S13.

MathSciNet   Google Scholar  

M. Akgül, A sequential dual simplex algorithm for the linear assignment problem, Operations Research Letters 7 , 1988, 155–158.

M. Akgül, The linear assignment problem, in Combinatorial Optimization, M. Akgül and S. Tufecki, eds., Springer Verlag, Berlin, 1992, pp. 85 –122.

Chapter   Google Scholar  

M. Akgül, A genuinely polynomial primal simplex algorithm for the assignment problem, Discrete Applied Mathematics 45 , 1993, 93–115.

M. Akgül and O. Ekin, A dual feasible forest algorithm for the assignment problem, RAIRO Operations Research 25 , 1991, 403–411.

MATH   Google Scholar  

H. Alt, N. Blum, K. Mehlhorn, and M. Paul, Computing maximum cardinality matching in time O(n1.5/m/ log e), Information Process. Letters 37 , 1991, 237–240.

MathSciNet   MATH   Google Scholar  

R. D. Armstrong and J. Zhiying, Solving linear bottleneck assignment problems via strong spanning trees, Operations Research Letters 12 , 1992, 179–180.

D. Avis and L. Devroye, An analysis of a decomposition heuristic for the assignment problem, Operations Research Letters 3, 1985, 279–283.

D. Avis and C. W. Lai, The probabilistic analysis of a heuristic for the assignment problem, SIAM Journal on Computing 17 , 1988, 732–741.

E. Balas and P. R. Landweer, Traffic assignment in communications satellites, Operations Research Letters 2, 1983, 141–147.

Article   MATH   Google Scholar  

E. Balas, D. Miller, J. Pekny, and P. Toth, A parallel shortest path algorithm for the assignment problem, Journal of the ACM 38 , 1991, 985–1004.

E. Balas and L. Qi, Linear-time separation algorithms for the three-index assignment polytope, Discrete Applied Mathematics 43, 1993, 1–12.

E. Balas and M. J. Saltzman, Facets of the three-index assignment polytope, Discrete Applied Mathematics 23 , 1989, 201–229.

E. Balas and M. J. Saltzman, An algorithm for the three-index assignment problem, Operations Research 39, 1991, 150–161.

M. L. Balinski, Signature methods for the assignment problem, Operations Research 33, 1985, 527–537.

M. L. Balinski, A competitive (dual) simplex method for the assignment problem, Mathematical Programming 34 , 1986, 125–141.

M. L. Balinski and R. E. Gomory, A primal method for the assignment and transportation problems, Management Science 10, 1964, 578–593.

Article   Google Scholar  

M. L. Balinski and J. Gonzalez, Maximum matchings in bipartite graphs via strong spanning trees, Networks 21 , 1991, 165–179.

M. L. Balinski and A. Russakoff, On the assignment polytope, SIAM Review 16, 1974, 516–525.

S. E. Bammel and J. Rothstein, The number of 9 x 9 Latin squares, Discrete Mathematics 11, 1975, 93–95.

H.-J. Bandelt, Y. Crama, and F. C. R. Spieksma, Approximation algorithms for multi-dimensional assignment problems with decomposable costs, Discrete Applied Mathematics 49 , 1994, 25–50.

V. A. Bardadym, Modifications of general lexicographic bottleneck optimization problems, Proceedings of the 5-th Twente Workshop on Graphs and Combinatorial Optimization, U. Faigle and C. Hoede, eds., 1997, University of Twente, Enschede, The Netherlands, 27–30.

R. S. Barr, F. Glover, and D. Klingman, The alternating basis algorithm for assignment problems, Mathematical Programming 13 , 1977, 1–13.

R. S. Barr and B. L. Hickman, A new parallel network simplex algorithm and implementation for large time-critical problems, Technical Report, Department of Computer Science and Engineering, Southern Methodist University, Dallas, TX, 1990.

D. P. Bertsekas, A new algorithm for the assignment problem, Mathematical Programming 21 , 1981, 152–171.

D. P. Bertsekas, The auction algorithm: A distributed relaxation method for the assignment problem, Annals of Operations Research 14 , 1988, 105–123.

D. P. Bertsekas, Linear Network Optimization: Algorithms and codes, MIT Press, Cambridge, MA, 1991.

D. P. Bertsekas and D. A. Castanon, Parallel synchronous and asynchronous implementations of the auction algorithm, Parallel Computing 17 , 1991, 707–732.

D. P. Bertsekas and D. A. Castanon, Parallel asynchronous Hungarian methods for the assignment problem, ORSA Journal on Computing 5 , 1993, 661–674.

D. P. Bertsekas and D. A. Castanon, Parallel primal-dual methods to the minimum cost network flow problem, Computational Optimization and Applications 2, 1993, 319–338.

D. P. Bertsekas, D. A. Castanon, J. Eckstein, and S. Zenios, Parallel computing in network optimization, in Network Models–Handbooks in Operations Research and Management Science, Vol. 7, M. O. Ball, T. L. Magnanti, C. L. Monma, and G. L. Nemhauser, eds., Elsevier, Amsterdam, The Netherlands, 1995, pp. 330–399.

D. P. Bertsekas and J. Eckstein, Dual coordinate step methods for linear network flow problems, Mathematical Programming 42 , 1988, 203–243.

G. Birkhoff, Tres observaciones sobre el algebra lineal, Rev. univ. nac. Tucuman (A) 5, 1946, 147–151.

W. L. Brogan, Algorithm for ranked assignments with applications to multiobject tracking, Journal of Guidance 12, 1989, 357–364.

R. E. Burkard, Time-slot assignment for TDMA-systems, Computing 35, 1985, 99–112.

R. E. Burkard and U. Derigs, Assignment and Matching Problems: Solution Methods with FORTRAN Programs, Springer, Berlin, 1980.

Book   MATH   Google Scholar  

R. E. Burkard and K. Fröhlich, Some remarks on 3-dimensional assignment problems, Methods of Operations Research 36, 1980, 31–36.

R. E. Burkard, W. Hahn, and U. Zimmermann, An algebraic approach to assignment problems, Mathematical Programming 12 , 1977, 318327.

R. E. Burkard, B. Klinz, and R. Rudolf, Perspectives of Monge properties in optimization, Discrete Applied Mathematics 70 , 1996, 95–161.

R. E. Burkard and F. Rendl, Lexicographic bottleneck problems, Operations Research Letters 10 , 1991, 303–308.

R. E. Burkard and R. Rudolf, Computational investigations on 3dimensional axial assignment problems, Belgian J. of Operations Research 32, 1993, 85–98.

R. E. Burkard, R. Rudolf, and G. J. Woeginger, Three dimensional axial assignment problems with decomposable cost coefficients, Discrete Applied Mathematics 65 , 1996, 123–169.

R. E. Burkard and U. Zimmermann, Weakly admissible transformations for solving algebraic assignment and transportation problems, Mathematical Programming Study 12, 1980, 1–18.

R. E. Burkard and U. Zimmermann, Combinatorial optimization in linearly ordered semimodules: a survey, in Modern Applied Mathematics, B. Korte ed., North Holland, Amsterdam, 1982, pp. 392–436.

P. Camerini, L. Fratta, and F. Maffioli, On improving relaxation methods by modified gradient techniques, Mathematical Programming Study 3 , 1975, 26–34.

Article   MathSciNet   Google Scholar  

P. Carraresi and G. Gallo, Network models for vehicle and crew scheduling, European Journal of Operational Research 16 , 1984, 139–151.

P. Carraresi and G. Gallo, A multi-level bottleneck assignment approach to the bus drivers’ rostering problem, European Journal of Operational Research 16 , 1984, 163–173.

G. Carpaneto, S. Martello, and P. Toth, Algorithms and codes for the assignment problem, Annals of Operations Research 13 , 1988, 193–223.

P. Carraresi and C. Sodini, An efficient algorithm for the bipartite matching problem, European Journal of Operational Research 23, 1986, 86–93.

D. A. Castaíïon, B. Smith, and A. Wilson, Performance of parallel assignment algorithms on different multiprocessor architectures, Technical Report TP-1245, ALPHATECH, Inc., Burlington, Mass.

G. Carpaneto and P. Toth, Solution of the assignment problem, ACM Transactions on Mathematical Software 6, 1980, 104–11.

G. Carpaneto and P. Toth, Algorithm for the solution of the bottleneck assignment problem, Computing 27, 1981, 179–187.

G. Carpaneto and P. Toth, Primal-dual algorithms for the assignment problem, Discrete Applied Mathematics 18 , 1987, 137–153.

K. Cechlârovâ, The uniquely solvable bipartite matching problem, Operations Research Letters 10, 1991, 221–224.

B. V. Cherkassky and A. V. Goldberg, On implementing push-relabel methods for the maximum flow problem, Algorithmica 19, 1997, 390410.

B. V. Cherkassky, A. V. Goldberg, and T. Radzik, Shortest paths algorithms: theory and experimental evaluation, Mathematical Programming 73 , 1996, 129–174.

D. Coppersmith and S. Vinograd, Matrix multiplication via arithmetic progressions, Journal of Symbolic Computing 9, 1990, 251–280.

Y. Crama and F. C. R. Spieksma, Approximation algorithms for three-dimensional assignment problems with triangle inequalities, European Journal of Operational Research 60 , 1992, 273–279.

W. H. Cunningham, A network simplex method, Mathematical Programming 11, 1976, 105–116.

W. H. Cunningham, Theoretical properties of the network simplex method, Mathematics of Operations Research 4 , 1979, 196–208.

W. H. Cunningham and A. B. Marsh, A primal algorithm for optimum matching, Mathematical Programming Study 8 , 1978, 50–72.

G. B. Dantzig, Linear Programming and Extensions, Princeton University Press, Princeton, NJ, 1963.

V. G. Deineko and V. L. Filonenko, On the reconstruction of specially structured matrices, Aktualnyje Problemy EVM i Programmirovanije, Dnjepropetrovsk, DGU, 1979, (in Russian).

U. Derigs, Alternate strategies for solving bottleneck assignment problems–analysis and computational results, Computing 33, 1984, 95–106.

The shortest augmenting path for solving assignment problems–motivation and computational experience, in Algorithms and Software for Optimization- Part I, Annals of Operations Research 4, C. L. Monma cd., Baltzer, Basel, 1985, 57–102.

U. Derigs, O. Goecke, and R. Schrader, Monge sequences and a simple assignment algorithm, Discrete Applied Mathematics 15 , 1986, 24 1248.

U. Derigs and U. Zimmermann, An augmenting path method for solving linear bottleneck assignment problems, Computing 19, 1978, 285–295.

E. W. Dijkstra, A note on two problems in connection with graphs, Numerische Mathematik 1 , 1959, 269–271.

W. E. Donath, Algorithms and average-value bounds for assignment problems, IBM Journal on Research Development 13, 1969, 380–386.

J. Edmonds and D. R. Fulkerson, Bottleneck extrema, Journal of Combinatorial Theory 8, 1970, 299–306.

P. Erdös and A. Rényi, On random matrices, Pub. Math. Inst. Hung. Acad. of Sciences 8A , 1963, 455–461.

R. Euler, Odd cycles and a class of facets of the axial 3-index assignment polytope, Applicationes mathematicae (Zastowania Matematyki) 19, 1987, 375–386.

R. Euler, R. E. Burkard, and R. Grommes, On Latin squares and the facial structure of related polytopes, Discrete Mathematics 62 , 1986, 155–181.

R. Euler and H. Le Verge, Time-tables, polyhedra and the greedy algorithm, Discrete Applied Mathematics 65 , 1996, 207–221.

T. A. Ewashko and R. C. Dudding, Application of Kuhn’s Hungarian assignment algorithm to posting servicemen, Operations Research 19 , 1971, 991.

D. Fortin and R. Rudolf, Weak algebraic Monge arrays, to appear in Discrete Mathematics, 1998.

M. L. Fredman and R. E. Tarjan, Fibonacci heaps and their uses in improved network optimization algorithms, Journal of the ACM 34, 1987, 596–615.

J. B. G. Frenk, M. van Houweninge, and A. H. G. Rinnooy Kan, Order statistics and the linear assignment problem, Computing 39 , 1987, 165174.

A. M. Frieze, Complexity of a 3-dimensional assignment problem, European Journal of Operational Research 13 , 1983, 161–164.

A. M. Frieze and L. Yadegar, An algorithm for solving 3-dimensional assignment problems with application to scheduling in a teaching practice, Journal of the Operational Research Society 32, 1981, 989–995.

R. Fulkerson, I. Glicksberg, and O. Gross, A production line assignment problem, Technical Report RM-1102, The Rand Corporation, Sta. Monica, CA, 1953.

L. R. Ford and D. R. Fulkerson, Maximal flow through a network, Canadian Journal of Mathematics 8, 1956, 399–404.

H. N. Gabow and R. E. Tarjan, A linear time algorithm for a special case of set union, Journal of Computer and System Sciences 30, 1985, 209–221.

H. N. Gabow and R. E. Tarjan, Algorithms for two bottleneck optimization problems, Journal of Algorithms 9, 1988, 411–417.

R. Garfinkel, An improved algorithm for the bottleneck assignment problem, Operations Research 19, 1971, 1747–1751.

F. Glover, Maximum matching in a convex bipartite graph, Naval Research Logistics Quarterly 14, 1967, 313–316.

F. Glover, R. Glover, and D. Klingman, Threshold assignment algorithm, Mathematical Programming Study 26, 1986, 12–37.

F. Glover, D. Karney, and D. Klingman, Implementation and computational study on start procedures and basis change criteria for a primal network code, Networks 4, 1974, 191–212.

F. Glover and D. Klingman, Improved labeling of L.P. bases in networks, Research report CS 218, Center for Cybernetic Studies, University of Texas, Austin, TX, 1974.

M. X. Goemans and M. Kodilian, A lower bound on the expected value of an optimal assignment, Mathematics of Operations Research 18, 1993, 267–274.

A. V. Goldberg and R. Kennedy, An efficient cost scaling algorithm for the assignment problem, Mathematical Programming 75, 1995, 153177.

A. V. Goldberg, S. A. Plotkin, and P. Vaidya, Sublinear-time parallel algorithms for matching and related problems, Journal of Algorithms 14, 1993, 180–213.

A. V. Goldberg and R. E. Tarjan, Finding minimum-cost circulations by successive approximation, Mathematics of Operations Research 15, 1990, 430–466.

D. Goldfarb, Efficient dual simplex methods for the assignment problem, Mathematical Programming 33, 1985, 187–203.

O. Gross, The bottleneck assignment problem, Technical Report P1630, The Rand Corporation, Sta. Monica, CA, 1959.

Ph. Hall, On representatives of subsets, Journal of the London Mathematical Society 10, 1935, 26–30.

P. Hansen and L. Kaufman, A primal-dual algorithm for the three-dimensional assignment problem, Cahiers du CERO 15, 1973, 327–336.

G. H. Hardy, J. E. Littlewood, and G. Pólya, Inequalities, Cambridge University Press, London and New York, 1952.

A. J. Hoffman, On simple linear programming problems, in Convexity, Proceedings of Symposia in Pure Mathematics 7, V. Klee ed., AMS, Providence, RI, 1963, 317–327.

J. E. Hoperoft and R. M. Karp, An n 2 algorithm for maximum matchings in bipartite graphs, SIAM Journal on Computing 2, 1973, 225–231.

M. S. Hung, A polynomial simplex method for the assignment problem, Operations Research 31, 1983, 595–600.

M. S. Hung and W. D. Rom, Solving the assignment problem by relaxation, Operations Research 28, 1980, 969–982.

D. S. Johnson and C. C. McGeoch, eds., Network Flows and Matching - First DIMACS Implementation Challenge, DIMACS Series in Discrete Mathematics and Theoretical Computer Science 12, AMS, Providence, RI, 1993.

R. Jonker and A. Volgenant, Improving the Hungarian assignment algorithm, Operations Research Letters 5, 1986, 171–175.

R. Jonker and A. Volgenant, A shortest augmenting path algorithm for dense and sparse linear assignment problems, Computing 38, 1987, 325–340.

R. M. Karp, Reducibility among combinatorial problems, in Complexity of Computer Computations, R. E. Miller and J. W. Thatcher, eds., Plenum Press, New York, 1972, 85–103.

R. M. Karp, An algorithm to solve the m x n assignment problem in expected time O(mn log n), Networks 10, 1980, 143–152.

R. M. Karp, An upper bound on the expected cost of an optimal assignment, in Discrete Algorithms and Complexity, Academic Press, Boston, 1987, 1–4.

R. M. Karp, A. H. G. Rinnooy Kan, and R. V. Vohra, Average case analysis of a heuristic for the assignment problem, Mathematics of Operations Research 19, 1994, 513–522.

J. Kennington and Z. Wang, Solving dense assignment problems on a shared memory multiprocessor, Report 88-OR-16, Department of Operations Research and Applied Science, Souther Methodist University, Dallas, TX, 1998.

P. Kleinschmidt, C. W. Lee, and H. Schannath, Transportation problem which can be solved by the use of Hirsch paths for the dual problems, Mathematical Programming 37, 1987, 153–168.

B. Klinz, R. Rudolf and G. J. Woeginger, On the recognition of permuted bottleneck Monge matrices, Discrete Applied Mathematics 60, 1995, 223–248.

D. König, Graphok és matrixok, Mat. Fiz. Lapok 38, 1931, 116–119.

J. M. Kurzberg, On approximation methods for the assignment problem, Journal of the ACM 9, 1962, 419–439.

H. W. Kuhn, The Hungarian method for the assignment and transportation problems, Naval Research Logistics Quarterly 2, 1955, 83–97.

E. L. Lawler, Combinatorial Optimization: Networks and Matroids, Holt, Rinehart, and Winston, New York, 1976.

A. J. Lazarus, Certain expected values in the random assignment problem, Operations Research Letters 14, 1993, 207–214.

Y. Lee and J. B. Orlin, On very large scale assignment problems, in Large Scale Optimization: State of the Art, W. W. Hager, D. W. Hearn, and P. M. Pardalos, eds., Kluwer Academic Publishers, Dordrecht, The Netherlands, 1994, pp. 206–244.

R. E. Macho’, An application of the assignment problem, Operations Research 18, 1970, 745–746.

D. Magos, Tabu search for the planar three-index assignment problem, Journal of Global Optimization 8, 1996, 35–48.

D. Magos and P. Miliotis, An algorithm for the planar three-index assignment problem, European Journal of Operational Research 77, 1994, 141–153.

S. Martello, W. R. Pulleyblank, P. Toth, and D. de Werra, Balanced optimization problems, Operations Research Letters 3, 1984, 275–278.

S. Martello and P. Toth, Linear assignment problems, in Surveys in Combinatorial Optimization, Annals of Discrete Mathematics 31, S. Martello, G. Laporte, M. Minoux, and C. Ribeiro, eds., North-Holland, Amsterdam, 1987, pp. 259–282.

M. Mézard and G. Parisi, On the solution of the random link matching problems, Journal de Physique 48, 1987, 1451–1459.

D. Miller, J. Pekny, and G. L. Thompson, Solution of large dense transportation problems using a parallel primal algorithm, Operations Research Letters 9, 1990, 319–324.

K. Mulmuley, U. V. Vazirani, and V. V. Vazirani, Matching is as easy as matrix inversion, Combinatorica 7, 1087, 105–113.

R. Murphey, P. M. Pardalos, and L. S. Pitsoulis, A GRASP for the Multitarget Multisensor Tracking Problem, in Network Design: Connectivity and Facilities Location, P. M. Pardalos and D.-Z. Du, eds., DIMACS Series on Discrete Mathematics and Theoretical Computer Science 40, AMS, Providence, RI, 1998, pp. 277–302.

R. Murphey, P. M. Pardalos, and L. S. Pitsoulis, A Parallel GRASP for the Data Association Multidimensional Assignment Problem, in Parallel Processing of Discrete Problems, The IMA Volumes in Mathematics and its Applications 106, Springer Verlag, 1998, pp. 159–180.

B. Neng, Zur Erstellung von optimalen Triebfahrzeugplänen, Zeitschrift für Operations Research 25 , 1981, B159 - B185.

B. Olin, Asymptotic Properties of Random Assignment Problems, Ph.D. Thesis, Division of Optimization and Systems Theory, Department of Mathematics, Royal Institute of Technology, Stockholm, 1992.

J. B. Orlin, On the simplex algorithm for networks and generalized networks, Mathematical Programming Studies 24, 1985, 166–178.

J. B. Orlin and R. K. Ahuja, New scaling algorithms for the assignment and minimum cycle mean problems, Mathematical Programming 54, 1992, 41–56.

E. S. Page, A note on assignment problems, Computer Journal 6, 1963, 241–243.

K. Paparrizos, A non-dual signature method for the assignment problem and a generalization of the dual simplex method for the transportation problem, RAIRO Operations Research 22 , 1988, 269–289.

K. Paparrizos, A relaxation column signature method for assignment problems, European Journal of Operational Research 50 , 1991, 21 1219.

K. Paparrizos, An infeasible (exterior point) simplex algorithm for assignment problems, Mathematical Programming 5 1, 1991, 45–54.

P. M. Pardalos and K. G. Ramakrishnan, On the expected value of random assignment problems: Experimental results and open questions, Computational Optimization and Applications 2 , 1993, 261–271.

J. Peters, The network simplex method on a multiprocessor, Networks 20 , 1990, 845–859.

U. Pferschy, The random linear bottleneck assignment problem, RAIRO Operations Research 30, 1996, 127–142.

U. Pferschy, Solution methods and computational investigations for the linear bottleneck assignment problem, Computing 59, 1997, 237258.

C. Phillips and S. Zenios, Experiences with large scale network optimization on the connection machine, in The Impact of Recent Computing Advances on Operations Research, Operations Research Series 9 , Elsevier, 1989, pp. 169–180.

W. P. Pierskalla, The tri-substitution method for the three- multidimensional assignment problem, Canadian ORS Journal 5 , 1967, 71–81.

W. P. Pierskalla, The multidimensional assignment problem. Operations Research 16, 1968, 422–431.

A. B. Poore, Multidimensional assignment formulation of data association problems arising from multitarget and multisensor tracking, Computation Optimization and Application 3 , 1994, 27–54.

A. B. Poore, A numerical study of some data association problems arising in multitarget tracking, in Large Scale Optimization: State of the Art, W. W. Hager, D. W. Hearn, and P. M. Pardalos, eds., Kluwer Academic Publishers, Dordrecht, The Netherlands, 1994, pp. 339–361.

A. B. Poore and N. Rijavec, Partitioning multiple data sets: multidimensional assignments and Lagrangian relaxation, in Quadratic assignment and related problems, P. M. Pardalos and H. Wolkowicz, eds., DIMACS Series in Discrete Mathematics and Theoretical Computer Science 16, AMS, Providence, RI, 1994, pp. 317–342.

A. B. Poore, N. Rijavec, M. Liggins, and V. Vannicola, Data association problems posed as multidimensional assignment problems: problem formulation, in Signal and Data Processing of Small Targets, O. E. Drummond ed., SPIE, Bellingham, WA, 1993, pp. 552–561.

A. B. Poore and A. J. Robertson III, A new Lagrangean relaxation based algorithm for a class of multidimensional assignment problems, Computational Optimization and Applications 8 , 1997, 129–150.

J. Pusztaszeri, P. E. Reusing, and T. M. Liebling, Tracking elementary particles near their primary vertex: a combinatorial approach, Journal of Global Optimization 16 , 1995, 422–431.

A. P. Punnen and K. P. K. Nair, Improved complexity bound for the maximum cardinality bottleneck bipartite matching problem, Discrete Applied Mathematics 55 , 1994, 91–93.

L. Qi, E. Balas, and G. Gwan, A new facet class and a polyhedral method for the three-index assignment problem, in Advances in Optimization, D.-Z. Du ed., Kluwer Academic Publishers, 1994, pp. 256–274.

K. G. Ramakrishnan, N. K. Karmarkar, and A. P. Kamath, An approximate dual projective algorithm for solving assignment problems, in Network flows and matching- First DIMACS Implementation Challenge, D. S. Johnson and C. C. McGeoch, eds., DIMACS Series in Discrete Mathematics and Theoretical Computer Science 12, AMS, Providence, RI, 1993, pp. 431–449.

F. Rendi, On the complexity of decomposing matrices arising in satellite communication, Operations Research Letters 4 , 1985, 5–8.

E. Roohy-Laleh, Improvements to the theoretical efficiency of the network simplex method, Ph.D. Thesis, Carleton University, Ottawa, 1980.

G. Rote and F. Rendi, Minimizing the density in lay-out design, Operations Research Letters 5 , 1986, 111–118.

J. Shao and W. Wei, A formula for the number of Latin squares, Discrete Mathematics 110 , 1992, 293–296.

J. T. Schwarz, Fast probabilistic algorithms for verification of polynomial identities, Journal of the ACM 27 , 1980, 701–717.

V. Srinivasan and G. L. Thompson, Cost operator algorithms for the transportation problem, Mathematical Programming 12 , 1977, 37 2391.

R. E. Tarjan, Data Structures and Network Algorithms, SIAM, Philadelphia, PA, 1983.

G. L. Thompson, A recursive method for solving assignment problems, in Studies on Graphs and Discrete Programming, Annals of Discrete Mathematics 11, P. Hansen ed., North Holland, Amsterdam, 1981, 319–343.

W. T. Tutte, The factorization of linear graphs, Journal of the London Mathematical Society 22 , 1947, 107–111.

L. G. Valiant, The complexity of computing the permanent, Theoretical Computer Science 8 , 1979, 189–201.

M. Vlach, Branch and bound method for the three-index assignment problem, Ekonomicko-Matematicky Obzor 12 , 1967, 181–191.

A. Volgenant, Linear and semi-assignment problems: A core oriented approach, Computers of Operations Research 23 , 1996, 917–932.

D. W. Walkup, On the expected value of a random assignment problem, SIAM Journal on Computing 8 , 1979, 440–442.

D. W. Walkup, Matching in random regular bipartite digraphs, Discrete Mathematics 31 , 1980, 59–64.

J. Wein and S. Zenios, Massively parallel auction algorithms for the assignment problem, Proceedings of the 3-rd Symposium on the Frontiers of Massively Parallel Computations, 1990, pp. 90–99.

J. Wein and S. Zenios, On the massively parallel solution of the assignment problem, Journal of the Parallel and Distributed Computing 13 , 1991, 221–236.

G. J. Woeginger, private communication.

H. Zaki, A comparison of two algorithms for the assignment problem, Technical Report ORL 90–002, Department of Mechanical and industrial Engineering, University of Illinois, Champaign-Urbana, IL, 1990.

Download references

Author information

Authors and affiliations.

Institute of Mathematics, Technical University Graz, Steyrergasse 30, A-8010, Graz, Austria

Rainer E. Burkard & Eranda Çela

You can also search for this author in PubMed   Google Scholar

Editor information

Editors and affiliations.

Department of Computer Science, University of Minnesota, USA

Ding-Zhu Du

Institute of Applied Mathematics, Academia Sinica, P. R. China

Department of Industrial and Systems Engineering, University of Florida, USA

Panos M. Pardalos

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer Science+Business Media Dordrecht

About this chapter

Burkard, R.E., Çela, E. (1999). Linear Assignment Problems and Extensions. In: Du, DZ., Pardalos, P.M. (eds) Handbook of Combinatorial Optimization. Springer, Boston, MA. https://doi.org/10.1007/978-1-4757-3023-4_2

Download citation

DOI : https://doi.org/10.1007/978-1-4757-3023-4_2

Publisher Name : Springer, Boston, MA

Print ISBN : 978-1-4419-4813-7

Online ISBN : 978-1-4757-3023-4

eBook Packages : Springer Book Archive

Share this chapter

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

  • Publish with us

Policies and ethics

  • Find a journal
  • Track your research

Stack Exchange Network

Stack Exchange network consists of 183 Q&A communities including Stack Overflow , the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Q&A for work

Connect and share knowledge within a single location that is structured and easy to search.

Formulation of Assignment problem as integer programming

We need to maintain as quickly as possible a complex system. In particular, we need to replace six of its components $\{P_1,\ldots,P_6\}$ . We have three 3D printers $\{M_1,M_2,M_3\}$ which we can use to fabricate the six components. The following table/matrix states how long it takes (in minutes) the $i$ th printer to print the $j$ th component:

\begin{array}{ccccccc} \hline & P_1& P_2&P_3&P_4&P_5&P_6 \\ \hline M_1 & 23 & 42 & 12 & 32 & 47 & 60\\ M_2 & 25& 37& 13& 37& 51& 64\\ M_3 & 27 &51 &15& 41 &57 &55\\ \hline \end{array}

The complex system will work again only when all the components have been printed. Clearly more components can (and have to be) assigned to single machines and they are made in a sequence, one after the other, and 3D printers can work in parallel. However, you have only two operators and therefore you can only use two machines. How to formulate the problem as a linear (but combinatorial) optimization problem to allocate components to (two out of three) 3D printers so that the maintenance time is minimized.

So far I have tried the following, but I am not quite sure (Please I need help if I was mistaken):

Let $x_{ij}= 1$ if machine $i$ is assigned to component $j$ , $0$ otherwise. The model is \begin{align}\min&\quad23x_{11}+42x_{12}+...+55x_{36}\\\text{s.t.}&\quad x_{11}+x_{12}+x_{13}+x_{14}+x_{15}+x_{16} = 2\\&\quad x_{21}+x_{22}+x_{23}+x_{24}+x_{25}+x_{26} = 2\\&\quad x_{31}+x_{32}+x_{33}+x_{34}+x_{35}+x_{36} = 2\\&\quad x_{11}+x_{21}+x_{31} \ge 1\\&\quad x_{12}+x_{22}+x_{32} \ge 1\\&\quad x_{13}+x_{23}+x_{33} \ge 1\\&\quad x_{14}+x_{24}+x_{34} \ge 1\\&\quad x_{15}+x_{25}+x_{35} \ge 1\\&\quad x_{16}+x_{26}+x_{36} \ge 1\\&\quad x_{ij}\,\,\text{is binary}.\end{align}

  • integer-programming
  • combinatorial-optimization

TheSimpliFire's user avatar

  • 1 $\begingroup$ "The complex system will work again only when all the components have been printed." Does that mean you'd like the system to end as soon as possible? (Thinking of the objective function here). Besides this, I think this could better be formulated as a scheduling problem on parallel machines, with the additional constraint that only 2 of the 3 machines are used. $\endgroup$ –  dhasson Commented Jul 2, 2020 at 13:37
  • $\begingroup$ The Generalized Assignment Problem can serve as inspiration to continue, it's the same you are doing but change the first 3 constraints where every machine is made to print 2 components. First of all, the objective function is total working time of the machines. Instead you want to minimize the makespan (maximum time to finish all jobs), so that system can work again as soon as possible. Second, you may add binary variables $z_i = 1$ if machine $i$ is used, with additional constraints for $\sum_i z_i = 2$ and linking $x$ and $z$. $\endgroup$ –  dhasson Commented Jul 2, 2020 at 15:30
  • 1 $\begingroup$ Are you assuming that one machine will never be used, or that operators will move among machines such that all machines might be used at some point, but never more than two running at any given time? $\endgroup$ –  prubin ♦ Commented Jul 2, 2020 at 15:57
  • $\begingroup$ @user3752, as dhasson mentioned, it sounds like a parallel machine scheduling problem. Would you see this link? $\endgroup$ –  A.Omidi Commented Jul 3, 2020 at 10:41

Since you mention that you want to operate two out of three machines, it boils down to a problem where you first pick two machines and then perform a standard $R2||C_{\max}$ parallel machine scheduling problem with the two machines that you selected. Such problems are very suitable for dynamic programming/column generation approaches, but your instance is so small that a IP will work fine. And since you ask for an IP, let us consider a straightforward way to model it.

For a formulation, consider the following decision variables: $$y_j = \left\{ \begin{array}{ll} 1 & \mbox{ if } M_j \mbox{ is being operated } \\ 0 & \mbox{otherwise} \end{array} \right.$$ and $$x_{ij} = \left\{ \begin{array}{ll} 1 & \mbox{ if } P_i \mbox{ is made on } M_j \\ 0 & \mbox{otherwise} \end{array}\right.$$ Also, let's assume that $a_{ij}$ is the time needed to produce $P_i$ on $M_j$ .

Now the following IP can be formulated: $$\begin{array}{llll} \min & z \\ \mbox{s.t.} & \sum_{j} y_j & \leq K \\ & \sum_{j} x_{ij} & = 1 & \forall i \\ & x_{ij} & \leq y_j & \forall i \forall j \\ & \sum_i a_{ij} x_{ij} & \leq z & \forall j \\ & x_{ij} \in \{0,1\} & & \forall i \forall j \\ & y_j \in \{0,1\} & & \forall j \\ & z \in \mathbb{R} \end{array}$$ Where the objective variable $z$ represents the makespan, the first constraint states that at most $K$ machines can be used (in your instance, $K=2$ , i.e. $K$ is the number of operators), the second constraint states that each $P_i$ must be executed on exactly one $M_j$ , the third constraint states that a $P_i$ can only be produced on a $M_j$ if that $M_j$ is being operated and the fourth constraint states that the makespan $z$ should be at least the time spent on each individual machine.

If you want to allow operators to switch between machines, the problem becomes more complicated, as you need to make sure that both an operator and a machine is available when you produce an item; you probably need to keep track of both the operator and the machine resources in your model and define constraints to avoid conflicts for which you may or may not need to determine an order as well.

RobPratt's user avatar

Your Answer

Sign up or log in, post as a guest.

Required, but never shown

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy .

Not the answer you're looking for? Browse other questions tagged integer-programming combinatorial-optimization or ask your own question .

  • Featured on Meta
  • Bringing clarity to status tag usage on meta sites
  • Announcing a change to the data-dump process

Hot Network Questions

  • Lore reasons for being faithless
  • Conservation of the determinant of density matrix
  • Best way to explain the thinking steps from x² = 9 to x=±3
  • Flight delayed, risk of missing connection, can I cancel and get refund?
  • Who owns code contributed to a license-free repository?
  • Can an APK be installed from a URI via `adb`?
  • Is it a date format of YYMMDD, MMDDYY, and/or DDMMYY?
  • Risks of exposing professional email accounts?
  • Replace a string in a script without modifying the file, and then to execute it
  • Driving relay without a control Fet: Back EMF consideration when control side is Grounded
  • Could there be a runaway thermonuclear fusion in ocean of heavy water?
  • How is an inverting opamp adder circuit able to regulate its feedback?
  • Can it be acceptable to take over CTRL + F shortcut in web app
  • Why are orthonitrate ions not found in nature?
  • Why is the wiper fluid hose on the Mk7 Golf covered in cloth tape?
  • How to reproduce this equation itemization?
  • Did Gandalf know he was a Maia?
  • Driveway electric run using existing service poles
  • What is the translation of a code monkey in French?
  • Doesn't counting hole and electron current lead to double-counting of actual current?
  • Is consciousness a prerequisite for knowledge?
  • Wasserstein distance and put function
  • All four children have England birth index page changes
  • Why is simpler prose more popular these days?

formulation of assignment problem

OPERATIONS RESEARCH

Lesson 8. introduction and mathematical formulation.

Current course

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.

WHAT IS ASSIGNMENT PROBLEM

Assignment Problem is a special type of linear programming problem where the objective is to minimise the cost or time of completing a number of jobs by a number of persons.

The assignment problem in the general form can be stated as follows:

“Given n facilities, n jobs and the effectiveness of each facility for each job, the problem is to assign each facility to one and only one job in such a way that the measure of effectiveness is optimised (Maximised or Minimised).”

Several problems of management has a structure identical with the assignment problem.

Example I A manager has four persons (i.e. facilities) available for four separate jobs (i.e. jobs) and the cost of assigning (i.e. effectiveness) each job to each ...

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.

Cover of Software Architecture Patterns

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.

formulation of assignment problem

Quadratic assignment problem

Author: Thomas Kueny, Eric Miller, Natasha Rice, Joseph Szczerba, David Wittmann (SysEn 5800 Fall 2020)

  • 1 Introduction
  • 2.1 Koopmans-Beckman Mathematical Formulation
  • 2.2.1 Parameters
  • 2.3.1 Optimization Problem
  • 2.4 Computational Complexity
  • 2.5 Algorithmic Discussions
  • 2.6 Branch and Bound Procedures
  • 2.7 Linearizations
  • 3.1 QAP with 3 Facilities
  • 4.1 Inter-plant Transportation Problem
  • 4.2 The Backboard Wiring Problem
  • 4.3 Hospital Layout
  • 4.4 Exam Scheduling System
  • 5 Conclusion
  • 6 References

Introduction

The Quadratic Assignment Problem (QAP), discovered by Koopmans and Beckmann in 1957 [1] , is a mathematical optimization module created to describe the location of invisible economic activities. An NP-Complete problem, this model can be applied to many other optimization problems outside of the field of economics. It has been used to optimize backboards, inter-plant transportation, hospital transportation, exam scheduling, along with many other applications not described within this page.

Theory, Methodology, and/or Algorithmic Discussions

Koopmans-beckman mathematical formulation.

Economists Koopmans and Beckman began their investigation of the QAP to ascertain the optimal method of locating important economic resources in a given area. The Koopmans-Beckman formulation of the QAP aims to achieve the objective of assigning facilities to locations in order to minimize the overall cost. Below is the Koopmans-Beckman formulation of the QAP as described by neos-guide.org.

Quadratic Assignment Problem Formulation

{\displaystyle F=(F_{ij})}

Inner Product

{\displaystyle A,B}

Note: The true objective cost function only requires summing entries above the diagonal in the matrix comprised of elements

{\displaystyle F_{i,j}(X_{\phi }DX_{\phi }^{T})_{i,j}}

Since this matrix is symmetric with zeroes on the diagonal, dividing by 2 removes the double count of each element to give the correct cost value. See the Numerical Example section for an example of this note.

Optimization Problem

With all of this information, the QAP can be summarized as:

{\displaystyle \min _{X\in P}\langle F,XDX^{T}\rangle }

Computational Complexity

QAP belongs to the classification of problems known as NP-complete, thus being a computationally complex problem. QAP’s NP-completeness was proven by Sahni and Gonzalez in 1976, who states that of all combinatorial optimization problems, QAP is the “hardest of the hard”. [2]

Algorithmic Discussions

While an algorithm that can solve QAP in polynomial time is unlikely to exist, there are three primary methods for acquiring the optimal solution to a QAP problem:

  • Dynamic Program
  • Cutting Plane

Branch and Bound Procedures

The third method has been proven to be the most effective in solving QAP, although when n > 15, QAP begins to become virtually unsolvable.

The Branch and Bound method was first proposed by Ailsa Land and Alison Doig in 1960 and is the most commonly used tool for solving NP-hard optimization problems.

A branch-and-bound algorithm consists of a systematic enumeration of candidate solutions by means of state space search: the set of candidate solutions is thought of as forming a rooted tree with the full set at the root. The algorithm explores branches of this tree, which represent subsets of the solution set. Before one lists all of the candidate solutions of a branch, the branch is checked against upper and lower estimated bounds on the optimal solution, and the branch is eliminated if it cannot produce a better solution than the best one found so far by the algorithm.

Linearizations

The first attempts to solve the QAP eliminated the quadratic term in the objective function of

{\displaystyle min\sum _{i=1}^{n}\sum _{j=1}^{n}c{_{\phi (i)\phi (j)}}+\sum _{i=1}^{n}b{_{\phi (i)}}}

in order to transform the problem into a (mixed) 0-1 linear program. The objective function is usually linearized by introducing new variables and new linear (and binary) constraints. Then existing methods for (mixed) linear integer programming (MILP) can be applied. The very large number of new variables and constraints, however, usually poses an obstacle for efficiently solving the resulting linear integer programs. MILP formulations provide LP relaxations of the problem which can be used to compute lower bounds.

Numerical Example

Qap with 3 facilities.

{\displaystyle D={\begin{bmatrix}0&5&6\\5&0&3.6\\6&3.6&0\end{bmatrix}}}

Cost for Each Permutation in
Permutation Cost
(123) 91.4
99.8
98.4
86.5
103.3
90

{\displaystyle \phi _{4}=(13)}

Applications

Inter-plant transportation problem.

The QAP was first introduced by Koopmans and Beckmann to address how economic decisions could be made to optimize the transportation costs of goods between both manufacturing plants and locations. [1] Factoring in the location of each of the manufacturing plants as well as the volume of goods between locations to maximize revenue is what distinguishes this from other linear programming assignment problems like the Knapsack Problem.

The Backboard Wiring Problem

As the QAP is focused on minimizing the cost of traveling from one location to another, it is an ideal approach to determining the placement of components in many modern electronics. Leon Steinberg proposed a QAP solution to optimize the layout of elements on a blackboard by minimizing the total amount of wiring required. [4]

When defining the problem Steinberg states that we have a set of n elements

{\displaystyle E=\left\{E_{1},E_{2},...,E_{n}\right\}}

as well as a set of r points

{\displaystyle P_{1},P_{2},...,P_{r}}

In his paper he derives the below formula:

{\displaystyle min\sum _{1\leq i\leq j\leq n}^{}C_{ij}(d_{s(i)s(j))})}

In his paper Steinberg a backboard with a 9 by 4 array, allowing for 36 potential positions for the 34 components that needed to be placed on the backboard. For the calculation, he selected a random initial placement of s1 and chose a random family of 25 unconnected sets.

The initial placement of components is shown below:

formulation of assignment problem

After the initial placement of elements, it took an additional 35 iterations to get us to our final optimized backboard layout. Leading to a total of 59 iterations and a final wire length of 4,969.440.

formulation of assignment problem

Hospital Layout

Building new hospitals was a common event in 1977 when Alealid N Elshafei wrote his paper on "Hospital Layouts as a Quadratic Assignment Problem". [5] With the high initial cost to construct the hospital and to staff it, it is important to ensure that it is operating as efficiently as possible. Elshafei's paper was commissioned to create an optimization formula to locate clinics within a building in such a way that minimizes the total distance that a patient travels within the hospital throughout the year. When doing a study of a major hospital in Cairo he determined that the Outpatient ward was acting as a bottleneck in the hospital and focused his efforts on optimizing the 17 departments there.

Elshafei identified the following QAP to determine where clinics should be placed:

{\displaystyle min\sum _{i,j}\sum _{k,q}f_{ik}d_{jq}y_{ij}y_{kq}}

For the Cairo hospital with 17 clinics, and one receiving and recording room bringing us to a total of 18 facilities. By running the above optimization Elshafei was able to get the total distance per year down to 11,281,887 from a distance of 13,973,298 based on the original hospital layout.

Exam Scheduling System

The scheduling system uses matrices for Exams, Time Slots, and Rooms with the goal of reducing the rate of schedule conflicts. To accomplish this goal, the “examination with the highest cross faculty student is been prioritized in the schedule after which the examination with the highest number of cross-program is considered and finally with the highest number of repeating student, at each stage group with the highest number of student are prioritized.” [6]

{\displaystyle n!}

  • ↑ 1.0 1.1 1.2 Koopmans, T., & Beckmann, M. (1957). Assignment Problems and the Location of Economic Activities. Econometrica, 25(1), 53-76. doi:10.2307/1907742
  • ↑ 2.0 2.1 Quadratic Assignment Problem. (2020). Retrieved December 14, 2020, from https://neos-guide.org/content/quadratic-assignment-problem
  • ↑ 3.0 3.1 3.2 Burkard, R. E., Çela, E., Pardalos, P. M., & Pitsoulis, L. S. (2013). The Quadratic Assignment Problem. https://www.opt.math.tugraz.at/~cela/papers/qap_bericht.pdf .
  • ↑ 4.0 4.1 Leon Steinberg. The Backboard Wiring Problem: A Placement Algorithm. SIAM Review . 1961;3(1):37.
  • ↑ 5.0 5.1 Alwalid N. Elshafei. Hospital Layout as a Quadratic Assignment Problem. Operational Research Quarterly (1970-1977) . 1977;28(1):167. doi:10.2307/300878
  • ↑ 6.0 6.1 Muktar, D., & Ahmad, Z.M. (2014). Examination Scheduling System Based On Quadratic Assignment.

Navigation menu

Leveraging Computational Thinking in the Era of Generative AI

What is the value of computational thinking in the era of GenAI?

vintage toy robot

  • Hacker News
  • Join the Discussion

Computational thinking was first introduced by Papert (1980), and a quarter of a century later, was illuminated and elaborated by Wing (2006). In August 2022, the concept of computational thinking was revisited by Mike et al., this time from the data science perspective (Mike et al., 2022). A few months later, in November 2022, OpenAI launched ChatGPT, which was the first signal of a new storm—Generative AI, or GenAI—that has changed many domains of our lives since then. Specifically, in the context of our discussion, GenAI applications re-raised the discussion about the necessity of computational thinking in general; and in particular, in the context of CS and data science as well as CS education.

Indeed, is computational thinking relevant in the era of GenAI? After all, if the technology does the programming work and the data analysis, what is the added value of computational thinking? Herein, we argue that not only does the importance of computational thinking increase, but moreover, as everyone uses GenAI, computational thinking becomes an essential skill for all, as it is manifests in a new form—prompt engineering—that all users of GenAI are required to master.

Computational Thinking

Computational thinking is shaped in terms of the questions “What can humans do better than computers? And what can computers do better than humans?” (Wing, 2006), which a flood of papers have sought to answer and define which human cognitive and social skills are required for problem-solving processes in general, and for solving computational problems in particular. Today, the following skills are recognized as key components of computational thinking: problem formulation; problem decomposition; organization and logical analysis of data; data representation using models and simulations; abstraction; suggestion and assessment of multiple solutions to a given problem; implementation of the chosen solution; and generalization (e.g., Wing, 2010). Computational thinking skills are recognized today as important not only in the context of CS, but also as important skills for everyone in the 21 st century, and can be applied in various contexts (Günbatar, 2019; Wing, 2017).

Prompt Engineering

Prompt engineering refers to the “systematic practice of constructing prompts to improve the generated output of a generative model” (Dang et al., 2022). Prompt engineering is a new field of research, asking what the best practices are for shaping prompts for GenAI tasks in general, and for programming tasks in particular (Oppenlaender et al., 2023). From an educational perspective, researchers ask how to teach prompt engineering, and how to evaluate the results of such teaching and learning processes (Denny et al., 2023, 2024). Currently, for the majority of end users, writing effective prompts is largely a trial-and-error process (Dang et al., 2022). Massive online open courses (MOOCs) suppliers, such as Coursera, now offer courses in prompt engineering ( https://www.coursera.org/learn/prompt-engineering-for-web-developers) that include topics such as breaking tasks into smaller steps, prompt iterativity, generating code with pseudocode, and test and edge cases. Figure 1 presents ChatGPT’s advice for the best practices for prompting.

formulation of assignment problem

Figure 1. Best practices for prompting: ChatGPT’s answer

Interactions between Computational Thinking and Prompt Engineering in Computer Science Education

GenAI apps are becoming an inevitable technology in the field of CS education (Armoni and Hazzan, in press). Students use them to learn, debug, and solve short coding exercises, wherein these apps excel. We suggest GenAI apps facilitate new opportunities for learning and teaching (Denny et al., 2022; Yilmaz and Karaoglan Yilmaz, 2023), and that therein, the importance of computational thinking increases due to its strong interaction with prompt engineering, as illustrated in Figure 2.

formulation of assignment problem

It has been found that learning how to prompt enhances the learning of several computational thinking skills. Specifically, students who use GenAI should describe clearly the steps needed to solve a problem (Denny et al., 2023), focus on the algorithm to determine its subprograms, and combine the sub-solutions into the entire solution (Yilmaz and Karaoglan Yilmaz, 2023). Efficient prompting can accordingly be viewed as writing pseudocode (Denny et al., 2022). After all, shaping prompts to produce specific results is a problem-solving process, and hence requires computational thinking.

To test the degree of resemblance between computational thinking and prompt engineering, we replaced “computational thinking” with “prompt engineering” in Wing’s paper (Wing, 2006), with the following results:

  • Prompt engineering “is interpreting code as data and data as code.” (p. 33) as the prompt data should be treated as code, since efficient prompting is writing pseudocode; on the other hand, the prompt pseudocode is data for the LLM.
  • Prompt engineering “is using abstraction and decomposition when attacking a large complex task.” (p. 33) as to implement large complex systems, the task should be broken down into small sub-tasks, each of them then articulated by a prompt.
  • Prompt engineering “is having the confidence [that] we can safely use, modify, and influence a large complex system without understanding its every detail.” (p. 33), as using pseudocode, instead of a specific programming language, enables to perform [sic] the task without the need to master the details of a specific language.
  • Finally, prompt engineering “is search, search, and more search, resulting in a list of Web pages, a strategy for winning a game, or a counterexample.” (p. 34) as efficient prompting involves experimenting with different prompts in learning processes and with iterative refinements.

Undergraduate CS Students’ Expressions of the Interrelationships between Computational Thinking and Prompt Engineering

Yael Erez, co-author of this blog, teaches an Introduction to Computer Science (CS1) course to CS undergraduate students. In the Fall 2023 semester, several tasks that involved problem-solving with the help of GenAI apps, such as ChatGPT, were assigned to the students. Two of these assignments are detailed in brief in Table 1.

formulation of assignment problem

Data collected using these assignments demonstrate the increased importance of computational thinking for prompt engineering:

  • When the students fix the incorrect cyclic shift with the help of ChatGPT (Assignment #1), not only does assessment of the app solutions enhance their computational thinking skills, such as critical thinking and program comprehension, but the computational thinking skill of problem formulation is required for prompt engineering.
  • When the students use the app to implement the contact list (Assignment #2), not only do the complexity and length of the implementation compel them, as part of the prompt engineering task, to decompose the problem into sub-problems, thereby enhancing their learning of the computational thinking skill of decomposition, but computational thinking skills such as successive refinement are required for prompt engineering.

While the above examples do not require the students to write code on their own, suggesting that GenAI apps may eliminate the need to master a specific language syntax, these tasks underscore the importance of students’ computational thinking, as the following data illustrates.

After each assignment submission, the students were asked to answer a questionnaire containing an open question: “Write down three new ideas that you learned from solving the question.” Many of the students’ answers to this question referred to the skills needed for solving programming problems with ChatGPT, demonstrating the strong interrelationships between computational thinking and prompt engineering.

One answer to the above-mentioned question was “Formulating the problem explicitly,” and another similar answer was “Accuracy in formulating requests,” indicating the importance of the computational thinking skill of problem formulation, and the importance of clarity and specificity for prompt engineering. Other students answered, “This time, unlike previous times, I sent it a few details each time and was able to lead it to solving the problem faster,” and “Reducing the problem to small tasks,” describing the problem decomposition phase of computational thinking and the iterative refinements of prompt engineering. Another student referred to system design and implementation, describing the process of “First understand the problem, and then direct the tools to solve the problem.” The computational thinking skills of critical thinking and solution evaluation required for prompt engineering were cited by another student, who wrote, “I knew what ChatGPT’s ability is, it doesn’t always answer correctly.”

Effective prompt engineering requires computational thinking skills such as problem formulation, problem decomposition, data organization and analysis, and suggestion and assessment of multiple solutions to a given problem. Accordingly, not only does experiencing prompt engineering improve our computational thinking skills, but computational thinking is required for prompt engineering.

These interactions between prompt engineering and computational thinking underscore the importance of computational thinking in the era of GenAI. While GenAI apps may facilitate programming tasks, even for complex systems, thereby eliminating the need to master a specific language syntax, they still lack computational thinking. Therefore, humans’ computational thinking is required in the GenAI era.

While we introduced the interactions between computational thinking and prompt engineering mainly in the context of CS, GenAI tools are available to all, and are widely used in fields other than CS, and by humans who are not computer scientists. For example, Koby Mike, co-author of this blog, teaches data science to social science graduate students. In these courses, following the incorporation of ChatGPT and prompt engineering in the course, while the volume of Python programming in the curriculum dramatically decreased, the volume of computational thinking expanded. This finding is aligned with Wing’s statement “Computational thinking is a fundamental skill for everyone, not just for computer scientists.” Continuing the exercise of replacing “computational thinking” with “prompt engineering” in Wing’s paper, evoking a discussion about computational thinking (Wing, 2006), the wide use of GenAI tools suggests that prompt engineering is a fundamental skill for everyone, not just for computer scientists.

When prompting efficiently, computational thinking is applied and improved, even for everyday tasks such as planning a trip, solving riddles, or knowledge expansion. If Wing wrote her viewpoint today, it would likely include the following: Computational thinking is required for having effective conversations with LLMs to solve problems efficiently and quickly. Hence Wing’s message to “make computational thinking commonplace” (Wing, 2006) has become a reality.

Armoni, Y. and Hazzan, O. (in press). The Inevitability of AI Technology in Education: Futurism Perspectives on Education in 10-20 years .

Dang, H., Mecke, L., Lehmann, F., Goller, S., and Buschek, D. (2022). How to Prompt? Opportunities and Challenges of Zero- and Few-Shot Learning for Human-AI Interaction in Creative Applications of Generative Models .

Denny, P., Becker, B. A., Leinonen, J., and Prather, J. (2023). Chat Overflow: Artificially Intelligent Models for Computing Education – renAIssance or apocAIypse? Proceedings of the 2023 Conference on Innovation and Technology in Computer Science Education V. 1 , 3–4. https://doi.org/10.1145/3587102.3588773

Denny, P., Kumar, V., and Giacaman, N. (2022). Conversing with Copilot: Exploring Prompt Engineering for Solving CS1 Problems Using Natural Language (arXiv:2210.15157). arXiv. http://arxiv.org/abs/2210.15157

Denny, P., Leinonen, J., Prather, J., Luxton-Reilly, A., Amarouche, T., Becker, B. A., and Reeves, B. N. (2024). Prompt Problems: A New Programming Exercise for the Generative AI Era. Proceedings of the 55 th ACM Technical Symposium on Computer Science Education V. 1 , 296–302. https://doi.org/10.1145/3626252.3630909

Günbatar, M. S. (2019). Computational thinking within the context of professional life: Change in CT skill from the viewpoint of teachers. Education and Information Technologies , 24 (5), 2629–2652. https://doi.org/10.1007/s10639-019-09919-x

Mike, K., Ragonis, N., Rosenberg-Kima, R. B., and Hazzan, O. (2022). Computational Thinking in the Era of Data Science. Communications , 65 (8), 33–35. https://doi.org/10.1145/3545109

Oppenlaender, J., Linder, R., and Silvennoinen, J. (2023). Prompting AI Art: An Investigation into the Creative Skill of Prompt Engineering .

Papert, S. (1980). Mindstorms : Children, computers, and powerful ideas . Basic Books.

Wing, J. M. (2006). Computational Thinking. Communications , 49 (3), 33–35. https://doi.org/10.1145/1118178.1118215

Wing, J. M. (2010). Computational Thinking: What and Why? http://www.cs.cmu.edu/~CompThink/resources/TheLinkWing.pdf

Yilmaz, R., and Karaoglan Yilmaz, F. G. (2023). The Effect of Generative Artificial Intelligence (AI)-based Tool Use on Students’ Computational Thinking Skills, Programming Self-Efficacy and Motivation. Computers and Education: Artificial Intelligence , 4 , 100147. https://doi.org/10.1016/j.caeai.2023.100147

Yael Erez

Yael Erez is a lecturer in the Department of Computer Science of the Technion—Israel Institute of Technology, and a faculty member in the Department of Electrical Engineering of the Braude College of Engineering. She has BSc and MSc degrees in Electrical Engineering from the Technion, and is currently a Ph.D. student in the Technion’s Faculty of Education in Science and Technology.

Koby Mike

Koby Mike is a postdoctoral fellow in the Gender Studies program at Bar-Ilan University; he earned BSc and MSc degrees in Electrical Engineering from Tel Aviv University, and a Ph.D. in Education in Science and Technology from the Technion.

Orit Hazzan

Orit Hazzan is a professor at the Technion’s Faculty of Education in Science and Technology. Her research focuses on computer science, software engineering, and data science education; for additional details, see https://orithazzan.net.technion.ac.il/ . 

Submit an Article to CACM

CACM welcomes unsolicited submissions on topics of relevance and value to the computing community.

You Just Read

Related Reading

From Open Access to Guarded Trust

Security and Privacy

Can LLMs Really Reason and Plan?

Artificial Intelligence and Machine Learning

Safety Fears Raised Over Risks of ‘Penetrative AI’

Research and Advances

Computing Education in the Era of Generative AI

Advertisement

formulation of assignment problem

Join the Discussion (0)

Become a member or sign in to post a comment, the latest from cacm.

Everything You Always Wanted to Know About PCs, But Were Afraid to Ask

individuals at a conference table, illustration

How CrowdStrike Stopped Everything

volcano landslide, illustration

Shape the Future of Computing

ACM encourages its members to take a direct hand in shaping the future of the association. There are more ways than ever to get involved.

Communications of the ACM (CACM) is now a fully Open Access publication.

By opening CACM to the world, we hope to increase engagement among the broader computer science community and encourage non-members to discover the rich resources ACM has to offer.

IMAGES

  1. Operation Research 16: Formulation of Assignment Problem

    formulation of assignment problem

  2. Assignment Problem

    formulation of assignment problem

  3. PPT

    formulation of assignment problem

  4. Definition and formulation of Assignment Problem

    formulation of assignment problem

  5. MATHEMATICAL FORMULATION OF ASSIGNMENT PROBLEM BY DR KUNAL KHATRI #STATISTICS4ALL #ASSIGNMENT

    formulation of assignment problem

  6. PPT

    formulation of assignment problem

VIDEO

  1. mathematical formulation of assignment problem

  2. Assignment Problem Formulation

  3. Assignment problem

  4. September 16, 2021 Assignment problem| Part 2

  5. Assignment Problem ( Brute force method) Design and Analysis of Algorithm

  6. Assignment Part 1 (Decision Science) (Operations Research)

COMMENTS

  1. Assignment problem

    The assignment problem is a fundamental combinatorial optimization problem. In its most general form, the problem is as follows: ... While this formulation allows also fractional variable values, in this special case, the LP always has an optimal solution where the variables take integer values.

  2. Definition and formulation of Assignment Problem

    Definition and formulation. Consider the problem of assigning n jobs to n machines (one job to one machine). Let Cij be the cost of assigning ith job to the jth machine and xij represents the assignment of ith job to the jth machine. xij is missing in any cell means that no assignment is made between the pair of job and machine. (i.e) xij = 0.

  3. Assignment Problem: Meaning, Methods and Variations

    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 ...

  4. Assignment Problem

    This lecture discusses the assignment problemsOther videos @DrHarishGarg Assignment Problem - Mathematical Models: Link: https://youtu.be/OX1ssZez_sYHungaria...

  5. Assignment Problem (Part-1) Introduction/Formulation/Balanced ...

    In this video, we will discuss the introduction of Assignment Problem, and will also explore the possible ways to solve the Assignment Problem.

  6. The Assignment Problem

    In an assignment problem, we must find a maximum matching that has the minimum weight in a weighted bipartite graph. The Assignment problem. Problem description: 3 men apply for 3 jobs. Each applicant gets one job. The suitability of each candidate for each job is represented by a cost: The lower the cost ...

  7. Operation Research 16: Formulation of Assignment Problem

    Formulation of Assignment ProblemAn assignment problem is a special form of transportation problem where all supply and demand values equal one. A distinguis...

  8. Assignment problem

    The assignment problem arises when $ m = n $ and all $ a _ {i} $ and $ b _ {j} $ are $ 1 $. If all $ a _ {i} $ and $ b _ {j} $ in the transposed problem are integers, then there is an optimal solution for which all $ x _ {ij } $ are integers (Dantzig's theorem on integral solutions of the transport problem). In the assignment problem, for such ...

  9. Assignment Problem, Linear Programming

    Formulation of an assignment problem . Suppose a company has n persons of different capacities available for performing each different job in the concern, and there are the same number of jobs of different types. One person can be given one and only one job. The objective of this assignment problem is to assign n persons to n jobs, so as to ...

  10. PDF The Assignment Problem and the Hungarian Method

    Step 3. Draw lines through appropriate rows and columns so that all the zero entries of the cost matrix are covered and the minimum number of such lines is used. Step 4. Test for Optimality: (i) If the minimum number of covering lines is n, an optimal assignment of zeros is possible and we are finished.

  11. Assignment Problem in Linear Programming : Introduction and Assignment

    Mathematical Formulation: Any basic feasible solution of an Assignment problem consists (2n - 1) variables of which the (n - 1) variables are zero, n is number of jobs or number of facilities. Due to this high degeneracy, if we solve the problem by usual transportation method, it will be a complex and time consuming work. Thus a separate ...

  12. PDF Chapter8 ASSIGNMENT PROBLEM

    8.1 Introduction. An assignment problem is a particular case of transportation problem in which a number of operations are to be assigned to an equal number of operators, where each operator performs only one operation. The objective is to minimize overall cost or to maximize the overall profit for a given assignment schedule.

  13. Assignment problem

    1 Formulation of the problem. Suppose that there are [math]n[/math] agents and [math]m[/math] tasks, which can be distributed between these agents. Only one task can be assigned to each agent, and each task can be assigned to only one agent. The cost of assignment of the [math]i[/math]-th task to the [math]j[/math]-th agent is [math]c(i, j)[/math].If [math]c(i, j) = \infty[/math], then the ...

  14. Assignment Problem

    It may be observed from the above formulation that AP is a special type of Linear programming problem. Unbalanced Assignment Problem. If the cost matrix of an assignment problem is not a square matrix, the assignment problem is called an Unbalanced Assignment Problem. In such a case, add dummy row or dummy column with zero cost in the cost ...

  15. Linear Assignment Problems and Extensions

    Assignment problems deal with the question how to assign n items (e.g. jobs) to n machines (or workers) in the best possible way. ... Data association problems posed as multidimensional assignment problems: problem formulation, in Signal and Data Processing of Small Targets, O. E. Drummond ed., SPIE, Bellingham, WA, 1993, pp. 552-561. Chapter ...

  16. Assignment problems: A golden anniversary survey

    Kouvelis and Yu [37] discuss the formulation of and present a solution procedure for the assignment problem under uncertainty, which they call the robust assignment problem. The key concept behind this approach to solving the AP is the decision maker's recognition that, in Kouvelis and Yu's words, "for any potentially realizable scenario ...

  17. A linear Programming Formulation of Assignment Problems

    2. Mathemtical LP Model for assignment problem. Some linear programming models for the assignment problem is presented .It is assumed that the cost (or time) for every machine is known denoting that: C. ij=is the cost of machining job(i)on machine(j). X. ij=is the element position in the job- machine matrix. X.

  18. Formulation of Assignment problem as integer programming

    $\begingroup$ The Generalized Assignment Problem can serve as inspiration to continue, it's the same you are doing but change the first 3 constraints where every machine is made to print 2 components. First of all, the objective function is total working time of the machines. Instead you want to minimize the makespan (maximum time to finish all jobs), so that system can work again as soon as ...

  19. Lesson 8. INTRODUCTION AND MATHEMATICAL FORMULATION

    8.3 Mathematical Formulation of Assignment Problem . Using the notations described above, the assignment problem consist of finding the values of X ij in order to minimize the total cost Subject to restrictions where X ij denotes the j th job to be assigned to the i th person. An assignment problem could thus be solved by Simplex Method.

  20. What is Assignment Problem

    Assignment Problem is a special type of linear programming problem where the objective is to minimise the cost or time of completing a number of jobs by a number of persons. The assignment problem in the general form can be stated as follows: "Given n facilities, n jobs and the effectiveness of each facility for each job, the problem is to ...

  21. Quadratic assignment problem

    The Koopmans-Beckman formulation of the QAP aims to achieve the objective of assigning facilities to locations in order to minimize the overall cost. Below is the Koopmans-Beckman formulation of the QAP as described by neos-guide.org. Quadratic Assignment Problem Formulation Parameters

  22. PDF Exact extended formulation of the linear assignment problem (LAP

    The proposed model is a more direct extended formulation of the linear assignment problem (LAP) polytope, compared to the O(n9) models in Diaby (2007) and Diaby and Karwan (2016). It does not model arcs explicitly, but it incidentally ts closely within the \generic

  23. Mathematical Formulation of the Problem

    A mathematical formulation of assignment problem. The assignment problem is a linear programming problem that entails allocating resources to individual tasks. It does so that the process's cost or time is kept to a minimum while the profit or sale is maximised. Though similar problems can be handled using simplex or transportation methods ...

  24. Leveraging Computational Thinking in the Era of Generative AI

    When the students fix the incorrect cyclic shift with the help of ChatGPT (Assignment #1), not only does assessment of the app solutions enhance their computational thinking skills, such as critical thinking and program comprehension, but the computational thinking skill of problem formulation is required for prompt engineering.

  25. arXiv:2408.16890v1 [cs.RO] 29 Aug 2024

    The TDS-CW consists of a large-scale assignment problem governing task design and scheduling decisions. The reliance on multi-dimensional assignment variables enables a strong integer opti-mization formulation, with a tight linear relaxation. However, the sheer size of the model makes it highly challenging.