Exploiting Structure in the Bottleneck Assignment Problem
Abstract
An assignment problem arises when there exists a set of tasks that must be allocated to a set of agents. The bottleneck assignment problem (BAP) has the objective of minimising the most costly allocation of a task to an agent. Under certain conditions the structure of the BAP can be exploited such that subgroups of tasks are assigned separately with lower complexity and then merged to form a combined assignment. In particular, we discuss merging the assignments from two separate BAPs and use the solution of the subproblems to bound the solution of the combined problem. We also provide conditions for cases where the solution of the subproblems produces an exact solution to the BAP over the combined problem. We then introduce a particular algorithm for solving the BAP that takes advantage of this insight. The methods are demonstrated in a numerical case study.
keywords:
Algorithms; Decision-making; Graph theory; Agents; Optimization problems.1 Introduction
An assignment problem arises when multiple tasks are to be allocated to multiple agents. For example, situations where jobs are to be assigned to a group of workers or passengers positioned at different locations in a city are to be picked up by a fleet of cars. Tasks can be assigned based on many different criteria. See Gerkey and Matarić (2004), Burkard et al. (2009), and Pentico (2007) for reviews on the different objectives for assignment problems.
One particular objective is to assign tasks to agents such that the total cost of the assignment is minimised. This type of assignment problem is called the linear assignment problem (LAP). The Hungarian Method in Kuhn (1955) is a well-studied algorithm for solving the LAP. In Chopra et al. (2017), a distributed version of the Hungarian Method is presented; a distributed algorithm is one that does not rely on a centralised decision-maker for computation. In Bertsekas and Castañon (1991) and Zavlanos et al. (2008), so-called auction algorithms are presented to solve the LAP. A greedy algorithm is one where tasks are allocated to agents sequentially. Each allocation is made according to the lowest cost amongst the remaining choices. In Choi et al. (2009), the Consensus-Based Auction Algorithm (CBAA) is presented, which is a greedy algorithm used to obtain suboptimal solutions to the LAP with low computational cost compared to algorithms for solving the LAP exactly.
Another objective is to assign tasks to agents such that the costliest allocation is minimised, which corresponds to the bottleneck assignment problem (BAP). The BAP has application in time-critical problems. For example in Shames et al. (2017), a set of decoys must travel to a set of positions such that the worst-case positioning time is minimised. In Garfinkel (1971), a threshold algorithm is presented, where a threshold is iteratively increased until it is possible to find an assignment containing only allocations of tasks to agents with costs smaller than the threshold. In Gabow and Tarjan (1988); Punnen and Nair (1994), the bound on the completion time of the threshold algorithm is reduced moving the threshold according to a binary search pattern. In Derigs and Zimmermann (1978), an algorithm is presented that iteratively solves the BAP over an increasing subset of agents and tasks. The subset size is increased until it contains all the agents and tasks. In Khoo et al. (2019), a distributed algorithm for solving the BAP is introduced. There are other variants of the BAP. Such variants include the scheduling problems in Carraresi and Gallo (1984) and Aggarwal et al. (1986), which require assigning more than one task per agent. In fact, this can be regarded as an example of a time-extended assignment from the taxonomy in Gerkey and Matarić (2004).
In this paper, we focus on the BAP and restrict the scope to having each agent carry out at most one task and each task requiring at most one agent for completion. The contribution of this work is to investigate structure that can be exploited to solve the BAP efficiently. Consider partitioning the sets of agents and tasks, i.e., splitting the assignment problem into two smaller BAPs. We can use the two solutions of the subproblems for solving the combined BAP. Consider the following three ways to exploit the structure of the BAP. We relate each scenario to a ride-sharing application for illustration.
For the first scenario, assume the sets of agents and tasks were partitioned equitably, i.e., none of the subproblems has fewer tasks than agents. Merging the solutions of the two subproblems forms a valid but possibly suboptimal assignment in the combined problem. In fact, the cost of the merged assignment is an upper bound on the cost of the optimal BAP solution. In a ride-sharing application, two rival companies may assign their own vehicles to their own customers. However, they may find that pooling their resources allows a better service for all customers.
For the second scenario, we define a bottleneck cluster as a group of agents and tasks with small allocation costs amongst each other. When the two subproblems consist of two separate bottleneck clusters, we can determine conditions under which the solutions of the subproblems form an exact solution to the combined problem. Consider two cities each with their own sets of vehicles and customers. If the cities were geographically far apart, there is no benefit for vehicles in one city to serve customers in the other city.
The third scenario relates to the algorithm in Khoo et al. (2019). Knowing the solutions to the two subproblems leads to information about task-to-agents allocations that are particularly costly. We can eliminate suboptimal options when the algorithm is initialised to solve the combined problem. Assume a group of customers has been assigned to vehicles. Then, a new group of customers requests to be picked up. By only considering the idle vehicles for the new customers and not the previously assigned ones, the resulting assignment problem has lower complexity. The solution from the two subproblems can be used as a warm-start to solving the combined problem.
2 Preliminaries
Given an arbitrary undirected graph with vertex set and edge set , consider the following definitions found in Hopcroft and Karp (1973) and Khoo et al. (2019).
Definition 1 (Maximum Cardinality Matching)
A matching in is a set of edges such that and no vertex is incident with more than one edge in . A maximum cardinality matching (MCM) is a matching in of maximum cardinality.
Let be a set of agents and be a set of tasks, where . Consider an arbitrary complete bipartite graph with vertex set and edge set . Let be the set of all MCMs of . Let map edges to real-valued weights. The BAP for graph is formulated as
(1) |
Definition 2 (Bottleneck edge)
A bottleneck edge of graph is any , for any MCM that is a minimiser of .
Definition 3 (Neighbours)
The set of neighbours of vertex in is defined as .
Note that given a vertex , , .
Definition 4 (Path)
Let a sequence of distinct vertices be such that for , . The set of edges is then said to be a path between and , with length .
Definition 5 (Alternating path)
Given a matching and a path , is an alternating path relative to if and only if each vertex that is incident to an edge in is incident with no more than one edge in and no more than one edge in .
Definition 6 (Free vertex)
Given a matching , a vertex is free if and only if for all , .
Definition 7 (Augmenting path)
Given a matching and a path between vertices and , is an augmenting path relative to if and only if is an alternating path relative to and and are both free vertices.
Definition 8
(Alternating tree) Given a matching , is an alternating tree relative to if and only if is a tree and any path between the root vertex of and every other vertex in is an alternating path relative to .
3 Problem Formulation
Let there be two sets of agents and and two sets of tasks and . Define the sets and . Let and and assume and . For , define , and graph . Define , the set of solutions to for any bipartite graph .
Assumption 9
Assume we have and , i.e., an arbitrary solution to and a corresponding bottleneck edge of .
Assumption 10
Assume we have and , i.e., an arbitrary solution to and a corresponding bottleneck edge of .
4 Structure of the BAP
In this section, we discuss structures of the BAP that can be exploited. We first introduce an upper bound on the weight of a bottleneck edge of , in terms of the bottleneck edges and . Then, we introduce bottleneck clusters and provide conditions when the solution to Problem 11 is found by merging matchings and .
4.1 A Bound on the Optimal BAP Solution
Theorem 12
By definition, for any arbitrary . Since , .∎
Given Assumptions 9 and 10, the set is an MCM of . This MCM is possibly suboptimal to . However, this bound of the BAP allows us to make a decision before solving Problem 11 exactly. If the suboptimal solution is sufficient in our application, there is no need to invest further resources to solve Problem 11 exactly.
4.2 Bottleneck Clusters
We now introduce the novel concept of a bottleneck cluster. In Khoo et al. (2019), conditions for determining if an edge is a bottleneck edge of a given graph are presented. We build on this result and discuss corresponding conditions under which is an exact solution to when and are both bottleneck clusters.
Once again, consider an arbitrary complete bipartite graph . Given is an MCM of , we define , the union of and the set of edges that have weight strictly smaller than the largest edge in . With this tool we define a bottleneck cluster and a critical bottleneck edge.
Definition 13 (Bottleneck cluster)
Let be a solution to . Let be a bottleneck edge of . Graph is a bottleneck cluster relative to if and only if for any vertex , there exists an alternating path between and bottleneck task such that .
Definition 14 (Critical bottleneck edge)
Let be an MCM of graph . Edge is a critical bottleneck edge of relative to if and only if and does not contain an augmenting path relative to .
Lemma 15 allows us to find a new MCM, which will have at least one less edge with weight than .
Lemma 15 (Proof in Khoo et al. (2019))
Let be an arbitrary MCM of graph . Consider an edge . An augmenting path exists relative to if and only if there exists an MCM of such that .
Corollary 16
From Lemma 15, it follows that every critical bottleneck edge of is a bottleneck edge of .
An MCM that is a solution to may contain more than one critical bottleneck edge. The following proposition shows how a critical bottleneck edge forms a particular alternating path between the bottleneck agent and bottleneck task.
Assumption 17
Let be a solution to and let be a critical bottleneck edge of relative to .
Proposition 18
Consider Assumption 17. The length-one path is a unique alternating path in relative to between and .
Path is trivially an alternating path relative to ; edge , so . It remains to show that there does not exist another. Assume for contradiction that there exists an alternating path , relative to between and . It follows that and therefore . Furthermore, is an augmenting path relative to . By Definition 14, is not a critical bottleneck edge of , which contradicts Assumption 17. ∎
The following corollary describes the structure of a bottleneck cluster based on Proposition 18.
Corollary 19
Consider Assumption 17 and let be a bottleneck cluster with respect to the critical bottleneck edge . We form two subgraphs of , denoted as and . Let contain the bottleneck agent , and let contain the bottleneck task . Let and . By Definition 13, it must be possible to construct both and to be alternating trees such that . By Proposition 18, for all agents and for all tasks , .
Fig. 1 illustrates Corollary 19. The graph is represented by two alternating trees and with roots and respectively. The roots and are incident to the critical bottleneck edge with weight . All edges in both trees are elements of as their weights are smaller than or equal to and all edges not in the matching are strictly smaller than . Recall from Theorem 12 that . Given Assumptions 9 and 10, the contrapositive of the following lemma provides conditions for the bottleneck edge of graph to have equal weight to .
Lemma 20
Given Assumptions 9 and 10, assume both and are bottleneck clusters with respect to and respectively. Assume is a critical bottleneck edge of relative to and is a critical bottleneck edge of relative to . Let . If , then there exists vertices such that
-
i.
there exists an edge in with weight less than between agent and a task in the vertex set of subgraph , and
-
ii.
there exists an edge in with weight less than between task and an agent in the vertex set of subgraph , and
-
iii.
there exists an alternating path between and containing only edges with weight less than , and .
Without loss of generality, let . By Proposition 18, is the only alternating path between and in . Assume there does not exist vertices and such that all i., ii., and iii. are true. Thus, is the only alternating path between and in . By Definition 14, is also a critical bottleneck edge of since and there does not exist an augmenting path in relative to . Thus, . ∎
In general, the converse of Lemma 20 does not hold unless we apply some additional assumptions. This leads to the following theorem.
Theorem 21
Given Assumptions 9 and 10, assume both and are bottleneck clusters with respect to and respectively. Assume is a critical bottleneck edge of relative to and is a critical bottleneck edge of relative to . Assume that . Let be a singleton. It holds that if and only if there exists vertices such that conditions i., ii., and iii. from Lemma 20 are true.
The necessary condition for holds from Lemma 20. We now prove the sufficient condition. Assume there exists vertices and such that all i., ii., and iii. are true. Then, aside from path , there exists another alternating path between and , which does not contain the edge . Namely, the alternating path constructed from the union of the alternating paths between and , and , and , and , and and . Thus, there exists an augmenting path relative to . From Lemma 15, there exists an MCM of such that . By the assumptions on , contains only edges with weights strictly smaller than . Thus, there exists an MCM of with all edges having weight smaller than , i.e., must be smaller than . ∎
Fig. 2 illustrates the sufficient condition of Theorem 21. The orange dashed line is an edge that satisfies the condition i. since and there exists edge , where is a task in the vertex set of . The blue dashed line satisfies condition ii. since and there exists edge , where is an agent in the vertex set of . Condition iii. is satisfied since there is an alternating path between and , and , i.e., starts with a dashed line and ends with a dashed line. Corollary 22 follows from Theorem 12 and 21.
5 Algorithm for Solving the BAP
In this section, we discuss how the algorithm from Khoo et al. (2019) makes use of Assumptions 9 and 10 to solve Problem 11. Let us refer to this algorithm as pruneBAP. Fig. 3 is an illustration of this algorithm.
5.1 Warm-starting Versus Cold-starting pruneBAP
Solving Problem 11 by pruneBAP with an arbitrary MCM at initialisation does not make use of Assumptions 9 and 10. We denote this as a cold-start to pruneBAP. Given Assumptions 9 and 10, consider the following. It holds that the set is an MCM of the graph . Without loss of generality, let . Then, it also holds that is the largest edge in . We use make use of to solve Problem 1 by choosing it as the initial MCM of pruneBAP. Edges in the set are removed from in the first iteration. We denote this as a warm-start to pruneBAP. Fig. 4 illustrates a warm-start to pruneBAP.
Remark 23
Warm-starting is a heuristic, a warm-start does not guarantee fewer iterations for convergence to a solution to . For a cold-start, we choose an arbitrary initial MCM ; by chance this could be the solution to .
6 Case Studies
Consider agents and tasks represented by points in a vector space with a distance function . For example, this could be a ride-sharing application, where agents are vehicles and their tasks are to pick up customers. Here we consider a 2-dimensional space and Euclidean distance . Agents are to be assigned to move from their initial positions to target destinations based on the BAP with distance as weights.
6.1 Task Reassignment
Case Study 1
Let be the initial locations of a set of agents. Let be the set of goal locations. Assume . We first solve , where to determine an assignment of tasks to agents that minimises the worst-case distance an agent must travel to reach a goal location. Without loss of generality, assume vehicles at positions are assigned to goals at . Now assume that a second set of goal locations becomes available to agents. Let be the set of new goal locations. Assume that . Let be the locations of the remaining unassigned agents. We now assign the new goals to the remaining agents, i.e., solve , where .
By Theorem 12, the assignment obtained from solving and in Case Study 1 is not necessarily the optimal solution to , where . Fig. 5 shows a numerical example of a case where the optimal assignment is of lower cost than the assignment used to warm-start pruneBAP. For this example, , and . The data was generated using continuous uniform distributions with range for both coordinates and . Fig. 6 shows a plot of the average cost of the assignment used as warm-start to initialise pruneBAP and the average cost of the optimal assignment after pruneBAP has terminated. For all simulations, . For each even value of , 100 simulations were generated. We observe that the cost of the assignment obtained from the subproblems is never greater than the cost of an optimal solution to , in accordance with Theorem 12. In this case, the unstructured distribution of the locations results in all of the conditions in Theorem 21 being satisfied and we observe that as expected.


6.2 Clustering of Agents and Tasks
Case Study 2
Let and be the initial locations of two sets of agents. Let and be the sets of goal locations. Assume that and , i.e., there are more agents than there are goals. Assume the set of locations and are separated geographically from and .
In Case Study 2, we illustrate an example where not all of the conditions i., ii., and iii. in Lemma 20 hold. Fig. 7 shows a numerical example where the initial assignment used to warm-start pruneBAP is in fact the optimal assignment of to . In this example, , , and . The data in Fig. 7 was generated using independant normal distributions with a variance of 100 for each distribution. The distributions for sets and are centred at the point . The distributions for sets and are centred at the point . Fig. 8 shows the number of instances out of 100 simulations for which the behaviour in Fig. 7 is observed. That is, the instances where the bottleneck edges obtained from the subproblems directly results in an optimal solution to , where is defined as in Section 3. The number of agents equals the number of tasks for each simulation, i.e., . For each simulation, positions were generated using the same normal distribution as in Fig. 7. We now observe realisations where the cost of the assignment obtained from the subproblems is equal to the cost of an optimal solution to . This illustrates that with this distribution of agents and tasks there are instances where there is structure such that the conditions in Theorem 21 do not all hold and .


7 Conclusion
We discussed properties of pruneBAP that allow us to warm-start the algorithm given BAP solutions to divided sets of tasks and agents. The solutions based on the divided problems forms an MCM of the combined problem. The pruneBAP algorithm can be initialised with any MCM, and thus allows us to make use of the solutions based on the divided sets. We then have an upper bound on the BAP solution to the combined problem in terms of the bottleneck edges of the divided problems. We also introduced the novel concept of a bottleneck cluster relative to a bottleneck edge. This idea is inspired by the pruneBAP algorithm and the alternating tree that is obtained as a result of the algorithm. Using bottleneck clusters, we provided conditions such that the initial MCM used to warm-start pruneBAP is a solution to the BAP. From numerical simulations motivated by ride-sharing, we illustrate an example where the conditions hold if there exist clusters that are separated in space.
An interesting future direction is the investigation of methods to optimally partition agents and tasks. Another direction would be to investigate clustering properties for the LAP.
References
- Aggarwal et al. (1986) Aggarwal, V., Tikekar, V.A., and Hsu, L.F. (1986). Bottleneck assignment problems under categorization. Computers and Operations Research, 13, 11–26.
- Bertsekas and Castañon (1991) Bertsekas, D.P. and Castañon, D.A. (1991). Parallel synchronous and asynchronous implementations of the auction algorithm. Parallel Computing, 17, 707–732.
- Burkard et al. (2009) Burkard, R.E., Dell’Amico, M., and Martello, S. (2009). Assignment problems. Society for Industrial and Applied Mathematics (SIAM), Philadelphia.
- Carraresi and Gallo (1984) Carraresi, P. and Gallo, G. (1984). A multi-level bottleneck assignment approach to the bus drivers’ rostering problem. European Journal of Operational Research, 16, 163–173.
- Choi et al. (2009) Choi, H.L., Brenet, L., and How, J.P. (2009). Consensus-based decentralized auctions for robust task allocation. IEEE Transactions on Robotics, 25, 912–926.
- Chopra et al. (2017) Chopra, S., Notarstefano, G., Rice, M., and Egerstedt, M. (2017). A distributed version of the hungarian method for multirobot assignment. IEEE Transactions on Robotics, 33, 932–947.
- Derigs and Zimmermann (1978) Derigs, U. and Zimmermann, U. (1978). An augmenting path method for solving linear bottleneck assignment problems. Computing, 19, 285–295.
- Gabow and Tarjan (1988) Gabow, H.N. and Tarjan, R.E. (1988). Algorithms for two bottleneck optimization problems. Journal of Algorithms, 9, 411–417.
- Garfinkel (1971) Garfinkel, R.S. (1971). An improved algorithm for the bottleneck assignment problem. Operations Research, 19, 1747–1751.
- Gerkey and Matarić (2004) Gerkey, B.P. and Matarić, M.J. (2004). A formal analysis and taxonomy of task allocation in multi-robot systems. The International Journal of Robotics Research, 23, 939–954.
- Hopcroft and Karp (1973) Hopcroft, J.E. and Karp, R.M. (1973). An algorithm for maximum matchings in bipartite graphs. SIAM Journal on Computing, 2, 225–231.
- Khoo et al. (2019) Khoo, M., Wood, T.A., Manzie, C., and Shames, I. (2019). Distributed algorithm for solving the bottleneck assignment problem. IEEE 58th Conference on Decision and Control, 1850–1855.
- Kuhn (1955) Kuhn, H.W. (1955). The hungarian method for the assignment problem. Naval Research Logistics Quarterly, 2, 83–97.
- Pentico (2007) Pentico, D.W. (2007). Assignment problems: A golden anniversary survey. European Journal of Operational Research, 176, 774–793.
- Punnen and Nair (1994) Punnen, A.P. and Nair, K.P.K. (1994). Improved complexity bound for the maximum cardinality bottleneck bipartite matching problem. Discrete Applied Mathematics, 55, 91–93.
- Shames et al. (2017) Shames, I., Dostovalova, A., Kim, J., and Hmam, H. (2017). Task allocation and motion control for threat-seduction decoys. IEEE 56th Annual Conference on Decision and Control, 4509–4514.
- Zavlanos et al. (2008) Zavlanos, M.M., Spesivtsev, L., and Pappas, G.J. (2008). A distributed auction algorithm for the assignment problem. IEEE Conference on Decision and Control, 1212–1217.