Algorithms and Complexity. Exercise Session 6 NP-Problems Solution To
Total Page:16
File Type:pdf, Size:1020Kb
Load more
Recommended publications
-
Networkx: Network Analysis with Python
NetworkX: Network Analysis with Python Salvatore Scellato Full tutorial presented at the XXX SunBelt Conference “NetworkX introduction: Hacking social networks using the Python programming language” by Aric Hagberg & Drew Conway Outline 1. Introduction to NetworkX 2. Getting started with Python and NetworkX 3. Basic network analysis 4. Writing your own code 5. You are ready for your project! 1. Introduction to NetworkX. Introduction to NetworkX - network analysis Vast amounts of network data are being generated and collected • Sociology: web pages, mobile phones, social networks • Technology: Internet routers, vehicular flows, power grids How can we analyze this networks? Introduction to NetworkX - Python awesomeness Introduction to NetworkX “Python package for the creation, manipulation and study of the structure, dynamics and functions of complex networks.” • Data structures for representing many types of networks, or graphs • Nodes can be any (hashable) Python object, edges can contain arbitrary data • Flexibility ideal for representing networks found in many different fields • Easy to install on multiple platforms • Online up-to-date documentation • First public release in April 2005 Introduction to NetworkX - design requirements • Tool to study the structure and dynamics of social, biological, and infrastructure networks • Ease-of-use and rapid development in a collaborative, multidisciplinary environment • Easy to learn, easy to teach • Open-source tool base that can easily grow in a multidisciplinary environment with non-expert users -
How Tough Is Toughness?
How tough is toughness? Hajo Broersma ∗ Abstract We survey results and open problems related to the toughness of graphs. 1 Introduction The concept of toughness was introduced by Chvátal [34] more than forty years ago. Toughness resembles vertex connectivity, but is different in the sense that it takes into account what the effect of deleting a vertex cut is on the number of resulting components. As we will see, this difference has major consequences in terms of computational complexity and on the implications with respect to cycle structure, in particular the existence of Hamilton cycles and k-factors. 1.1 Preliminaries We start with a number of crucial definitions and observations. Throughout this paper we only consider simple undirected graphs. Let G = (V; E) be such a graph. Every subset S ⊆ V induces a subgraph of G, denoted by G[S ], consisting of S and all edges of G between pairs of vertices of S . We use !(G) to denote the number of components of G, i.e., the set of maximal (with respect to vertex set inclusion) connected induced subgraphs of G.A vertex cut of G is a set S ⊂ V with !(G − S ) > 1. Clearly, complete graphs (in which every pair of vertices is joined by an edge) do not admit vertex cuts, but non-complete graphs have at least one vertex cut (if u and v are nonadjacent vertices in G, then the set S = V nfu; vg is a vertex cut such that !(G−S ) = 2). As usual, the (vertex) connectivity of G, denoted by κ(G), is the cardinality of a smallest vertex cut of G (if G is non-complete; for the complete graph Kn on n vertices it is usually set at n − 1). -
1 Hamiltonian Path
6.S078 Fine-Grained Algorithms and Complexity MIT Lecture 17: Algorithms for Finding Long Paths (Part 1) November 2, 2020 In this lecture and the next, we will introduce a number of algorithmic techniques used in exponential-time and FPT algorithms, through the lens of one parametric problem: Definition 0.1 (k-Path) Given a directed graph G = (V; E) and parameter k, is there a simple path1 in G of length ≥ k? Already for this simple-to-state problem, there are quite a few radically different approaches to solving it faster; we will show you some of them. We’ll see algorithms for the case of k = n (Hamiltonian Path) and then we’ll turn to “parameterizing” these algorithms so they work for all k. A number of papers in bioinformatics have used quick algorithms for k-Path and related problems to analyze various networks that arise in biology (some references are [SIKS05, ADH+08, YLRS+09]). In the following, we always denote the number of vertices jV j in our given graph G = (V; E) by n, and the number of edges jEj by m. We often associate the set of vertices V with the set [n] := f1; : : : ; ng. 1 Hamiltonian Path Before discussing k-Path, it will be useful to first discuss algorithms for the famous NP-complete Hamiltonian path problem, which is the special case where k = n. Essentially all algorithms we discuss here can be adapted to obtain algorithms for k-Path! The naive algorithm for Hamiltonian Path takes time about n! = 2Θ(n log n) to try all possible permutations of the nodes (which can also be adapted to get an O?(k!)-time algorithm for k-Path, as we’ll see). -
Graph Theory 1 Introduction
6.042/18.062J Mathematics for Computer Science March 1, 2005 Srini Devadas and Eric Lehman Lecture Notes Graph Theory 1 Introduction Informally, a graph is a bunch of dots connected by lines. Here is an example of a graph: B H D A F G I C E Sadly, this definition is not precise enough for mathematical discussion. Formally, a graph is a pair of sets (V, E), where: • Vis a nonempty set whose elements are called vertices. • Eis a collection of twoelement subsets of Vcalled edges. The vertices correspond to the dots in the picture, and the edges correspond to the lines. Thus, the dotsandlines diagram above is a pictorial representation of the graph (V, E) where: V={A, B, C, D, E, F, G, H, I} E={{A, B} , {A, C} , {B, D} , {C, D} , {C, E} , {E, F } , {E, G} , {H, I}} . 1.1 Definitions A nuisance in first learning graph theory is that there are so many definitions. They all correspond to intuitive ideas, but can take a while to absorb. Some ideas have multi ple names. For example, graphs are sometimes called networks, vertices are sometimes called nodes, and edges are sometimes called arcs. Even worse, no one can agree on the exact meanings of terms. For example, in our definition, every graph must have at least one vertex. However, other authors permit graphs with no vertices. (The graph with 2 Graph Theory no vertices is the single, stupid counterexample to many wouldbe theorems— so we’re banning it!) This is typical; everyone agrees moreorless what each term means, but dis agrees about weird special cases. -
K-Path Centrality: a New Centrality Measure in Social Networks
Centrality Metrics in Social Network Analysis K-path: A New Centrality Metric Experiments Summary K-Path Centrality: A New Centrality Measure in Social Networks Adriana Iamnitchi University of South Florida joint work with Tharaka Alahakoon, Rahul Tripathi, Nicolas Kourtellis and Ramanuja Simha Adriana Iamnitchi K-Path Centrality: A New Centrality Measure in Social Networks 1 of 23 Centrality Metrics in Social Network Analysis Centrality Metrics Overview K-path: A New Centrality Metric Betweenness Centrality Experiments Applications Summary Computing Betweenness Centrality Centrality Metrics in Social Network Analysis Betweenness Centrality - how much a node controls the flow between any other two nodes Closeness Centrality - the extent a node is near all other nodes Degree Centrality - the number of ties to other nodes Eigenvector Centrality - the relative importance of a node Adriana Iamnitchi K-Path Centrality: A New Centrality Measure in Social Networks 2 of 23 Centrality Metrics in Social Network Analysis Centrality Metrics Overview K-path: A New Centrality Metric Betweenness Centrality Experiments Applications Summary Computing Betweenness Centrality Betweenness Centrality measures the extent to which a node lies on the shortest path between two other nodes betweennes CB (v) of a vertex v is the summation over all pairs of nodes of the fractional shortest paths going through v. Definition (Betweenness Centrality) For every vertex v 2 V of a weighted graph G(V ; E), the betweenness centrality CB (v) of v is defined by X X σst (v) CB -
Solution of the Knight's Hamiltonian Path Problem on Chessboards
CORE Metadata, citation and similar papers at core.ac.uk Provided by Elsevier - Publisher Connector DISCRETE APPLIED MATHEMATICS ELSEVIER Discrete Applied Mathematics 50 (1994) 125-134 Solution of the knight’s Hamiltonian path problem on chessboards Axe1 Conrad”, Tanja Hindrichsb, Hussein MorsyC, Ingo WegenerdV* “Hiilsenbusch 27, 5632 Wermelskirchen I, Germany bPlettenburg 5, 5632 Wermelskirchen 2, Germany ‘BeckbuschstraJe 7, 4000 Diisseldorf 30, Germany dFB Informatik, LS II. University of Dortmund, Postfach 500500, 4600 Dortmund 50, Germany Received 17 June 1991; revised 12 December 1991 Abstract Is it possible for a knight to visit all squares of an n x n chessboard on an admissible path exactly once? The answer is yes if and only if n > 5. The kth position in such a path can be computed with a constant number of arithmetic operations. A Hamiltonian path from a given source s to a given terminal t exists for n > 6 if and only if some easily testable color criterion is fulfilled. Hamiltonian circuits exist if and only if n 2 6 and n is even. 1. Introduction In many textbooks on algorithmic methods two chess problems are presented as examples for backtracking algorithms: _ is it possible to place n queens on an n x n chessboard such that no one threatens another? - is it possible for a knight to visit all squares of an n x n cheesboard on an admissible path exactly once? Both problems are special cases of NP-complete graph problems, namely the maximal independent set problem and the Hamiltonian path problem (see [4]). We consider the second problem. -
HABILITATION THESIS Petr Gregor Combinatorial Structures In
HABILITATION THESIS Petr Gregor Combinatorial Structures in Hypercubes Computer Science - Theoretical Computer Science Prague, Czech Republic April 2019 Contents Synopsis of the thesis4 List of publications in the thesis7 1 Introduction9 1.1 Hypercubes...................................9 1.2 Queue layouts.................................. 14 1.3 Level-disjoint partitions............................ 19 1.4 Incidence colorings............................... 24 1.5 Distance magic labelings............................ 27 1.6 Parity vertex colorings............................. 29 1.7 Gray codes................................... 30 1.8 Linear extension diameter........................... 36 Summary....................................... 38 2 Queue layouts 51 3 Level-disjoint partitions 63 4 Incidence colorings 125 5 Distance magic labelings 143 6 Parity vertex colorings 149 7 Gray codes 155 8 Linear extension diameter 235 3 Synopsis of the thesis The thesis is compiled as a collection of 12 selected publications on various combinatorial structures in hypercubes accompanied with a commentary in the introduction. In these publications from years between 2012 and 2018 we solve, in some cases at least partially, several open problems or we significantly improve previously known results. The list of publications follows after the synopsis. The thesis is organized into 8 chapters. Chapter 1 is an umbrella introduction that contains background, motivation, and summary of the most interesting results. Chapter 2 studies queue layouts of hypercubes. A queue layout is a linear ordering of vertices together with a partition of edges into sets, called queues, such that in each set no two edges are nested with respect to the ordering. The results in this chapter significantly improve previously known upper and lower bounds on the queue-number of hypercubes associated with these layouts. -
HAMILTONICITY in CAYLEY GRAPHS and DIGRAPHS of FINITE ABELIAN GROUPS. Contents 1. Introduction. 1 2. Graph Theory: Introductory
HAMILTONICITY IN CAYLEY GRAPHS AND DIGRAPHS OF FINITE ABELIAN GROUPS. MARY STELOW Abstract. Cayley graphs and digraphs are introduced, and their importance and utility in group theory is formally shown. Several results are then pre- sented: firstly, it is shown that if G is an abelian group, then G has a Cayley digraph with a Hamiltonian cycle. It is then proven that every Cayley di- graph of a Dedekind group has a Hamiltonian path. Finally, we show that all Cayley graphs of Abelian groups have Hamiltonian cycles. Further results, applications, and significance of the study of Hamiltonicity of Cayley graphs and digraphs are then discussed. Contents 1. Introduction. 1 2. Graph Theory: Introductory Definitions. 2 3. Cayley Graphs and Digraphs. 2 4. Hamiltonian Cycles in Cayley Digraphs of Finite Abelian Groups 5 5. Hamiltonian Paths in Cayley Digraphs of Dedekind Groups. 7 6. Cayley Graphs of Finite Abelian Groups are Guaranteed a Hamiltonian Cycle. 8 7. Conclusion; Further Applications and Research. 9 8. Acknowledgements. 9 References 10 1. Introduction. The topic of Cayley digraphs and graphs exhibits an interesting and important intersection between the world of groups, group theory, and abstract algebra and the world of graph theory and combinatorics. In this paper, I aim to highlight this intersection and to introduce an area in the field for which many basic problems re- main open.The theorems presented are taken from various discrete math journals. Here, these theorems are analyzed and given lengthier treatment in order to be more accessible to those without much background in group or graph theory. -
Parameterized Edge Hamiltonicity
Parameterized Edge Hamiltonicity Michael Lampis1;?, Kazuhisa Makino1, Valia Mitsou2;??, Yushi Uno3 1 Research Institute for Mathematical Sciences, Kyoto University mlampis,[email protected] 2 CUNY Graduate Center [email protected] 3 Department of Mathematics and Information Sciences, Graduate School of Science, Osaka Prefecture University [email protected] Abstract. We study the parameterized complexity of the classical Edge Hamiltonian Path problem and give several fixed-parameter tractabil- ity results. First, we settle an open question of Demaine et al. by showing that Edge Hamiltonian Path is FPT parameterized by vertex cover, and that it also admits a cubic kernel. We then show fixed-parameter tractability even for a generalization of the problem to arbitrary hyper- graphs, parameterized by the size of a (supplied) hitting set. We also consider the problem parameterized by treewidth or clique-width. Sur- prisingly, we show that the problem is FPT for both of these standard parameters, in contrast to its vertex version, which is W-hard for clique- width. Our technique, which may be of independent interest, relies on a structural characterization of clique-width in terms of treewidth and complete bipartite subgraphs due to Gurski and Wanke. 1 Introduction The focus of this paper is the Edge Hamiltonian Path problem, which can be defined as follows: given an undirected graph G(V; E), does there exist a permutation of E such that every two consecutive edges in the permutation share an endpoint? This is a very well-known graph-theoretic problem, which corresponds to the restriction of (vertex) Hamiltonian Path to line graphs. -
The Cube of Every Connected Graph Is 1-Hamiltonian
JOURNAL OF RESEARCH of the National Bureau of Standards- B. Mathematical Sciences Vol. 73B, No.1, January- March 1969 The Cube of Every Connected Graph is l-Hamiltonian * Gary Chartrand and S. F. Kapoor** (November 15,1968) Let G be any connected graph on 4 or more points. The graph G3 has as its point set that of C, and two distinct pointE U and v are adjacent in G3 if and only if the distance betwee n u and v in G is at most three. It is shown that not only is G" hamiltonian, but the removal of any point from G" still yields a hamiltonian graph. Key Words: C ube of a graph; graph; hamiltonian. Let G be a graph (finite, undirected, with no loops or multiple lines). A waLk of G is a finite alternating sequence of points and lines of G, beginning and ending with a point and where each line is incident with the points immediately preceding and followin g it. A walk in which no point is repeated is called a path; the Length of a path is the number of lines in it. A graph G is connected if between every pair of distinct points there exists a path, and for such a graph, the distance between two points u and v is defined as the length of the shortest path if u 0;1= v and zero if u = v. A walk with at least three points in which the first and last points are the same but all other points are dis tinct is called a cycle. -
A Survey of Line Graphs and Hamiltonian Paths Meagan Field
University of Texas at Tyler Scholar Works at UT Tyler Math Theses Math Spring 5-7-2012 A Survey of Line Graphs and Hamiltonian Paths Meagan Field Follow this and additional works at: https://scholarworks.uttyler.edu/math_grad Part of the Mathematics Commons Recommended Citation Field, Meagan, "A Survey of Line Graphs and Hamiltonian Paths" (2012). Math Theses. Paper 3. http://hdl.handle.net/10950/86 This Thesis is brought to you for free and open access by the Math at Scholar Works at UT Tyler. It has been accepted for inclusion in Math Theses by an authorized administrator of Scholar Works at UT Tyler. For more information, please contact [email protected]. A SURVEY OF LINE GRAPHS AND HAMILTONIAN PATHS by MEAGAN FIELD A thesis submitted in partial fulfillment of the requirements for the degree of Master’s of Science Department of Mathematics Christina Graves, Ph.D., Committee Chair College of Arts and Sciences The University of Texas at Tyler May 2012 Contents List of Figures .................................. ii Abstract ...................................... iii 1 Definitions ................................... 1 2 Background for Hamiltonian Paths and Line Graphs ........ 11 3 Proof of Theorem 2.2 ............................ 17 4 Conclusion ................................... 34 References ..................................... 35 i List of Figures 1GraphG..................................1 2GandL(G)................................3 3Clawgraph................................4 4Claw-freegraph..............................4 5Graphwithaclawasaninducedsubgraph...............4 6GraphP .................................. 7 7AgraphCcontainingcomponents....................8 8Asimplegraph,Q............................9 9 First and second step using R2..................... 9 10 Third and fourth step using R2..................... 10 11 Graph D and its reduced graph R(D).................. 10 12 S5 and its line graph, K5 ......................... 13 13 S8 and its line graph, K8 ......................... 14 14 Line graph of graph P ......................... -
On the Universal Near Shortest Simple Paths Problem
On the Universal Near Shortest Simple Paths Problem Luca E. Sch¨afer∗, Andrea Maier, Stefan Ruzika Department of Mathematics, Technische Universit¨at Kaiserslautern, 67663 Kaiserslautern, Germany Abstract This article generalizes the Near Shortest Paths Problem introduced by Byers and Waterman in 1984 using concepts of the Universal Shortest Path Prob- lem established by Turner and Hamacher in 2011. The generalization covers a variety of shortest path problems by introducing a universal weight vector. We apply this concept to the Near Shortest Paths Problem in a way that we are able to enumerate all universal near shortest simple paths. We present two recursive algorithms to compute the set of universal near shortest simple paths between two prespecified vertices and evaluate the running time com- plexity per path enumerated with respect to different values of the universal weight vector. Further, we study the cardinality of a minimal complete set with respect to different values of the universal weight vector. Keywords: Near shortest Paths, Dynamic Programming, Universal Shortest Path, Complexity, Enumeration 1. Introduction The K-shortest path problem is a well-studied generalization of the shortest path problem, where one aims to determine not only the shortest path, but arXiv:1906.05101v2 [math.CO] 23 Aug 2019 also the K shortest paths (K > 1) between a source vertex s and a sink vertex t. In contrast to the K-shortest path problem and its applications, (cf. [2, 7, 14, 24]), the near shortest paths problem, i.e., NSPP, received fewer attention in the literature, (cf. [3, 4, 23]). The NSPP aims to enumerate all ∗Corresponding author Email addresses: [email protected] (Luca E.