11 research outputs found

    A polynomial algorithm for the k-cluster problem on interval graphs

    Full text link
    This paper deals with the problem of finding, for a given graph and a given natural number k, a subgraph of k nodes with a maximum number of edges. This problem is known as the k-cluster problem and it is NP-hard on general graphs as well as on chordal graphs. In this paper, it is shown that the k-cluster problem is solvable in polynomial time on interval graphs. In particular, we present two polynomial time algorithms for the class of proper interval graphs and the class of general interval graphs, respectively. Both algorithms are based on a matrix representation for interval graphs. In contrast to representations used in most of the previous work, this matrix representation does not make use of the maximal cliques in the investigated graph.Comment: 12 pages, 5 figure

    A survey on algorithmic aspects of modular decomposition

    Full text link
    The modular decomposition is a technique that applies but is not restricted to graphs. The notion of module naturally appears in the proofs of many graph theoretical theorems. Computing the modular decomposition tree is an important preprocessing step to solve a large number of combinatorial optimization problems. Since the first polynomial time algorithm in the early 70's, the algorithmic of the modular decomposition has known an important development. This paper survey the ideas and techniques that arose from this line of research

    The Perfect Matching Reconfiguration Problem

    Get PDF
    We study the perfect matching reconfiguration problem: Given two perfect matchings of a graph, is there a sequence of flip operations that transforms one into the other? Here, a flip operation exchanges the edges in an alternating cycle of length four. We are interested in the complexity of this decision problem from the viewpoint of graph classes. We first prove that the problem is PSPACE-complete even for split graphs and for bipartite graphs of bounded bandwidth with maximum degree five. We then investigate polynomial-time solvable cases. Specifically, we prove that the problem is solvable in polynomial time for strongly orderable graphs (that include interval graphs and strongly chordal graphs), for outerplanar graphs, and for cographs (also known as P_4-free graphs). Furthermore, for each yes-instance from these graph classes, we show that a linear number of flip operations is sufficient and we can exhibit a corresponding sequence of flip operations in polynomial time

    Efficient Algorithms and Data Structures for Massive Data Sets

    Full text link
    For many algorithmic problems, traditional algorithms that optimise on the number of instructions executed prove expensive on I/Os. Novel and very different design techniques, when applied to these problems, can produce algorithms that are I/O efficient. This thesis adds to the growing chorus of such results. The computational models we use are the external memory model and the W-Stream model. On the external memory model, we obtain the following results. (1) An I/O efficient algorithm for computing minimum spanning trees of graphs that improves on the performance of the best known algorithm. (2) The first external memory version of soft heap, an approximate meldable priority queue. (3) Hard heap, the first meldable external memory priority queue that matches the amortised I/O performance of the known external memory priority queues, while allowing a meld operation at the same amortised cost. (4) I/O efficient exact, approximate and randomised algorithms for the minimum cut problem, which has not been explored before on the external memory model. (5) Some lower and upper bounds on I/Os for interval graphs. On the W-Stream model, we obtain the following results. (1) Algorithms for various tree problems and list ranking that match the performance of the best known algorithms and are easier to implement than them. (2) Pass efficient algorithms for sorting, and the maximal independent set problems, that improve on the best known algorithms. (3) Pass efficient algorithms for the graphs problems of finding vertex-colouring, approximate single source shortest paths, maximal matching, and approximate weighted vertex cover. (4) Lower bounds on passes for list ranking and maximal matching. We propose two variants of the W-Stream model, and design algorithms for the maximal independent set, vertex-colouring, and planar graph single source shortest paths problems on those models.Comment: PhD Thesis (144 pages

    Non-crossing shortest paths in planar graphs with applications to max flow, and path graphs

    Get PDF
    This thesis is concerned with non-crossing shortest paths in planar graphs with applications to st-max flow vitality and path graphs. In the first part we deal with non-crossing shortest paths in a plane graph G, i.e., a planar graph with a fixed planar embedding, whose extremal vertices lie on the same face of G. The first two results are the computation of the lengths of the non-crossing shortest paths knowing their union, and the computation of the union in the unweighted case. Both results require linear time and we use them to describe an efficient algorithm able to give an additive guaranteed approximation of edge and vertex vitalities with respect to the st-max flow in undirected planar graphs, that is the max flow decrease when the edge/vertex is removed from the graph. Indeed, it is well-known that the st-max flow in an undirected planar graph can be reduced to a problem of non-crossing shortest paths in the dual graph. We conclude this part by showing that the union of non-crossing shortest paths in a plane graph can be covered with four forests so that each path is contained in at least one forest. In the second part of the thesis we deal with path graphs and directed path graphs, where a (directed) path graph is the intersection graph of paths in a (directed) tree. We introduce a new characterization of path graphs that simplifies the existing ones in the literature. This characterization leads to a new list of local forbidden subgraphs of path graphs and to a new algorithm able to recognize path graphs and directed path graphs. This algorithm is more intuitive than the existing ones and does not require sophisticated data structures

    A Faster Algorithm for Recognizing Edge-Weighted Interval Graphs

    Get PDF
    Interval graphs—the intersection graphs of one-dimensional intervals—are considered one of the most useful mathematical structures to model real life applications. Interval graphs have been widely studied since they first appeared in the literature in 1957. In 1976, Booth and Lueker introduced a data structure called PQ-trees that could recognize interval graphs in linear time; since then, several simpler linear-time algorithms have been proposed for the problem. We investigate a lesser-studied variation of interval graphs called edge-weighted interval graphs. A graph with weights on its edges is an edge-weighted interval graph if we can assign intervals to its vertices so that the weight of an edge (u, v) is equal to the length of the intersection of the intervals assigned to u and v. In 2012, Kobler, Kuhnert, and Watanabe gave an algorithm to recognize such graphs in time O(m · n), where m and n are the number of edges and vertices, respectively, of the given graph. In this thesis, we give an algorithm to recognize complete edge-weighted interval graphs in time O(m · log n). We then observe some additional properties of PQ-trees for interval graphs, and use these properties to improve the runtime of the algorithm given by Kobler et al. for recognizing general edge-weighted interval graphs to O(m · log n). As the literature for finding representations of weighted intersection graphs is scarce, we hope that the techniques presented in this thesis can be used to obtain algorithms or approximation algorithms for recognition of other kinds of weighted intersection graphs

    Cops and Robber Game with a Fast Robber

    Get PDF
    Graph searching problems are described as games played on graphs, between a set of searchers and a fugitive. Variants of the game restrict the abilities of the searchers and the fugitive and the corresponding search number (the least number of searchers that have a winning strategy) is related to several well-known parameters in graph theory. One popular variant is called the Cops and Robber game, where the searchers (cops) and the fugitive (robber) move in rounds, and in each round they move to an adjacent vertex. This game, defined in late 1970's, has been studied intensively. The most famous open problem is Meyniel's conjecture, which states that the cop number (the minimum number of cops that can always capture the robber) of a connected graph on n vertices is O(sqrt n). We consider a version of the Cops and Robber game, where the robber is faster than the cops, but is not allowed to jump over the cops. This version was first studied in 2008. We show that when the robber has speed s, the cop number of a connected n-vertex graph can be as large as Omega(n^(s/s+1)). This improves the Omega(n^(s-3/s-2)) lower bound of Frieze, Krivelevich, and Loh (Variations on Cops and Robbers, J. Graph Theory, to appear). We also conjecture a general upper bound O(n^(s/s+1)) for the cop number, generalizing Meyniel's conjecture. Then we focus on the version where the robber is infinitely fast, but is again not allowed to jump over the cops. We give a mathematical characterization for graphs with cop number one. For a graph with treewidth tw and maximum degree Delta, we prove the cop number is between (tw+1)/(Delta+1) and tw+1. Using this we show that the cop number of the m-dimensional hypercube is between c1 n / m sqrt(m) and c2 n / m for some constants c1 and c2. If G is a connected interval graph on n vertices, then we give a polynomial time 3-approximation algorithm for finding the cop number of G, and prove that the cop number is O(sqrt(n)). We prove that given n, there exists a connected chordal graph on n vertices with cop number Omega(n/log n). We show a lower bound for the cop numbers of expander graphs, and use this to prove that the random G(n,p) that is not very sparse, asymptotically almost surely has cop number between d1 / p and d2 log (np) / p for suitable constants d1 and d2. Moreover, we prove that a fixed-degree regular random graph with n vertices asymptotically almost surely has cop number Theta(n)

    Algorithms for graphs of small treewidth

    Get PDF
    Veel problemen uit de praktijk kunnen worden gemodelleerd als optimaliserings- of beslis-singsproblemen op grafen. Denk bijvoorbeeld aan het probleem waarbij een koerier een aantal pakketjes moet afleveren op verschillende adressen in het land. De manager van de koerier wil dat hij een zo kort mogelijke route aflegt die begint en eindigt bij het koeriers-bedrijf, en die alle adressen aandoet. Het probleem om zo n kortste route te vinden is het zogenaamde handelsreizigersprobleem. De invoer kan worden gemodelleerd als een graaf, waarbij elke knoop in de graaf een adres vertegenwoordigt en elke kant tussen twee knopen de weg tussen de corresponderende adressen. Elke kant heeft een gewicht dat aangeeft hoe lang de corresponderende weg is. Het probleem is dan om een cykel in de graaf te vinden die alle knopen bevat en waarvoor de som van de gewichten van alle kanten in de cykel minimaal is. Helaas is het zo dat de meeste problemen op grafen die praktische problemen modelleren lastig zijn in die zin, dat er waarschijnlijk geen effici¨ ente algoritmen zijn die deze problemen oplossen. Formeel gezegd zijn deze problemen NP-lastig. Het handelsreizigersprobleem is een voorbeeld hiervan. Een manier om hiermee om te gaan is om te kijken of er in het probleem uit de praktijk een structuur zit die maakt dat het probleem effici¨ enter is op te lossen. Het kan bijvoorbeeld zo zijn dat het gegeven probleem in het algemeen lastig is, maar dat de grafen die in de praktijk voorkomen een dusdanige structuur hebben dat er wel een effici¨ ent algoritme voor het probleem bestaat. Een voorbeeld van een prettige graafstructuur is de boomstructuur: het blijkt dat veel graafproblemen die in het algemeen lastig zijn, een effici¨ ent algoritme hebben wanneer de graaf een boom is. Helaas is de boomstructuur erg beperkt: er zijn maar weinig praktische problemen die kunnen worden gemodelleerd als problemen op bomen. In dit proefschrift kij-ken we daarom naar een generalisatie van deze structuur, en dat is de boomachtige structuur: we kijken naar grafen met boombreedte hooguit k of padbreedte hooguit k, waarbij k een positief geheel getal is. Intu¨itief gezien geeft de boombreedte van een graaf de mate aan waarin de graaf op een boom lijkt: hoe groter de gelijkenis, hoe kleiner de boombreedte. Met een graaf van boom-breedte k kan een boom worden geassocieerd waarbij elke knoop van de boom correspondeert met een deelgraaf van de graaf op een zodanige manier dat elke knoop en elke kant van de graaf in tenminste een knoop van de boom voorkomt, en voor elke knoop v in de graaf geldt dat de knopen in de boom die v bevatten een verbonden deelboom vormen. Zo n boom bestaande uit deelgrafen wordt een boomdecompositie van de graaf genoemd. De breedte van de boomdecompositie is het maximaal aantal knopen van de graaf dat in ´ e´ en 233?Samenvatting knoop van de boomdecompositie voorkomt, min ´ e´ en. De boombreedte van een graaf is de minimale breedte over alle boomdecomposities van de graaf (een boom heeft boombreedte ´ e´ en). Een paddecompositie van een graaf is een boomdecompositie die de vorm heeft van een pad. De padbreedte van een graaf is de minimale breedte over alle paddecomposities van de graaf. Dus de boombreedte van een graaf is altijd ten hoogste gelijk aan z n padbreedte. Voor veel problemen zoals het handelsreizigersprobleem is er een effici¨ ent algoritme op grafen met kleine boombreedte. Het blijkt dat er veel praktische graafproblemen zijn waar-voor de invoergraaf een kleine boombreedte heeft. Bij al deze problemen helpt dit gegeven bij het vinden van een effici¨ enter algoritme. Deze algoritmen maken meestal gebruik van een boomdecompositie van de graaf met kleine breedte. Daarom is het nodig om eerst zo n boomdecompositie van de graaf te vinden. Hiervoor zijn effici¨ ente algoritmen beschikbaar, zowel sequentieel als parallel. Helaas is het zo dat veel algoritmen op grafen met een kleine boombreedte alleen in theorie efficient zijn: de looptijd van de algoritmen is vaak exponentieel in de boombreedte van de graaf. Dit geldt bijvoorbeeld voor de algoritmen voor het vinden van een boom- of paddecompositie van breedte hooguit k van een graaf, waarbij k constant is. Het doel van dit proefschrift is om effici¨ ente sequenti¨ ele en parallelle algoritmen te ont-werpen voor problemen op grafen met een kleine boom- of padbreedte. Het doel is om algoritmen te ontwerpen die niet alleen theoretisch effici¨ ent zijn, maar die ook in praktische toepassingen effici¨ ent kunnen zijn. Het proefschrift is als volgt georganiseerd. Hoofdstuk 1 geeft een inleiding. In hoofd-stuk 2 worden formele definities van boom- en padbreedte gegeven, en wordt een aantal ei-genschappen en bekende resultaten over grafen met een kleine boom- en padbreedte gegeven. Verder worden definities gegeven die worden gebruikt in de rest van het proefschrift. In hoofdstuk 3 geven we een volledige karakterisatie van grafen met padbreedte twee. Deze karakterisatie wordt vervolgens gebruikt voor een effici¨ ent sequentieel algoritme dat beslist of een graaf padbreedte ten hoogste twee heeft en, als dat zo is, een paddecompositie van minimale breedte vindt. De karakterisatie wordt ook gebruikt in de algoritmen die zijn beschreven in hoofdstuk 4. Hoofdstuk 4 gaat over twee problemen welke hun oorsprong vinden in de moleculaire biologie. In beide problemen bestaat de invoer uit een aantal copie¨ en van een DNA string welke in fragmenten zijn opgedeeld. Voor elk paar van fragmenten is informatie beschikbaar over de overlap tussen die twee fragmenten: ´ of we weten dat de fragmenten zeker overlappen, ´ of we weten dat ze zeker niet overlappen, ´ of we weten niets. Met behulp van deze informatie moet de volledige overlap informatie tussen elk tweetal fragmenten worden berekend, dat wil zeggen dat voor elk tweetal fragmenten moet worden berekend of ze wel of niet overlappen. Dit probleem heet k-INTERVALIZING SANDWICH GRAPHS of k-ISG, waarbij k het aantal copie¨ en is dat is gefragmenteerd. In de tweede variant is ook nog bekend dat alle fragmenten gelijke lengte hebben. Deze variant heet k-UNIT-INTERVALIZING SANDWICH GRAPHS of k-UISG. De invoer van beide problemen kan worden gemodelleerd als een graaf. Het blijkt dat de volledige overlap informatie alleen kan worden berekend wanneer die graaf padbreedte ten hoogste k heeft, waarbij k weer het aantal copie¨ en is. In Hoofdstuk 4 geven we een 234?Samenvatting kwadratisch algoritme voor 3-ISG, en we bewijzen dat k-ISG NP-moeilijk is wanneer k 4. Verder geven we een lineair algoritme voor 3-UISG. Hoofstukken 5 9 gaan over een speciaal soort algoritmen, namelijk reductie algorit-men. Een reductie algoritme is een algoritme waarin een reeks reducties wordt uitgevoerd op de invoergraaf. Het gedrag van de reducties is beschreven in een verzameling van reductie regels, welke afhangen van het probleem waarvoor het algoritme is. Wanneer de reductie re-gels aan bepaalde voorwaarden voldoen kan het reductie algoritme lineaire tijd gebruiken (of logaritmische tijd in het geval van een parallel reductie algoritme). De reductie algoritmen zijn eenvoudig: de moeilijkheden van het probleem zitten verstopt in de verzameling reductie regels, en niet in het algoritme. Er zijn hele klassen van problemen op grafen met begrensde boombreedte waarvoor een verzameling van reductie regels kan worden geconstrueerd. Het voordeel van reductie algo-ritmen voor het oplossen van problemen op grafen met begrensde boombreedte is dat er geen boomdecompositie van de graaf nodig is: de algoritmen werken direct op de graaf. In hoofdstuk 5 geven we een overzicht van de bestaande theorie¨ en over reductie algorit-men. We combineren verschillende bestaande idee¨ en en presenteren ze als een geheel. Dit hoofdstuk is tevens een inleiding voor hoofdstukken 6 9. Reductie algoritmen hebben als nadeel dat ze alleen optimaliserings- en beslissingspro-blemen kunnen oplossen: bij een optimaliseringsprobleem wordt alleen de optimale waarde teruggegeven, maar niet een oplossing waarvoor de waarde optimaal is. Bij beslissingspro-blemen wordt alleen het antwoord ja of nee gegeven, maar als het antwoord ja is wordt geen oplossing gegeven. In hoofdstuk 6 breiden we de theorie van reductie algoritmen uit naar constructieve reductie algoritmen welke ook een (optimale) oplossing teruggeven, mits er een is. We laten zien dat voor veel problemen op grafen met begrensde boombreedte waar-voor reductie algoritmen kunnen worden toegepast, ook de constructieve reductie algoritmen kunnen worden toegepast. In hoofdstuk 7 passen we de theorie¨ en welke zijn gepresenteerd in hoofdstukken 5 en 6 toe op een aantal optimaliseringsproblemen. In hoofdstukken 8 en 9 gebruiken we de theorie¨ en uit hoofdstuk 6, aangevuld met nieuwe idee¨ en, om effici¨ ente, constructieve parallelle reductie algoritmen te verkrijgen voor de vol-gende twee aanverwante problemen: gegeven een graaf, bepaal of hij series-parallel is, en zo ja, vind dan een sp-boom van de graaf, gegeven een graaf, bepaal of hij boombreedte hooguit twee heeft, en zo ja, maak een boomdecompositie van breedte twee van de graaf. In hoofdstuk 10 vatten we de resultaten uit dit proefschrift nog eens samen, en geven we wat richtingen aan voor verder onderzoek. Appendix A bevat een opsomming van definities van alle graafproblemen welke worden gebruikt in het proefschrift. 235?Samenvatting 23
    corecore