Dynamic programming for graphs on surfaces

We provide a framework for the design and analysis of dynamic programming algorithms for surface-embedded graphs on n vertices and branchwidth at most k. Our technique applies to general families of problems where standard dynamic programming runs in 2O(k·log k) · n steps. Our approach combines tool...

Descripción completa

Detalles Bibliográficos
Autores: Rué Perna, Juan José|||0000-0002-6420-3179, Sau, Ignasi, Thilikos, Dimitrios
Tipo de recurso: artículo
Fecha de publicación:2014
País:España
Institución:Universitat Politècnica de Catalunya (UPC)
Repositorio:UPCommons. Portal del coneixement obert de la UPC
Idioma:inglés
OAI Identifier:oai:upcommons.upc.edu:2117/86631
Acceso en línea:https://hdl.handle.net/2117/86631
https://dx.doi.org/10.1145/2556952
Access Level:acceso abierto
Palabra clave:Graph Algorithms
analysis of algorithms
parameterized algorithms
graphs on surfaces
branchwidth
dynamic programming
polyhedral embeddings
noncrossing partitions
Grafs, Teoria de
Àrees temàtiques de la UPC::Matemàtiques i estadística
Descripción
Sumario:We provide a framework for the design and analysis of dynamic programming algorithms for surface-embedded graphs on n vertices and branchwidth at most k. Our technique applies to general families of problems where standard dynamic programming runs in 2O(k·log k) · n steps. Our approach combines tools from topological graph theory and analytic combinatorics. In particular, we introduce a new type of branch decomposition called surface cut decomposition, generalizing sphere cut decompositions of planar graphs, which has nice combinatorial properties. Namely, the number of partial solutions that can be arranged on a surface cut decomposition can be upper-bounded by the number of noncrossing partitions on surfaces with boundary. It follows that partial solutions can be represented by a single-exponential (in the branchwidth k) number of configurations. This proves that, when applied on surface cut decompositions, dynamic programming runs in 2O(k) · n steps. That way, we considerably extend the class of problems that can be solved in running times with a single-exponential dependence on branchwidth and unify/improve most previous results in this direction.