Pour le problème du débit maximal , il semble y avoir un certain nombre d'algorithmes très sophistiqués, avec au moins un développé aussi récemment que l'année dernière. Le débit maximal d'Orlin en O (mn) temps ou mieux donne un algorithme qui s'exécute en O (VE).
D'un autre côté, les algorithmes que je vois le plus souvent implémentés sont (je ne prétends pas avoir fait une recherche exhaustive; c'est juste par observation occasionnelle):
- Edmonds-Karp: ,
- Push-relabel: ou utilisant la sélection de sommets FIFO,O ( V 3 )
- Algorithme de Dinic: .
Les algorithmes avec un meilleur temps de fonctionnement asymptotique ne sont-ils tout simplement pas pratiques pour les tailles de problème dans le monde réel? De plus, je vois que les "arbres dynamiques" sont impliqués dans plusieurs algorithmes; sont-ils déjà utilisés dans la pratique?
Remarque: cette question a été initialement posée sur le débordement de pile, ici , mais on m'a dit que ce serait mieux ici.
EDIT : J'ai posé une question connexe sur cs.stackexchange , en particulier sur les algorithmes qui utilisent des arbres dynamiques (aka arbres coupés de liens), qui peuvent être intéressants pour les personnes qui suivent cette question.
Réponses:
Je suis l'un des auteurs de l'article lié ci-dessus.
Je veux juste mentionner que nous avons utilisé `` l'état de l'art '' pour désigner des algorithmes (avec des implémentations accessibles au public) qui fonctionnent bien sur les instances de flux maximal résultant de la vision par ordinateur.
Je voudrais également ajouter que dans ce contexte étroit (mais pratique), les algorithmes qui fonctionnent bien sont souvent ceux qui ont de mauvaises garanties théoriques. Par exemple, ref [5] de notre article (algorithme Boykov-Kolmogorov) est largement utilisé dans la communauté de la vision par ordinateur, mais n'a pas de limite d'exécution fortement polytime.
Enfin, si quelqu'un est intéressé, les données de nos expériences sont disponibles ici: http://ttic.uchicago.edu/~dbatra/research/mfcomp/index.html
Le code sera également bientôt disponible également.
la source
il existe plusieurs façons de répondre à cette question mais pas nécessairement une réponse consensuelle. généralement, les algorithmes qui ont été mis en œuvre et diffusés pour la distribution publique sont «pratiques». cependant, certains algorithmes qui ont été conçus mais pas encore mis en œuvre peuvent être pratiques mais "le jury est absent" pour ainsi dire. **
une bonne stratégie à des fins pratiques consiste à rechercher une enquête. aussi pour ceux qui s'intéressent aux algorithmes pratiques, les points de référence par rapport aux données du monde réel peuvent être une excellente indication quant à leur comportement "réel" attendu.
une étude comparative peut être suffisante, mais elle se trompera du côté des algorithmes viables. il s'agit d'une analyse empirique récente et approfondie de 14 algorithmes de flux max «à la pointe de la technologie» comparés empiriquement aux instances de traitement de la vision, où le flux max a de nombreuses applications. «état de l'art» désigne les algorithmes «mis en œuvre».
[1] MaxFlow Revisited: une comparaison empirique des algorithmes Maxflow pour les problèmes de vision dense par Verma et Batra, 2012
** certains algorithmes théoriques appartiennent à une catégorie de plus en plus répandue dans la communauté TCS sous le nom informel de "galactique", mais malheureusement, les auteurs du TCS n'auto-étiquettent pas directement leurs algorithmes dans cette catégorie, et il n'y a pas de critères publiés ou généralement acceptés pour des algorithmes "galactiques", bien qu'il y ait une référence dans les blogs .
le caractère pratique dans ce sens est peut-être une nouvelle dimension émergente pour l'étude théorique. dans l'idéal, il y aurait une étude des algorithmes de flux maximum spécifiquement sur cet axe / critère "pratique", mais cela n'existe probablement pas au moment de l'écriture. c'est un concept plus récemment reconnu / reconnu dans TCS qui n'a pas encore été complètement formalisé (contrairement par exemple à l'acceptation répandue des algorithmes P comme "efficaces").
la source
Vous pourriez être intéressé par Débits maximums par recherche incrémentielle de largeur par Goldberg, Hed, Kaplan, Tarjan et Werneck
http://research.microsoft.com/pubs/150437/ibfs-proc.pdf http://www.cs.tau.ac.il/~sagihed/ibfs/
la source