Lossless Derandomization for Undirected Single-Source Shortest Paths and Approximate Distance Oracles
Yan
A common step in algorithms related to shortest paths in undirected graphs is that, we select a subset of vertices as centers, then grow a ball around each vertex until a center is reached. We want the balls to be as small as possible. A randomized algorithm can uniformly sample $r$ centers to achieve the optimal (expected) ball size of $Î(n/r)$. A folklore derandomization is to use the $O(\log n)$ approximation for the set cover problem in the hitting set version where we want to hit all the balls with the centers.
However, the extra $O(\log n)$ factor is sometimes too expensive. For example, the recent $O(m\sqrt{\log n\log\log n})$ undirected single-source shortest path algorithm [DMSY23] beats Dijkstra's algorithm in sparse graphs, but the folklore derandomization would make it dominated by Dijkstra's.
In this paper, we exploit the fact that the sizes of these balls can be adaptively chosen by the algorithm instead of fixed by the input. We propose a simple deterministic algorithm achieving the optimal ball size of $Î(n/r)$ on average. Furthermore, given any polynomially large cost function of the ball size, we can still achieve the optimal cost on average. It allows us to derandomize [DMSY23], resulting in a deterministic $O(m\sqrt{\log n\log\log n})$ algorithm for undirected single-source shortest path.
In addition, we show that the same technique can also be used to derandomize the seminal Thorup-Zwick approximate distance oracle [TZ05], also without any loss in the time/space complexity.
academic
Desaleatorización sin Pérdidas para Caminos Más Cortos de Fuente Única en Grafos No Dirigidos y Oráculos de Distancia Aproximada
Este artículo investiga un problema fundamental en algoritmos de caminos más cortos en grafos no dirigidos: cómo seleccionar un subconjunto de vértices como centros y hacer crecer bolas desde cada vértice hasta alcanzar un centro, con el objetivo de minimizar el tamaño total de las bolas. Los algoritmos aleatorios pueden muestrear uniformemente r centros para lograr un tamaño esperado óptimo de bolas Θ(n/r), pero los métodos tradicionales de desaleatorización introducen un factor adicional O(log n), que es prohibitivo en algunas aplicaciones. Este artículo aprovecha el hecho de que el tamaño de las bolas puede ser elegido adaptativamente por el algoritmo, y propone un algoritmo determinista simple que logra el tamaño óptimo de bolas Θ(n/r) en promedio, extensible a funciones de costo de tamaño polinomial arbitrario. La técnica se aplica exitosamente a la desaleatorización del algoritmo de camino más corto de fuente única O(m√(log n log log n)) de DMSY23 y el clásico oráculo de distancia aproximada de Thorup-Zwick, sin pérdida de complejidad de tiempo/espacio.
El problema central que aborda este artículo es el Problema de Golpear Bolas Crecientes (Hitting Growable Balls). En muchos algoritmos de grafos, particularmente en caminos más cortos, oráculos de distancia y algoritmos de subgrafos dispersos, se encuentra el siguiente patrón:
Seleccionar un subconjunto de vértices R como centros
Hacer crecer bolas B(v) desde cada vértice v hasta alcanzar algún centro
El rendimiento del algoritmo depende del tamaño de |R| y la suma total de tamaños de todas las bolas
Los métodos tradicionales de desaleatorización tienen deficiencias críticas:
Costo del Método Folclórico: Usar el algoritmo de aproximación O(log n) para el problema de cobertura de conjuntos en la desaleatorización introduce un factor adicional O(log n)
Pérdida de Rendimiento Severa: Para el algoritmo DMSY23, este factor adicional degrada la complejidad de tiempo de O(m√(log n log log n)) a O(m log n √(log log n)), siendo nuevamente superado por el algoritmo de Dijkstra
Suposición de Tamaño Fijo de Bolas: Los métodos tradicionales asumen que el tamaño de las bolas está fijo por la entrada, sin poder aprovechar la adaptabilidad del algoritmo
La idea clave de este artículo es: el tamaño de las bolas puede ser elegido adaptativamente por el algoritmo, en lugar de estar fijo por la entrada. Esto proporciona nuevas posibilidades para diseñar algoritmos de desaleatorización más eficientes.
Propone un algoritmo determinista para golpear bolas crecientes: Diseña el Algoritmo 1, que logra el tamaño óptimo de bolas Θ(n/r) en promedio sin introducir factores logarítmicos adicionales
Realiza desaleatorización sin pérdidas del algoritmo DMSY23: Convierte el algoritmo aleatorio de camino más corto de fuente única O(m√(log n log log n)) en un algoritmo determinista con la misma complejidad
Desaleatoriza el oráculo de distancia de Thorup-Zwick: Elimina el factor O(log n) de métodos de desaleatorización anteriores, logrando el mismo tiempo de preprocesamiento O(kn^(1/k)(m + n log n)) que la versión aleatoria
Proporciona un marco teórico general: El método es extensible a funciones de costo de tamaño polinomial arbitrario, con amplia aplicabilidad
El Algoritmo 1 es la contribución central de este artículo:
Algoritmo 1: Golpear Bolas Crecientes
Entrada: número de vértices n, número de bolas m, número objetivo de centros r,
parámetro de costo p
Salida: a lo sumo r centros que golpean todas las bolas
1: Inicializar todas las bolas como vacías, ningún centro seleccionado
2: b ← ⌈2^(p+2)n/r⌉
3: Hacer crecer cada bola hasta tamaño min{b, n}
4: mientras no todas las bolas sean golpeadas hacer
5: m' ← número de bolas no golpeadas
6: Repetidamente seleccionar nuevos centros que golpeen el máximo número
de bolas no golpeadas, hasta que el número de bolas no golpeadas ≤ m'/2^(p+1)
7: b ← 2b
8: Hacer crecer cada bola no golpeada hasta tamaño min{b, n}
9: devolver todos los centros seleccionados
Este es principalmente un trabajo teórico, verificando la corrección del algoritmo y los límites de complejidad mediante pruebas matemáticas rigurosas.
El artículo cita abundante trabajo relacionado, incluyendo principalmente:
DMSY23: Algoritmo aleatorio de camino más corto de fuente única de Duan et al.
TZ05: Trabajo original del oráculo de distancia aproximada de Thorup-Zwick
RTZ05: Mejoras de desaleatorización de Roditty et al.
Dij59: Algoritmo clásico de camino más corto de Dijkstra
FT87: Trabajo relacionado con montículos de Fibonacci
Este artículo realiza contribuciones importantes en el campo de la informática teórica, particularmente en la desaleatorización de algoritmos de grafos. Aunque carece de verificación experimental, su valor teórico y perspectivas de aplicación potencial lo convierten en un progreso importante en el campo.