Hat die geglättete Analyse Eingang in die Hauptstromanalyse von Algorithmen gefunden? Ist es für Algorithmenentwickler üblich, geglättete Analysen auf ihre Algorithmen anzuwenden?
algorithms
complexity-theory
algorithm-analysis
Gilles 'SO - hör auf böse zu sein'
quelle
quelle
Antworten:
Ich könnte mich irren, aber ich betrachte die geglättete Analyse als eine Möglichkeit , das Verhalten von Algorithmen in der Praxis zu erklären , die schlechte theoretische Garantien haben (Simplex, k-Mittelwerte usw.). Ich bin mir nicht sicher , was es bedeuten würde , verwenden geglättet Analyse in der Praxis, mit Ausnahme der Verwendung einer bestimmten Heuristik mit schlechter Worst-Case - Leistung zu rechtfertigen ( "My heuristische bla bla Worst-Case - Verhalten hat aber eine geglättete Analyse zeigt , dass es wird mach dich gut in der Praxis etc etc ")
quelle
Die Art und Weise, wie Menschen Algorithmen in der realen Welt analysieren, unterscheidet sich stark von der akademischen Welt. Während es im akademischen Bereich das Ziel ist, eine nachweislich korrekte Obergrenze für die Laufzeit zu finden, ist es im wirklichen Leben das Ziel zu verstehen, wie der Algorithmus funktioniert und welche Optimierungen die Laufzeit verbessern können. Es gibt zwei Hauptmethoden, die in der Wissenschaft verboten sind, aber in der Praxis angewendet werden:
Abgesehen davon glaube ich nicht, dass es üblich ist, einen Algorithmus in der Praxis zu analysieren, außer einen Fülltext in eine verwandte akademische Publikation einzufügen. Der Fokus liegt je nach Thema entweder auf Software-Engineering oder auf Low-Level-Optimierung.
Schließlich ist eine geglättete Analyse eine Heuristik, mit der erklärt werden kann, warum Algorithmen in der Praxis besser funktionieren, als es der schlimmste Fall vermuten lässt, nämlich weil einige der Eingaben in gewissem Sinne "zufällig" sind. Diese Heuristik kann verwendet werden, um das Verhalten des Algorithmus zu approximieren, wenn die Approximationsmethode verwendet wird.
quelle