Inhaltsverzeichnis:
Definition - Was bedeutet Gieriger Algorithmus?
Ein Greedy-Algorithmus ist eine algorithmische Strategie, die in jeder kleinen Phase die beste Wahl trifft, um schließlich zu einer global optimalen Lösung zu gelangen. Dies bedeutet, dass der Algorithmus zur Zeit ohne Rücksicht auf die Konsequenzen die beste Lösung auswählt. Es wählt die beste sofortige Ausgabe aus, berücksichtigt jedoch nicht das Gesamtbild, weshalb es als gierig gilt.
Techopedia erklärt den Greedy-Algorithmus
Ein gieriger Algorithmus wählt in jedem Schritt die bestmögliche Antwort und geht dann zum nächsten Schritt über, bis er das Ende erreicht, ohne Rücksicht auf die Gesamtlösung. Es bleibt zu hoffen, dass der eingeschlagene Weg global optimal ist, doch wie sich immer wieder gezeigt hat, liefert diese Methode nicht immer eine global optimale Lösung. Tatsächlich ist es durchaus möglich, dass die kurzfristig optimalsten Lösungen zu den weltweit schlechtesten Ergebnissen führen.
Stellen Sie sich viele Abkürzungen in einem Fertigungsunternehmen vor: Kurzfristig werden große Mengen an Herstellungskosten eingespart, was jedoch zu einem Rückgang führt, da die Qualität beeinträchtigt wird, was zu Produktretouren und geringen Umsätzen führt, wenn sich die Kunden mit dem Produkt vertraut machen "Billiges" Produkt. Dies ist jedoch nicht immer der Fall, da es viele Anwendungen gibt, bei denen der Greedy-Algorithmus am besten funktioniert, um die global optimale Lösung zu finden oder zu approximieren, z. B. beim Erstellen eines Huffman-Baums oder eines Entscheidungslernbaums.
Zum Beispiel: Nehmen Sie den Pfad mit der größten Gesamtsumme. Ein gieriger Algorithmus würde aufgrund von Kurzsichtigkeit eher den blauen als den orangen Pfad nehmen, der die größte Summe ergibt.
Komponenten:
- Ein Kandidatensatz von Daten, der eine Lösung benötigt
- Eine Auswahlfunktion, die den besten Beitrag zur endgültigen Lösung auswählt
- Eine Durchführbarkeitsfunktion, die die Auswahlfunktion unterstützt, indem bestimmt wird, ob ein Kandidat zur Lösung beitragen kann
- Eine Zielfunktion, die einer Teillösung einen Wert zuweist
- Eine Lösungsfunktion, die angibt, dass die optimale Lösung gefunden wurde
