Elements of dynamic and 2-SAT programming: paths, trees, and cuts

This thesis presents faster (in terms of worst-case running times) exact algorithms for special cases of graph problems through dynamic programming and 2-SAT programming. Dynamic programming describes the procedure of breaking down a problem recursively into overlapping subproblems, that is, subprob...

Full description

Saved in:
Bibliographic Details
Main Author: Bentert, Matthias (auth)
Format: Electronic Book Chapter
Language:English
Published: Berlin Universitätsverlag der Technischen Universität Berlin 2021
Series:Foundations of computing 14
Subjects:
Online Access:OAPEN Library: download the publication
OAPEN Library: description of the publication
Tags: Add Tag
No Tags, Be the first to tag this record!

MARC

LEADER 00000naaaa2200000uu 4500
001 oapen_2024_20_500_12657_54061
005 20220415
003 oapen
006 m o d
007 cr|mn|---annan
008 20220415s2021 xx |||||o ||| 0|eng d
020 |a depositonce-11462 
020 |a 9783798332096 
020 |a 9783798332102 
040 |a oapen  |c oapen 
024 7 |a 10.14279/depositonce-11462  |c doi 
041 0 |a eng 
042 |a dc 
072 7 |a UMB  |2 bicssc 
100 1 |a Bentert, Matthias  |4 auth 
245 1 0 |a Elements of dynamic and 2-SAT programming: paths, trees, and cuts 
260 |a Berlin  |b Universitätsverlag der Technischen Universität Berlin  |c 2021 
300 |a 1 electronic resource (213 p.) 
336 |a text  |b txt  |2 rdacontent 
337 |a computer  |b c  |2 rdamedia 
338 |a online resource  |b cr  |2 rdacarrier 
490 1 |a Foundations of computing  |v 14 
506 0 |a Open Access  |2 star  |f Unrestricted online access 
520 |a This thesis presents faster (in terms of worst-case running times) exact algorithms for special cases of graph problems through dynamic programming and 2-SAT programming. Dynamic programming describes the procedure of breaking down a problem recursively into overlapping subproblems, that is, subproblems with common subsubproblems. Given optimal solutions to these subproblems, the dynamic program then combines them into an optimal solution for the original problem. 2-SAT programming refers to the procedure of reducing a problem to a set of 2-SAT formulas, that is, boolean formulas in conjunctive normal form in which each clause contains at most two literals. Computing whether such a formula is satisfiable (and computing a satisfying truth assignment, if one exists) takes linear time in the formula length. Hence, when satisfying truth assignments to some 2-SAT formulas correspond to a solution of the original problem and all formulas can be computed efficiently, that is, in polynomial time in the input size of the original problem, then the original problem can be solved in polynomial time. We next describe our main results. Diameter asks for the maximal distance between any two vertices in a given undirected graph. It is arguably among the most fundamental graph parameters. We provide both positive and negative parameterized results for distance-from-triviality-type parameters and parameter combinations that were observed to be small in real-world applications. In Length-Bounded Cut, we search for a bounded-size set of edges that intersects all paths between two given vertices of at most some given length. We confirm a conjecture from the literature by providing a polynomial-time algorithm for proper interval graphs which is based on dynamic programming. k-Disjoint Shortest Paths is the problem of finding (vertex-)disjoint paths between given vertex terminals such that each of these paths is a shortest path between the respective terminals. Its complexity for constant k > 2 has been an open problem for over 20 years. Using dynamic programming, we show that k-Disjoint Shortest Paths can be solved in polynomial time for each constant k. The problem Tree Containment asks whether a phylogenetic tree T is contained in a phylogenetic network N. A phylogenetic network (or tree) is a leaf-labeled single-source directed acyclic graph (or tree) in which each vertex has in-degree at most one or out-degree at most one. The problem stems from computational biology in the context of the tree of life (the history of speciation). We introduce a particular variant that resembles certain types of uncertainty in the input. We show that if each leaf label occurs at most twice in a phylogenetic tree N, then the problem can be solved in polynomial time and if labels can occur up to three times, then the problem becomes NP-hard. Lastly, Reachable Object is the problem of deciding whether there is a sequence of rational trades of objects among agents such that a given agent can obtain a certain object. A rational trade is a swap of objects between two agents where both agents profit from the swap, that is, they receive objects they prefer over the objects they trade away. This problem can be seen as a natural generalization of the well-known and well-studied Housing Market problem where the agents are arranged in a graph and only neighboring agents can trade objects. We prove a dichotomy result that states that the problem is polynomial-time solvable if each agent prefers at most two objects over its initially held object and it is NP-hard if each agent prefers at most three objects over its initially held object. We also provide a polynomial-time 2-SAT program for the case where the graph of agents is a cycle. 
540 |a Creative Commons  |f https://creativecommons.org/licenses/by/4.0/  |2 cc  |4 https://creativecommons.org/licenses/by/4.0/ 
546 |a English 
650 7 |a Algorithms & data structures  |2 bicssc 
653 |a graph diameter 
653 |a shortest paths computation 
653 |a flow and cut problems 
653 |a resource allocation 
653 |a computational biology 
856 4 0 |a www.oapen.org  |u https://library.oapen.org/bitstream/id/9f4deca8-ac9f-47a9-8dd0-5d17a9fa8aa9/bentert_matthias.pdf  |7 0  |z OAPEN Library: download the publication 
856 4 0 |a www.oapen.org  |u https://library.oapen.org/handle/20.500.12657/54061  |7 0  |z OAPEN Library: description of the publication