Отличается ли жадный алгоритм поиска с лучшим первым от алгоритма поиска с лучшим первым?
На вики-странице есть отдельный параграф о Greedy BFS, но оннемного неясно.
Насколько я понимаю, Greedy BFS - это просто BFS, где «лучший узел из OPEN» в алгоритме Википедии - это эвристическая функция, которую каждый вычисляет для узла.Таким образом, реализация этого:
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
с "лучшим узлом из ОТКРЫТОГО", являющимся эвристической функцией, оценивающей, насколько близко узел к цели, на самом деле является Greedy BFS.Я прав?
РЕДАКТИРОВАТЬ: Прокомментировать ответ Anonymouse:
Таким образом, по сути, жадная BFS не нуждается в «открытом списке» и должна основывать свои решения только натекущий узел?Является ли этот алгоритм 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.