Problemas con los agoritmos de tiempo exponencial único desconocido

8

Estoy buscando ejemplos de problemas para los que es fácil ejecutar algoritmos a tiempo , o para algunos pero para los cuales no se sabe si hay un algoritmo ejecutándose en el tiempo . 2 O ( n c ) c > 1 2 O ( n )2O(nlogn)2O(nc)c>12O(n)

Me interesan principalmente los problemas teóricos de gráficos, pero otros buenos ejemplos también serían bienvenidos.

Por ejemplo, es trivial desarrollar un algoritmo que se ejecute en el tiempo para el problema del camino hamiltoniano. Solo prueba todas las permutaciones. Sin embargo, utilizando la programación dinámica, se puede alcanzar el tiempo . ¿Existen otros problemas de conectividad natural o variaciones del problema del camino hamiltoniano para el cual no se conoce ningún algoritmo que se ejecute en el tiempo ? 2 O ( n )O(n!)=2O(nlogn)2O(n)2O(n)

verificar
fuente

Respuestas:

8

En el problema Graph Homomorphism , la entrada es dos gráficos y y la pregunta es si hay un mapeo desde los vértices de hasta los vértices de tal manera que para cada borde tengamos que .H h G H u v E ( G ) h ( u ) h ( v ) E ( H )GHhGHuvE(G)h(u)h(v)E(H)

El problema se puede resolver en el tiempo mediante un algoritmo de fuerza bruta (la notación oculta los factores polinomiales en el tamaño de entrada).O O(|V(H)||V(G))O

Sin embargo, está abierto si se puede resolver a tiempo , y esto aparece como una pregunta abierta enO(c|V(H)|+|V(G)|)

Serge Gaspers
fuente
55
De hecho, suponiendo una hipótesis de tiempo exponencial, se puede demostrar que no existe un algoritmo de tiempo : límites más bajos en problemas de incrustación de gráficosO(c|V(H)|+|V(G)|)
ivmihajlin
¡Gracias por la anotación! La última sección de ese documento también contiene problemas de inclusión más concretos para los que no está claro si se pueden obtener algoritmos de tiempo exponencial simple.
Serge Gaspers
7

Isomorfismo permutacional de grupos de permutación, también conocido como conjugación de grupos de permutación:

Entrada: dos listas de permutaciones en , digamos ySn(π1,,πk)(ρ1,,ρ)

Salida: una permutación tal que o " NO ES ISOMORFICO "πSnπ1π1,,πkπ=ρ1,,ρ

(donde significa el subgrupo generado por ).π1,,πkπi

Al igual que con el ejemplo del camino hamiltoniano, hay un trivial algoritmo. El más conocido actualmente es donde . Tenga en cuenta quepuede ser tan grande como(trivialmente: ) o incluso para no trivial (véase, por ejemplo, el teorema de O'Nan-Scott ). * Eliminar la dependencia dese dejó allí como un importante problema abierto.n!=2O(nlogn)2O(n)|G|O(1)G=π1,,πk|G|n!G=Snn!/nO(1)G|G|

* - A pesar de que puede ser grande, por lo que en el peor de los casos parece ser asintóticamente mejor que trivial, resulta que era exactamente lo que se necesitaba para la prueba de isomorfismo en tiempo polinómico de grupos sin subgrupos normales abelianos.G2O(n)|G|O(1)

Joshua Grochow
fuente
6

Calcular el número de cruce de un gráfico. Los algoritmos exactos existentes implican formularlo como un programa lineal entero con una serie de variables cúbicas en el número de aristas [Chimani et al, ESA 2008] . Incluso para el número de cruce restringido de una página, en el que los vértices se colocan en el límite de un disco y los bordes interiores del disco, los algoritmos conocidos son exponenciales en lugar de exponencialmente simple [Bannister et al, GD 2013] .O(nlogn)

David Eppstein
fuente