Introducción
En los algoritmos, como en la vida, la negatividad puede ser un lastre.
Considere el problema de encontrar el camino más corto entre dos puntos en un gráfico: una red de nodos conectados por enlaces o bordes. A menudo, estos bordes no son intercambiables: un gráfico podría representar un mapa de carreteras en el que algunas carreteras son más lentas que otras o tienen peajes más altos. Los informáticos dan cuenta de estas diferencias emparejando cada borde con un "peso" que cuantifica el costo de moverse a través de ese segmento, ya sea que ese costo represente tiempo, dinero u otra cosa. Desde la década de 1950, han sabido cómo encontrar los caminos más cortos esencialmente tan rápido como sea teóricamente posible, asumiendo que todos los pesos son números positivos.
Pero en algunos gráficos, los pesos pueden ser negativos: viajar a lo largo de un segmento puede compensar el costo de atravesar otro. Considere, por ejemplo, un repartidor que debe equilibrar el costo de la gasolina y los peajes (representados por pesos positivos) con los ingresos del transporte de paquetes (representados por pesos negativos). En tales casos, el algoritmo de ruta más corta conocido más rápido no funciona. Durante décadas, los algoritmos rápidos para encontrar las rutas más cortas en gráficos de peso negativo han sido esquivos.
Ahora, un trío de informáticos ha resuelto este problema de larga data. su nuevo algoritmo, que encuentra las rutas más cortas a través de un gráfico desde un nodo "fuente" dado a todos los demás nodos, casi iguala la velocidad que alcanzaron los algoritmos de peso positivo hace tanto tiempo.
Además, el nuevo enfoque utiliza técnicas matemáticas de décadas de antigüedad, evitando métodos más sofisticados que han dominado la investigación moderna de la teoría de grafos.
“Simplemente no podía creer que existiera un algoritmo tan simple”, dijo Maximiliano Probst Gutenberg, científico informático del Instituto Federal Suizo de Tecnología de Zúrich. “Todo ha estado allí durante 40 años. Simplemente se necesitó a alguien que fuera realmente inteligente y estuviera decidido a hacer que todo funcionara”.
Los límites de la codicia
La historia comienza en 1956, cuando el científico informático holandés Edsger Dijkstra desarrolló un algoritmo rápido para encontrar las rutas más cortas en un gráfico con solo pesos positivos. Para entenderlo, imagine comenzar desde la fuente y explorar el gráfico un nodo a la vez, anotando los pesos de los bordes recién descubiertos a medida que avanza. Cada vez que visite un nodo, realice estimaciones preliminares de las rutas más cortas desde el origen hasta cada uno de los vecinos del nuevo nodo y actualice las estimaciones existentes si ha encontrado una nueva ruta más corta. Para decidir qué nodo inexplorado visitar a continuación, use lo que se llama una estrategia codiciosa: vaya al que esté más cerca de la fuente de acuerdo con su estimación actual.
Con pesos positivos, el camino que toma el algoritmo de Dijkstra para visitar cada nodo por primera vez es realmente el más corto. Es más fácil ver que esto es cierto para el primer paso. Imagine dos nodos A y B conectados por un borde con peso 2. Si A es el nodo de origen, y todos los demás bordes que lo tocan tienen un peso mayor, entonces el camino directo de A a B debe ser el camino más corto posible que conecte esos dos puntos. , ya que el primer segmento de cualquier otro camino ya sería más largo. Un razonamiento similar funciona en cada paso. El algoritmo nunca tiene que mirar hacia atrás, por lo que está garantizado que terminará después de ejecutar el gráfico una vez, eso es lo que lo hace tan rápido.
Pero los pesos negativos significan problemas para la estrategia codiciosa de Dijkstra. Considere nuevamente a nuestro conductor de entrega. Una ruta directa de A a B que genera una pequeña ganancia puede generar menos dinero que una ruta tortuosa que tiene una gran recompensa en alguna parte. “No se pueden tomar decisiones basándose únicamente en la información local”, dijo Sanjeev Khanna, científico informático de la Universidad de Pensilvania. “Es posible que tengas que hacer varios movimientos aparentemente subóptimos para finalmente obtener una recompensa real”.
Durante décadas, los científicos informáticos que trabajaban en gráficos de peso negativo intentaron igualar la velocidad del algoritmo de Dijkstra con algoritmos "combinatorios" similares. Estos implican operaciones discretas, como posibilidades de conteo, modificación de pesos y eliminación selectiva de bordes, que reflejan la estructura discreta del gráfico subyacente. Sin embargo, el progreso se desaceleró en la década de 1990. Más recientemente, los investigadores han utilizado algoritmos de "optimización continua", que toman prestados trucos del cálculo. Desafortunadamente, las aceleraciones resultantes han sido limitadas y, a menudo, se han producido a costa de la simplicidad.
Break the Cycle
En el verano de 2021, dos informáticos que se habían convertido en colegas en la Universidad de Copenhague: danupon nanongkai y Christian Wulff-Nilsen — estaban buscando un tema para un proyecto de investigación conjunto. “Christian dijo: 'Oh, por cierto, estaba de vacaciones y por eso estaba tratando de pensar en algo muy ambicioso'”, recordó Nanongkai, quien ahora trabaja en el Instituto Max Planck de Informática en Saarbrucken, Alemania. Se decidieron por el problema de los caminos más cortos de peso negativo e invitaron Aarón Bernstein de la Universidad de Rutgers para unirse a ellos.
Los tres investigadores eran expertos en algoritmos de gráficos combinatorios para otros problemas, y querían ver hasta dónde podían llegar estos enfoques relativamente antiguos. “En realidad, hay cierta libertad al trabajar en un problema que es ambicioso y ha estado abierto durante mucho tiempo”, dijo Bernstein.
El trío comenzó ignorando temporalmente un subconjunto de posibles gráficos: aquellos que contienen ciclos negativos. Estos son caminos que vuelven al punto de partida después de pasar por una serie de aristas cuyos pesos suman un número negativo. En un gráfico con ciclos negativos accesibles desde el punto de partida, la noción de un camino más corto se rompe, ya que puede hacer que la distancia a cualquier nodo sea tan negativa (o tan rentable) como desee, dando varias vueltas alrededor del ciclo negativo antes. dirigiéndose a su destino.
Los investigadores sospecharon que los caminos negativos largos eran los principales responsables de dificultar el problema. Entonces comenzaron a enfocarse en grupos estrechos de nodos cercanos, que no pueden contener caminos negativos largos: eso es porque si dos puntos están conectados por un camino positivo corto, agregar un camino negativo largo entre ellos crearía un ciclo negativo. Dentro de un grupo compacto, "el hecho de que todos estén juntos en un sentido positivo en realidad también brinda información útil sobre los bordes negativos", dijo Bernstein. “Te dice que las cosas no pueden ser demasiado negativas”.
La mayoría de los gráficos contienen muchos grupos muy unidos que solo están débilmente conectados entre sí. Si los investigadores pudieran identificar todos los grupos, sospechaban que podrían desarrollar una forma de encontrar rápidamente los caminos más cortos dentro de cada uno. A partir de ahí, les resultará más fácil conectar grupos individuales y encontrar las rutas más cortas en el gráfico original. Pero eso requeriría detectar rápidamente las regiones de cualquier gráfico en el que los nodos están muy juntos, algo que no sabían cómo hacer. La clave resultó ser una técnica que se originó en una rama completamente diferente de la teoría de grafos.
Recortar gráficos
En la década de 1980, los científicos informáticos desarrollaron una técnica llamada descomposición de bajo diámetro para seleccionar grupos compactos en un gráfico e identificar los bordes para eliminar para separar esos grupos. Esta técnica proporciona una forma de dividir gráficos en secciones independientes. Se inventó para facilitar los algoritmos "distribuidos", en los que los cálculos se ejecutan en paralelo en diferentes partes de un gráfico, por lo que era menos útil para los algoritmos de rutas más cortas, que no tienen esta propiedad.
Bernstein, Nanongkai y Wulff-Nilsen se dieron cuenta de que la descomposición de bajo diámetro podría ayudarlos a identificar grupos sin mucha negatividad concentrada. Desafortunadamente, los algoritmos de descomposición estándar de bajo diámetro solo funcionan en gráficos no dirigidos, aquellos en los que cada borde se puede atravesar en ambas direcciones. Mientras tanto, el problema de los caminos más cortos de peso negativo solo tiene sentido en gráficos dirigidos, en los que cada borde es una calle de sentido único. (De lo contrario, un solo borde negativo no dirigido crearía un ciclo negativo que consiste en saltos repetidos de un lado a otro de ese borde). Si los investigadores quisieran usar la descomposición de bajo diámetro, tendrían que adaptarla.
Eso es lo que hicieron en su nuevo periódico. Inspirado por trabajo pasado en el que Bernstein y Wulff-Nilsen habían colaborado con Probst Gutenberg, desarrollaron un procedimiento de fracturamiento para gráficos dirigidos análogo a la descomposición de bajo diámetro. El procedimiento corta un gráfico dirigido arbitrario en una serie de grupos muy unidos mediante un proceso aleatorio para eliminar solo un puñado de bordes. Posteriormente, esos grupos están conectados por una red más dispersa en la que todos los bordes apuntan en la misma dirección. Ese tipo de red se llama gráfico acíclico dirigido o DAG.
Piense en un DAG como una corriente en la que el agua puede fluir por diferentes caminos: algunos caminos fluyen desde diferentes fuentes, otros se abren en diferentes direcciones y otros pueden dividirse y fusionarse nuevamente. Pero nada fluye nunca hacia atrás, por lo que no hay ciclos; esto hace que sea mucho más fácil trabajar con los DAG.
Los investigadores han sabido durante mucho tiempo cómo encontrar rápidamente las rutas más cortas en los DAG, incluso con pesos negativos. Entonces, la técnica de fracturamiento permitió a los tres investigadores reducir cualquier gráfico dirigido a una combinación de dos casos especiales (DAG y agrupaciones estrechas) que eran fáciles de manejar.
El nuevo algoritmo de rutas más cortas utiliza repetidamente el procedimiento de fractura para dividir un gráfico en grupos muy unidos conectados por un DAG. Luego rompe esos grupos más y más. Al final del proceso, los grupos del nivel más interno están lo más conectados posible. Parte de la razón por la que el algoritmo es tan rápido es que no se necesitan muchas iteraciones para descomponer completamente incluso un gráfico muy grande, al igual que no se necesita mucho para reducir un número grande a un tamaño razonable si se divide repetidamente. por la mitad.
Con el gráfico completamente desglosado de esta manera, los investigadores pudieron encontrar rápidamente los caminos más cortos a través de cada parte del gráfico. Para los grupos compactos en el nivel más interno de la estructura del gráfico anidado, esto fue fácil: prácticamente no les quedaba negatividad. Y los investigadores ya sabían cómo encontrar los caminos más cortos en las secciones DAG que los unían.
Finalmente, el algoritmo vuelve a agregar los bordes eliminados por el proceso de fractura y calcula sus efectos en los caminos más cortos. Los investigadores demostraron que su proceso para eliminar bordes al azar casi siempre requeriría solo unas pocas eliminaciones para eliminar los bordes "hacia atrás", del tipo que convertiría su DAG en un gráfico con ciclos grandes. Eso hizo extremadamente improbable que cualquier camino más corto pasara a través de demasiados segmentos hacia atrás, por lo que pudieron resolver este complicado paso final combinando dos métodos de libros de texto de la década de 1950: el algoritmo de Dijkstra y el primer algoritmo desarrollado para gráficos de peso negativo.
“Es una composición extremadamente inteligente de estas ideas”, dijo Khanna. El algoritmo es el primero para gráficos de peso negativo que se ejecuta en un tiempo "casi lineal", lo que significa que su tiempo de ejecución es casi proporcional al tiempo requerido solo para contar todos los bordes, lo más rápido posible.
¿Y los gráficos con ciclos negativos, que los investigadores decidieron ignorar al principio? Después de dar los toques finales a su algoritmo de rutas más cortas, demostraron que también podría funcionar como un algoritmo rápido para identificar ciclos negativos. Prácticamente ningún gráfico estaba fuera de su alcance.
Caminos paralelos
Bernstein presentó el resultado del equipo en la conferencia Foundations of Computer Science de 2022, donde su manuscrito que describe el nuevo algoritmo fue considerado uno de los dos mejores artículos. Él otro papel también pasó a describir un nuevo algoritmo de tiempo casi lineal para resolver un problema de larga data en la teoría de grafos.
Ese algoritmo, desarrollado por Probst Gutenberg y otros cinco investigadores, abordó un problema más general llamado flujo de costo mínimo, en el que el objetivo es optimizar el transporte a través de muchas rutas en paralelo, y cada borde tiene una capacidad máxima y un costo asociado. . Los problemas de caminos más cortos son un caso especial de flujo de costo mínimo, por lo que el nuevo algoritmo de flujo de costo mínimo también podría usarse para resolver el problema de caminos más cortos de peso negativo en un tiempo casi lineal, aunque con un enfoque radicalmente diferente.
El equipo que trabaja en el flujo de costo mínimo desarrolló su algoritmo rápido de propósito general utilizando una síntesis compleja de técnicas de optimización continua y combinatoria que lo hace difícil de manejar en la práctica, al menos actualmente. El algoritmo combinatorio de Bernstein y sus colegas, aunque restringido a un problema más específico, logra su tiempo de ejecución casi lineal sin sacrificar la simplicidad.
“Esto es lo sorprendente de este artículo”, dijo Probst Gutenberg. “Puede explicárselo a un estudiante universitario y también puede implementarlo en su computadora”.
Como resultado, este nuevo algoritmo ha reavivado el interés por los enfoques combinatorios de otros problemas de la teoría de grafos. Queda por ver qué problemas se pueden resolver rápidamente usando algoritmos puramente combinatorios y cuáles realmente requieren las técnicas continuas desarrolladas en los últimos 20 años.
“Esta es una pregunta filosófica que estoy tratando de entender”, dijo Nanongkai. "Este problema del camino más corto da algo de esperanza".
- Distribución de relaciones públicas y contenido potenciado por SEO. Consiga amplificado hoy.
- Platoblockchain. Inteligencia del Metaverso Web3. Conocimiento amplificado. Accede Aquí.
- Fuente: https://www.quantamagazine.org/finally-a-fast-algorithm-for-shortest-paths-on-negative-graphs-20230118/
- 20 años
- 2021
- 2022
- a
- Nuestra Empresa
- Conforme
- Mi Cuenta
- alcanzado
- a través de
- acíclico
- adaptar
- Añade
- Después
- en contra
- algoritmo
- algoritmos
- Todos
- ya haya utilizado
- hacerlo
- ambicioso
- Antiguo
- y
- Otra
- aparte
- enfoque
- enfoques
- en torno a
- asociado
- Atrás
- Balance
- basado
- porque
- a las que has recomendado
- antes
- comenzó
- CREEMOS
- Bernstein
- MEJOR
- entre
- Más allá de
- Big
- pedir prestado
- Rama
- Descanso
- rompe
- Roto
- calcula
- , que son
- Capacidad
- case
- cases
- a ciertos
- CIS
- Cerrar
- de cerca
- Médico
- colaborado
- personal
- combinación
- combinar
- cómo
- computaciones
- computadora
- Ciencias de la Computación
- Concentrado
- Congreso
- conectado
- Conectándote
- Considerar
- Que consiste
- continuo
- Cost
- podría
- Para crear
- Current
- En la actualidad
- Corte
- de ciclos
- DÍA
- décadas
- decidido
- decisiones
- entrega
- describir
- destino
- determina
- desarrollar
- desarrollado
- HIZO
- diferencias
- una experiencia diferente
- difícil
- de reservas
- dirección
- descubierto CRISPR
- distancia
- No
- No
- DE INSCRIPCIÓN
- conductor
- Holandés
- cada una
- generarte
- más fácil
- fácil
- Southern Implants
- los efectos
- eliminarlos
- eliminado
- facilita
- enteramente
- esencialmente
- estimación
- estima
- Incluso
- NUNCA
- todos
- existente
- existe
- expertos
- Explicar
- Explorar
- extremadamente
- facilitar
- ventilador
- RÁPIDO
- más rápido
- Federal
- pocos
- final
- Finalmente
- Encuentre
- la búsqueda de
- encuentra
- Nombre
- primer vez
- de tus señales
- Flujos
- Focus
- encontrado
- Fundamentos
- Freedom
- en
- completamente
- promover
- GAS
- General
- propósito general
- Alemania
- obtener
- dado
- da
- Go
- objetivo
- gráfica
- gráficos
- Codicioso
- garantia
- Gutenberg
- A Mitad
- puñado
- encargarse de
- pasó
- Título
- ayuda
- más alto
- esperanza
- Cómo
- Como Hacer
- Sin embargo
- HTML
- HTTPS
- ideas
- Identifique
- implementar
- in
- por
- independientes
- INSTRUMENTO individual
- información
- inspirado
- ejemplo
- Innovadora
- intereses
- inventado
- involucrar
- IT
- iteraciones
- únete
- unión
- Clave
- Tipo
- Saber
- conocido
- large
- mayores
- Nivel
- Vida
- Limitada
- límites
- enlaces
- local
- Largo
- largo tiempo
- de larga data
- por más tiempo
- Mira
- hecho
- para lograr
- HACE
- Realizar
- manera
- muchos
- mapa
- Match
- matemático
- max
- máximas
- significa
- Mientras tanto
- ir
- métodos
- podría
- Moderno
- dinero
- más,
- se mueve
- emocionante
- hace casi
- negativas
- vecinos
- Nets
- del sistema,
- Nuevo
- Next
- nodo
- nodos
- Noción
- número
- números
- compensar
- ONE
- habiertos
- Operaciones
- optimización
- Optimización
- reconocida por
- originada
- Otro
- Otros
- de otra manera
- paquetes
- emparejamiento
- Papel
- papeles
- Paralelo
- parte
- partes
- Pasando (Paso)
- pasado
- camino
- Pennsylvania
- recoger
- Platón
- Inteligencia de datos de Platón
- PlatónDatos
- punto
- puntos
- positivo
- POSIBILIDADES
- posible
- prácticamente
- presentó
- Problema
- problemas
- Profit
- rentable
- Progreso
- proyecto
- perfecta
- demostrado
- proporciona un
- puramente
- Poniendo
- Revista Quanta
- pregunta
- con rapidez
- radicalmente
- azar
- rápidamente
- en comunicarse
- real
- realizado
- razón
- mejor
- recientemente
- reducir
- reflejar
- regiones
- relativamente
- se mantuvo
- permanece
- repetido
- REPETIDAMENTE
- representar
- representado
- representa
- exigir
- Requisitos
- la investigación
- investigadores
- responsable
- límite
- resultado
- resultante
- Gana dinero
- carretera
- Ruta
- Ejecutar
- correr
- Universidad Rutgers
- sacrificando
- Said
- mismo
- Ciencia:
- Científico
- los científicos
- búsqueda
- (secciones)
- segmento
- segmentos
- sentido
- Serie
- Establecido
- Varios
- En Corto
- similares
- sencillos
- sencillez
- desde
- soltero
- Tamaño
- chica
- So
- RESOLVER
- Resolver
- algo
- Alguien
- algo
- en alguna parte
- sofisticado
- Fuente
- Fuentes
- especial
- soluciones y
- velocidad
- HECHIZO
- dividido
- estándar
- comienzo
- fundó
- Comience a
- paso
- Sin embargo
- Historia
- Estrategia
- stream
- calle
- estructura
- Estudiante
- tal
- verano
- suizo
- ¡Prepárate!
- toma
- toma
- equipo
- técnicas
- Tecnología
- decirles
- libro de texto
- El
- La gráfica
- La Fuente
- su
- cosas
- Tres
- A través de esta formación, el personal docente y administrativo de escuelas y universidades estará preparado para manejar los recursos disponibles que derivan de la diversidad cultural de sus estudiantes. Además, un mejor y mayor entendimiento sobre estas diferencias y similitudes culturales permitirá alcanzar los objetivos de inclusión previstos.
- equipo
- a
- juntos
- demasiado
- tema
- tocar
- transporte
- Viajar
- problema
- verdadero
- GIRO
- Convertido
- subyacente
- entender
- universidad
- actualización
- utilizan el
- vacaciones
- virtualmente
- deseado
- Agua
- webp
- peso
- ¿
- sean
- que
- QUIENES
- dentro de
- sin
- Actividades:
- trabajando
- funciona
- se
- años
- Usted
- tú
- zephyrnet
- Zúrich