Greedy est un terme non formel, mais il pourrait être (je ne suis pas sûr, c'est pourquoi je demande) que pour certains problèmes, la cupidité peut être formulée mathématiquement et ainsi être prouvée qu'aucun algorithme gourmand optimal n'existe. Est-ce possible?
ds.algorithms
greedy-algorithms
ivotron
la source
la source
Réponses:
La chose la plus simple à faire serait de configurer l'algorithme gourmand pour le problème, puis de chercher un contre-exemple. Si vous en trouvez un, vous avez votre réponse. Sinon, il existe de nombreuses façons de prouver que la cupidité fonctionne . Il y a bien sûr des problèmes avec cela (par exemple, comment formuler spécifiquement l'algorithme gourmand). Quant à caractériser quels problèmes peuvent et quels problèmes ne peuvent pas être résolus avec avidité, il y a aussi une réponse générale à cela.
En fait, dans leur article "An Exact Characterization of Greedy Structures" ( SIAM J. Discrete Math . 6 , pp. 274-283), Helman, Moret et Shapiro ont donné une description formelle de cela (appelé une intégration matroïde , qui généralise à la fois des matroïdes et des greedoids). Extrait du résumé: «Les auteurs présentent des caractérisations exactes de structures sur lesquelles l'algorithme gourmand produit des solutions optimales.»
En d'autres termes: pour des structures telles que celles-ci (qui incarnent essentiellement le type de structures généralement pensé lorsque vous travaillez avec la cupidité), exactement l'ensemble des plongements matroïdes peut être résolu avec avidité.
La définition d'une intégration matroïde n'est pas si difficile que cela, donc prouver qu'un problème donné est ou non une intégration matroïde est certainement faisable. L' entrée Wikipedia donne la définition assez clairement. (Comprendre la preuve pourquoi ce sont les structures exactes résolubles par la cupidité - c'est une toute autre affaire…)
Si votre problème peut être formulé en termes de sélection à partir d'un système d'ensemble pondéré avec une fonction objectif linéaire, et si vous pouvez montrer qu'il ne s'agit pas d' une intégration matroïde, alors vous avez montré qu'il ne peut pas être résolu avec avidité, même si vous n'avez pas '' t été en mesure de trouver un contre-exemple. (Bien que je soupçonne que trouver un contre-exemple serait un peu plus facile.)
Cette approche n'est pas entièrement sans problèmes, je suppose. Comme vous le dites, l'idée générale de la cupidité est plutôt informelle, et il pourrait bien être possible de la modifier de telle manière que le formalisme des systèmes d'ensemble pondérés linéairement ne s'applique pas.
la source
Oui, il y a un tel travail. Allan Borodin et ses co-auteurs ont développé une théorie où ils formalisent la notion de gourmandise et obtiennent des résultats dont les ratios d'approximation peuvent être atteints avec eux. Ils introduisent une classe d'algorithmes prioritaires, qui généralise les algorithmes gourmands. Leur premier travail sur ce sujet est l'article " (Incremental) Priority Algorithms ".
À ivotron: si vous ne parliez pas de ma première interprétation, je supprimerai cette réponse.
la source
Voir aussi: http://en.wikipedia.org/wiki/Greedoid
la source