And/or-convexity: a graph convexity based on processes and deadlock models
- 156 Downloads
Abstract
Deadlock prevention techniques are essential in the design of robust distributed systems. However, despite the large number of different algorithmic approaches to detect and solve deadlock situations, yet there remains quite a wide field to be explored in the study of deadlock-related combinatorial properties. In this work we consider a simplified AND-OR model, where the processes and their communication are given as a graph G. Each vertex of G is labelled AND or OR, in such a way that an AND-vertex (resp., OR-vertex) depends on the computation of all (resp., at least one) of its neighbors. We define a graph convexity based on this model, such that a set \(S \subseteq V(G)\) is convex if and only if every AND-vertex (resp., OR-vertex) \(v \in V(G){\setminus }S\) has at least one (resp., all) of its neighbors in \(V(G) {\setminus } S\). We relate some classical convexity parameters to blocking sets that cause deadlock. In particular, we show that those parameters in a graph represent the sizes of minimum or maximum blocking sets, and also the computation time until system stability is reached. Finally, a study on the complexity of combinatorial problems related to such graph convexity is provided.
Keywords
Graph convexity Deadlock AND-OR model And/or graphsNotes
Acknowledgements
Partially supported by Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES), Fundação de Amparo à Pesquisa do Estado do Rio de Janeiro (FAPERJ) and Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq)—Brazilian research agencies.
References
- Alber, J., Bodlaender, H. L., Fernau, H., Kloks, T., & Niedermeier, R. (2002). Fixed parameter algorithms for DOMINATING SET and related problems on planar graphs. Algorithmica, 33(4), 461–493.CrossRefGoogle Scholar
- Araujo, J., Campos, V., Giroire, F., Sampaio, L., & Soares, R. (2013). On the hull number of some graph classes. Theoretical Computer Science, 475, 1–12.CrossRefGoogle Scholar
- Barbosa, V. C. (1996). An introduction to distributed algorithms. Cambridge: MIT Press.Google Scholar
- Barbosa, V. C. (2002). The combinatorics of resource sharing. In R. Corrêa, I. Dutra, M. Fiallos, & F. Gomes (Eds.), Models for parallel and distributed computation, Appl. Opt. (Vol. 67, pp. 27–52). Springer US.Google Scholar
- Barbosa, V. C., & Benevides, M. R. F. (1998). A graph-theoretic characterization of and-or deadlocks. Technical report, Federal University of Rio de Janeiro.Google Scholar
- Barbosa, V. C., Carneiro, A. D. A, Protti, F., & Souza, U. S. (2016). Deadlock models in distributed computation: Foundations, design, and computational complexity. In Proceedings of the 31st annual ACM symposium on applied computing, 2016, SAC’16, pp. 538–541.Google Scholar
- Barnett, J., & Verma, T. (1994). Intelligent reliability analysis. In Proceedings of the tenth conference on artificial intelligence for applications, 1994. IEEE, pp. 428–433.Google Scholar
- Bertossi, A. A. (1984). Dominating sets for split and bipartite graphs. Information Processing Letters, 19(1), 37–40.CrossRefGoogle Scholar
- Bondy, J. A., & Murty, U. S. (2008). Graph theory. Graduate Texts in Mathematics (Vol. 244). New York: Spring-Verlag Press.Google Scholar
- Brzezinski, J., Helary, J. M., Raynal, M., & Singhal, M. (1995). Deadlock models and a general algorithm for distributed deadlock detection. Journal of Parallel and Distributed Computing, 31(2), 112–125.CrossRefGoogle Scholar
- Cáceres, J., Hernando, C., Mora, M., Pelayo, I. M., Puertas, M. L., & Seara, C. (2006). On geodetic sets formed by boundary vertices. Discrete Mathematics, 306(2), 188–198.CrossRefGoogle Scholar
- Campos, V., Sampaio, R. M., Silva, A., & Szwarcfiter, J. L. (2015). Graphs with few P\(_4\)’s under the convexity of paths of order three. Discrete Applied Mathematics, 192, 28–39.CrossRefGoogle Scholar
- Cao, T., & Sanderson, A. C. (1998). And/or net representation for robotic task sequence planning. IEEE Transactions on Systems, Man, and Cybernetics, Part C, 28(2), 204–218.CrossRefGoogle Scholar
- Chandy, K. M., & Lamport, L. (1985). Distributed snapshots: Determining global states of distributed systems. ACM Transactions on Computer Systems, 3(1), 63–75.CrossRefGoogle Scholar
- Cockayne, E., Goodman, S., & Hedetniemi, S. (1975). A linear algorithm for the domination number of a tree. Information Processing Letters, 4(2), 41–44.CrossRefGoogle Scholar
- Coelho, E. M., Dourado, M. C., Rautenbach, D., & Szwarcfiter, J. L. (2014). The Carathéodory number of the convexity of chordal graphs. Discrete Applied Mathematics, 172, 104–108.CrossRefGoogle Scholar
- Coffman, E. G., Elphick, M., & Shoshani, A. (1998). System Deadlocks. ACM Computing Surveys, 3(2), 67–78.CrossRefGoogle Scholar
- Conradi, R., & Westfechtel, B. (1998). Version models for software configuration management. ACM Computing Surveys, 30(2), 232–282.CrossRefGoogle Scholar
- Cormen, T. H., Leiserson, C. E., Rivest, R. L., & Stein, C. (2009). Introduction to algorithms (3rd ed.). Cambridge: The MIT Press.Google Scholar
- da Fonseca Ramos, I., dos Santos, V. F., & Szwarcfiter, J. L. (2014). Complexity aspects of the computation of the rank of a graph. Discrete Mathematics and Theoretical Computer Science, 16(2), 73–86.Google Scholar
- de Mello, L. S. H., & Sanderson, A. C. (1991). A correct and complete algorithm for the generation of mechanical assembly sequences. IEEE Transactions on Robotics and Automation, 7(2), 228–240.CrossRefGoogle Scholar
- dos Souza, U. S. (2014). Multivariate investigation of NP-hard problems: Boundaries between parameterized tractability and intractability. Graduate theses: Fluminense Federal University, Brazil.Google Scholar
- dos Souza, U. S., Protti, F., & da Silva, M. D. (2013). Revisiting the complexity of and/or graph solution. Journal of Computer and System Sciences, 79(7), 1156–1163.CrossRefGoogle Scholar
- Dourado, M. C., Gimbel, J. G., Kratochvíl, J., Protti, F., & Szwarcfiter, J. L. (2009). On the computation of the hull number of a graph. Discrete Mathematics, 309(18), 5668–5674.CrossRefGoogle Scholar
- Dourado, M. C., Protti, F., & Szwarcfiter, J. L. (2010). Complexity results related to monophonic convexity. Discrete Applied Mathematics, 158(12), 1268–1274.CrossRefGoogle Scholar
- Dourado, M. C., Rautenbach, D., dos Santos, V. F., & Szwarcfiter, J. L. (2012). Characterization and recognition of Radon-independent sets in split graphs. Information Processing Letters, 112(24), 948–952.CrossRefGoogle Scholar
- Downey, R. G., Fellows, M. R., Vardy, A., & Whittle, G. (2006). The parametrized complexity of some fundamental problems in coding theory. SIAM Journal on Computing, 29(2), 545–570.CrossRefGoogle Scholar
- Escoffier, B., & Paschos, V. T. (2006). Completeness in approximation classes beyond {APX}. Theoretical Computer Science, 359(1–3), 369–377.CrossRefGoogle Scholar
- Garey, M. R., & Johnson, D. S. (1990). Computers and intractability. A guide to the theory of NP-completeness. New York, NY: W.H. Freeman.Google Scholar
- Knapp, E. (1987). Deadlock detection in distributed databases. ACM Computing Surveys, 19(4), 303–328.CrossRefGoogle Scholar
- Kshemkalyani, A. D., & Singhal, M. (1994). Efficient detection and resolution of generalized distributed deadlocks. IEEE Transactions on Software Engineering, 20(1), 43–54.CrossRefGoogle Scholar
- Kumar, V., & Kanal, L. N. (1984). Parallel branch-and-bound formulations for and/or tree search. IEEE Transactions on Pattern Analysis and Machine Intelligence, 6(6), 768–778.CrossRefGoogle Scholar
- Laber, E. S. (2008). A randomized competitive algorithm for evaluating priced and/or trees. Theoretical Computer Science, 401(13), 120–130.CrossRefGoogle Scholar
- Ma, X., Dong, B., & He, M. (2008). And/or tree search algorithm in web service composition. In Pacific-Asia workshop on computational intelligence and industrial application, 2008, PACIIA’08, Vol. 2, pp. 23–27.Google Scholar
- Morabito, R., & Pureza, V. (2010). A heuristic approach based on dynamic programming and and/or-graph search for the constrained two-dimensional guillotine cutting problem. Annals of Operations Research, 179(1), 297–315.CrossRefGoogle Scholar
- Nilsson, N. J. (1971). Problem-solving methods in artificial intelligence. New York: McGraw-Hill.Google Scholar
- Ryang, D. S., & Park, K. H. (1995). A two-level distributed detection algorithm of and/or deadlocks. Journal of Parallel and Distributed Computing, 28(2), 149–161.CrossRefGoogle Scholar
- Sahni, S. (1974). Computationally related problems. SIAM Journal on Computing, 3(4), 262–279.CrossRefGoogle Scholar
- Simon, R., & Lee, R. C. T. (1971). On the optimal solutions to and/or series-parallel graphs. Journal of the ACM, 18(3), 354–372.CrossRefGoogle Scholar
- Singhal, M. (1989). Deadlock detection in distributed systems. Computer, 22(11), 37–48.CrossRefGoogle Scholar
- Vazirani, V. V. (2001). Approximation algorithms. New York, NY: Springer.Google Scholar