Unterscheidet sich Greedy am besten von der ersten Suche?

Eine terminologische Frage - ist Greedy best-first Suche verschiedene Best-first search?

Den wiki-Seite hat einen separaten Absatz über Gierig BFS aber es ist ein wenig unklar.

Mein Verständnis ist, dass Greedy BFS gerade BFS, wo die "besten Knoten aus OPEN" in der wikipedia-Algorithmus ist eine Heuristik-Funktion berechnet für einen Knoten. Damit die Umsetzung dieser:

OPEN = [initial state]
CLOSED = []
while OPEN is not empty
do
 1. Remove the best node from OPEN, call it n, add it to CLOSED.
 2. If n is the goal state, backtrace path to n (through recorded parents) and return path.
 3. Create n's successors.
 4. For each successor do:
   a. If it is not in CLOSED: evaluate it, add it to OPEN, and record its parent.
   b. Otherwise: change recorded parent if this new path is better than previous one.
done

mit "besten Knoten aus OPEN, das eine heuristische Funktion, die Schätzung, wie nahe sich der Knoten an das Ziel, ist tatsächlich Gierig BFS. Bin ich im Recht?

EDIT: Kommentar auf Anonymouse Antwort:

Also im wesentlichen eine gierige BFS nicht brauchen eine "OFFENE Liste" und sollte als Grundlage für Ihre Entscheidungen nur auf den aktuellen Knoten? Ist dieser Algorithmus GBFS:

1. Set START as CURRENT node
2. Add CURRENT to Path [and optinally, to CLOSED?]
3. If CURRENT is GOAL, exit
4. Evaluate CURRENT's successors
5. Set BEST successor as CURRENT and go to 2.

InformationsquelleAutor der Frage Alex | 2011-12-04

Schreibe einen Kommentar