scispace - formally typeset
Search or ask a question
Journal ArticleDOI

Efficient parallel algorithms for series parallel graphs

Xin He1
01 Sep 1991-Journal of Algorithms (Academic Press, Inc.)-Vol. 12, Iss: 3, pp 409-430
TL;DR: A parallel algorithm for recognizing series parallel graphs and constructing decomposition trees and takes O(log2 n + log m) time with O(n + m) processors, where n (m) is the number of vertices (edges) in the graph.
About: This article is published in Journal of Algorithms.The article was published on 1991-09-01. It has received 30 citations till now. The article focuses on the topics: Spanning tree & Time complexity.
Citations
More filters
Dissertation
19 Mar 1997
TL;DR: In this paper, a manager of a Koeriers-bedrijf is asked to find the kortest route for a korte-legitimate route to prove a handelsreiziger problem.
Abstract: 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 236

132 citations

Journal ArticleDOI
TL;DR: The tree-decomposition algorithm enables us to construct efficient parallel algorithms for a broad class of problems, when restricted to graphs of tree-width at mostw, many of these problems areNP-complete for general graphs.

55 citations

Proceedings ArticleDOI
22 Oct 1990
TL;DR: The sequential time complexity of the tree-composition problem for fixed w is improved, and some implications for this improvement are stated.
Abstract: An efficient parallel algorithm for the tree-decomposition problem for fixed width w is presented. The algorithm runs in time O(log/sup 3/ n) and uses O(n) processors on a concurrent-read, concurrent-write parallel random access machine (CRCW PRAM). This result can be used to construct efficient parallel algorithms for three important classes of problems: MS (monadic second-order) properties, linear EMS (extended monadic second-order) extremum problems, and enumeration problems for MS properties, for graphs of tree width at most w. The sequential time complexity of the tree-composition problem for fixed w is improved, and some implications for this improvement are stated. >

52 citations

Journal ArticleDOI
TL;DR: Efficient parallel algorithms can be found for a large number of graph problems on series parallel graphs and graphs with treewidth two, including many well-known problems like all problems that can be stated in monadic second-order logic.
Abstract: In this paper a parallel algorithm is given that, given a graph G=(V,E) , decides whether G is a series parallel graph, and, if so, builds a decomposition tree for G of series and parallel composition rules. The algorithm uses O(log \kern -1pt |E|log ^\ast \kern -1pt |E|) time and O(|E|) operations on an EREW PRAM, and O(log \kern -1pt |E|) time and O(|E|) operations on a CRCW PRAM. The results hold for undirected as well as for directed graphs.

25 citations

20 Jul 1992
TL;DR: It is proved that a class of graphs is generated by a hyperedge replacement grammar if and only if it is defined by an FGS of a special form called a regular FGS, which is a logic program having hypergraphs instead of terms in first-order logic.

24 citations


Cites methods from "Efficient parallel algorithms for s..."

  • ...For example, Xin He [9] has presented efficient parallel algorithms for solving the following three problems on TTSP graphs: 3-coloring, depthfirst spanning tree, and breadth-first spanning tree....

    [...]

References
More filters
Journal ArticleDOI
TL;DR: The series-parallel connection is a simple type of electric network termed a series parallel connection which occurs frequently in both theoretical and applied electrical engineering as mentioned in this paper, where the joint resistance is easily evaluated by the following two rules due to Ohm: 0 s.

554 citations

Proceedings ArticleDOI
21 Oct 1985
TL;DR: A bottom-up algorithm to handle trees which has two major advantages over the top-down approach: the control structure is straight forward and easier to implement facilitating new algorithms using fewer processors and less time; and problems for which it was too difficult or too complicated to find polylog parallel algorithms are now easy.
Abstract: : Trees play a fundamental role in many computations, both for sequential as well as parallel problems. The classic paradigm applied to generate parallel algorithms in the presence of trees has been divide-conquer; finding a 1/3 - 2/3 separator and recursively solving the two subproblems. A now classic example is Brent's work on parallel evaluation of arithmetic expressions. This top-down approach has several complications, one of which is finding the separators. We define dynamic expression evaluation as the task of evaluating the expression with no free preprocessing. If we apply Brent's method, finding the separators seems to add a factor of log n to the running time. We give a bottom-up algorithm to handle trees. That is, all modifications to the tree are done locally. This bottom-up approach which we call CONTRACT has two major advantages over the top-down approach: (1) the control structure is straight forward and easier to implement facilitating new algorithms using fewer processors and less time; and (2) problems for which it was too difficult or too complicated to find polylog parallel algorithms are now easy.

433 citations

Journal ArticleDOI
TL;DR: Within a spectrum of shared memory models, it is shown that loglog n is asymptotically optimal for n processors to merge two sorted lists containing n elements.

294 citations

Journal ArticleDOI
TL;DR: It is shown in a umfied manner that there exist hnearume algorithms for many combinatorial problems ff an input graph is restricted to the class of series-parallel graphs.
Abstract: A series-parallel graph can be constructed from a certain graph by recurslvely applying \"series\" and \"parallel\" connections The class of such graphs, which Is a well-known model of series-parallel electrical networks, is a subclass of planar graphs It is shown in a umfied manner that there exist hnearume algorithms for many combinatorial problems ff an input graph is restricted to the class of series-parallel graphs. These include 0) the decision problem with respect to a property characterized by a finite number of forbidden graphs, (u) the mlmmum edge (vertex) deletion problem with respect to the same property as above, and (Ul) the generalized matching problem Consequently, the following problems, among others, prove to be hnear-tlme computable for the class of series-parallel graphs. (I) the minimum vertex cover problem, (2) the maximum outerplanar (reduced) subgraph problem, (3) the minimum feedback vertex set problem, (4) the maximum (induced) hne-subgraph problem, (5) the maximum matching problem, and (6) the maximum disjoint triangle problem.

293 citations