Abstract
A deadlock occurs in a distributed computation if a group of processes wait indefinitely for resources from each other. In this paper we study actions to be taken after deadlock detection, especially the action of searching for a small deadlock-resolution set. More precisely, given a “snapshot” graph G representing a deadlocked state of a distributed computation governed by a certain deadlock model \({\mathbb {M}}\), we investigate the complexity of vertex/arc deletion problems that aim at finding minimum vertex/arc subsets whose removal turns G into a deadlock-free graph (according to model \({\mathbb {M}}\)). Our contributions include polynomial-time algorithms and hardness proofs, for general graphs and for special graph classes. Among other results, we show that the arc deletion problem in the OR model can be solved in polynomial time, and the vertex deletion problem in the OR model remains NP-complete even for graphs with maximum degree \({\varDelta }(G) = 4\), but is solvable in \(O (m \sqrt{n})\) time for graphs with \({\varDelta }(G)\le 3\).
Similar content being viewed by others
References
Atreya R, Mittal N, Kshemkalyani AD, Garg VK, Singhal M (2007) Efficient detection of a locally stable predicate in a distributed system. J Parallel Distrib Comput 67(4):369–385
Barbosa VC (1996) An introduction to distributed algorithms. The MIT Press, Cambridge
Barbosa VC (2002) The combinatorics of resource sharing. In: Corrêa R, Dutra I, Fiallos M, Gomes F (eds) Models for parallel and distributed computation. Kluwer, Dordrecht, pp 27–52
Barbosa VC, Benevides MR (1998) A graph-theoretic characterization of AND-OR deadlocks. Tech. Rep. COPPE-ES-472/98, Federal University of Rio de Janeiro, Rio de Janeiro, Brazil
Bokal D, Brešar B, Jerebic J (2012) A generalization of Hungarian method and Hall’s theorem with applications in wireless sensor networks. Discrete Appl Math 160(4):460–470
Bondy JA, Murty USR (1976) Graph theory with applications. North-Holland, Amsterdam
Bracha G, Toueg S (1987) Distributed deadlock detection. Distrib Comput 2:127–138
Brzezinski J, Helary JM, Raynal M, Singhal M (1995) Deadlock models and a general algorithm for distributed deadlock detection. J Parallel Distrib Comput 31:112–125
Carneiro ADA, Protti F, Souza US (2017) Deletion graph problems based on deadlock resolution. In: Cao Y, Chen J (eds) Computing and combinatorics. COCOON 2017, Lecture Notes in Computer Science, vol 10392. Springer, pp 75–86
Chahar P, Dalal S (2013) Deadlock resolution techniques: an overview. Int J Sci Res Publ 3(7):5p
Chandy KM, Lamport L (1985) Distributed snapshots: determining global states of distributed systems. ACM Trans Comput Syst 3:63–75
Coffman EG, Elphick M, Shoshani A (1971) System deadlocks. ACM Comput Surv (CSUR) 3(2):67–78
Cormen TH, Leiserson CE, Rivest RL, Stein C (2009) Introduction to algorithms. MIT Press, Cambridge
de Mendívil JG, Fariña F, Garitagotia JR, Alastruey CF, Bernabeu-Auban JM (1999) A distributed deadlock resolution algorithm for the AND model. IEEE Trans Parallel Distrib Syst 10(5):433–447
Ding Y, He Y, Jiang J (2003) Multi-robot cooperation method based on the ant algorithm. In: IEEE swarm intelligence symposium, pp 14–18
Galčík F, Katrenič J, Semanišin G (2011) On computing an optimal semi-matching. In: Kolman P, Kratochvíl J (eds) Graph-theoretic concepts in computer science, WG 2011, Lecture notes in computer science, vol 6986. Springer, Berlin, pp 250–261
Garey MR, Johnson DS (1979) Computers and intractability: a guide to the theory of NP-completeness. WH Freeman and Company, New York
Hopcroft JE, Karp RM (1973) An \(n^{5/2}\) algorithm for maximum matchings in bipartite graphs. SIAM J Comput 2(4):225–231
Karp R (1972) Reducibility among combinatorial problems. In: Miller R, Thatcher J, Bohlinger J (eds) Complexity of computer computations. The IBM research symposia series. Springer, New York, pp 85–103
Katrenic J, Semanišin G (2011) A generalization of Hopcroft–Karp algorithm for semi-matchings and covers in bipartite graphs. arXiv:1103.1091
Kshemkalyani AD, Singhal M (1994) Efficient detection and resolution of generalized distributed deadlocks. IEEE Trans Software Eng 20:43–54
Kshemkalyani AD, Singhal M (2011) Distributed computing: principles, algorithms, and systems. Cambridge University Press, Cambridge
Leung JY-T, Lai EK (1979) On minimum cost recovery from system deadlock. IEEE Trans Comput 9(C–28):671–677
Misra J, Chandy KM (1982) A distributed graph algorithm: Knot detection. ACM Trans Program Lang Syst 4:678–686
Pachl J (1997) The deadlock problem in automatic railway operation. Signal und Draht 89(1–2):22–25
Pachl J (2011) Deadlock avoidance in railroad operations simulations. In: Transportation research board 90th annual meeting (paper no. 11-0175)
Penso LD, Protti F, Rautenbach D, dos Santos Souza U (2015) Complexity analysis of P\(_3\)-convexity problems on bounded-degree and planar graphs. Theoret Comput Sci 607:83–95
Ryang DS, Park KH (1995) A two-level distributed detection algorithm of AND/OR deadlocks. J Parallel Distrib Comput 28:149–161
Satyanarayana B, Prasad KS (2014) Discrete mathematics and graph theory. PHI Learning Pvt. Ltd, New Delhi
Tanenbaum AS, Woodhull AS (1987) Operating systems: design and implementation, vol 2. Prentice-Hall, Englewood Cliffs
Terekhov I, Camp T (1999) Time efficient deadlock resolution algorithms. Inf Process Lett 69(3):149–154
Author information
Authors and Affiliations
Corresponding author
Additional information
This research was partially supported by the Brazilian National Council for Scientific and Technological Development (CNPq), the Brazilian National Council for the Improvement of Higher Education (CAPES) and the Research Support Foundation of the State of Rio de Janeiro (FAPERJ).
Rights and permissions
About this article
Cite this article
Carneiro, A.D.A., Protti, F. & Souza, U.S. Deadlock resolution in wait-for graphs by vertex/arc deletion. J Comb Optim 37, 546–562 (2019). https://doi.org/10.1007/s10878-018-0279-5
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10878-018-0279-5