De nombreux algorithmes de flux max que je vois couramment implémentés, l'algorithme de Dinic, le réétiquetage push et d'autres, peuvent voir leur coût asymptotique en temps amélioré grâce à l'utilisation d' arbres dynamiques (également appelés arbres coupés de liens).
- Push relabel s'exécute en ou ou normalement, mais avec des arbres dynamiquesO ( V 3 ) O ( V 2 √O(VElog(V2/E))
- L'algorithme de Dinic fonctionne en , mais avec des arbres dynamiquesO ( V E log ( V ) )
Cependant, les implémentations pratiques des algorithmes max-flow dans la plupart des bibliothèques ne semblent pas utiliser cette structure de données. Les arbres dynamiques sont-ils déjà utilisés dans la pratique pour le calcul du débit maximal? Ou ont-ils trop de frais généraux pour être utiles pour les problèmes réels?
Y a-t-il d'autres domaines problématiques où des arbres coupés de liens sont utilisés?
Cette question est liée à une question que j'ai posée sur cstheory: Certains des algorithmes de débit maximal de pointe sont-ils pratiques?
la source
Réponses:
Il existe un document intitulé " Dynamic Trees in Practice " qui passe en revue la mise en œuvre pratique.
Les autres catégories que l'arborescence Link-Cut pourrait être utilisée efficacement se trouvent dans l' indexation de base de données . Vous pouvez le trouver dans le livre " Database Index Techniques ".
la source
cet article conclut à la fin qu'un arbre de coupure de lien (LC) surpasse les arbres de râteau-compression (RC) pour l'algorithme de flux maximal Sleator / Tarjan en utilisant un générateur de graphe aléatoire Dimacs standard.
l'article se concentre sur la propagation du changement comme une application des arbres dynamiques. Par exemple, la propagation des modifications est similaire à la façon dont les cellules de tableur Excel doivent être recalculées sur les modifications apportées à certaines cellules en fonction des dépendances cellule / formule. les auteurs ont publié leur code sous forme de bibliothèque ouverte.
Une analyse expérimentale de la propagation du changement dans les arbres dynamiques Acar, Blelloch, Vittes
la source