Поиск оптимального пути
Исключение избыточных путей
Расширение всех путей, ведущих к одной и той же вершине, снижает эффективность алгоритма. Для исключения избыточности можно использовать принцип динамического программирования:
Лучший путь, проходящий через некоторую промежуточную точку, состоит из лучшего пути от начала до этой точки и лучшего пути из этой точки к цели.
В алгоритм вводится правило: удаляются все пути, приводящие в одну и ту же точку кроме пути, имеющего минимальную оценку (после расширения, перед сортировкой).
Применение недооценок для увеличения эффективности поиска.
Поиск оптимального пути будет более эффективным, если будем основываться не только на оценке пройденного пути, но и на оценке оставшегося.
Если величина оценки окажется больше реальной длины пути, то процесс поиска пойдет неправильно. Чтобы избежать данной ситуации необходимо, чтобы оценка всегда была меньше, чем реальная длина пути. Для этого вводим недооценку.
Алгоритм А*
создать одноэлементную очередь, включающую путь нулевой длины.
пока головной путь в очереди не оканчивается целью и пока очередь не пуста повторять:
удалить головной путь из очереди
создать новые пути, расширяя его
удалить из новых путей все циклические
добавить новые пути в произвольное место очереди
исключить все пути, приводящие в точку, кроме одного с минимальной оценкой
отсортировать очередь согласно оценке пути, состоящей из суммы пройденного пути и недооценки оставшегося, так, чтобы наиболее дешевые оказались в голове.
если полный путь найден, показать его, иначе сообщить о неудаче.
Yandex.RTB R-A-252273-3
- Министерство образования и науки Российской Федерации
- Лабораторная работа № 1
- Данные и знания
- Синтаксис языка Пролог
- Семантика языка Пролог
- Алгоритм работы Пролог-машины.
- Пример построения базы правил на Пролог
- Задание на лабораторную работу
- Лабораторная работа № 2
- Использование списков в Пролог.
- Использование накапливающего параметра
- Управление перебором
- Задание на лабораторную работу
- Лабораторная работа № 3
- Представление задачи в терминах пространства состояний
- Слепые методы поиска
- Методы эвристического поиска
- Поиск оптимального пути
- 3.4 Задание на лабораторную работу
- Лабораторная работа № 4
- Основные понятия теории игр
- Представление игры в матричной форме
- Представление игры в виде игрового дерева
- Задание на лабораторную работу