Графовые модели. Методы поиска кратчайших путей

Заказать уникальный доклад
Тип работы: Доклад
Предмет: Математические методы и моделирование
  • 12 12 страниц
  • 5 + 5 источников
  • Добавлена 19.12.2018
748 руб.
  • Содержание
  • Часть работы
  • Список литературы
  • Вопросы/Ответы
1. Введение в математическое моделирование. - М.: Логос, 2014. - 397 c.
2. Голубева, Н.В. Математическое моделирование систем и процессов: Учебное пособие / Н.В. Голубева. - СПб.: Лань, 2013. - 192 c.
3. Горлач, Б. А. Математическое моделирование. Построение моделей и численная реализация / Б.А. Горлач, В.Г. Шахов. - М.: Лань, 2016. - 292 c.
4. Зайдель, А.Н. Математическое моделирование. Построение моделей и численная реализация: Учебное пособие / А.Н. Зайдель. - СПб.: Лань, 2016. - 304 c.
5. Рейзлин, В.И. Математическое моделирование: Учебное пособие для магистратуры / В.И. Рейзлин. - Люберцы: Юрайт, 2016. - 126 c.
Фрагмент для ознакомления

Следует особо отметить, что выбор оптимального решения на определенном шаге не дает гарантии получения оптимального решения для задачи в целом. Иными словами, для получения оптимального решения для всей задачи приходится иногда выбирать не лучшее решение на определенном шаге. На текущем шаге выбирается не лучшее решение, а то, которое предусматривает максимальную сумму выигрыша от всех оставшихся шагов.
При учете вышесказанного выполнять вычисления в задачах динамического программирования более удобно от конца к началу. Действительно можно легко планировать последний, m-1. Выполняя вычисления по последнему шагу, надо сделать ряд предположений: как закончился предыдущий, m-1, шаг и для каждого предположения найти условно-оптимальное решение на m-м шаге. Аналогичным образом выполняются m-1, m-2 и т.д. шаги, вплоть до первого шага. Таким образом, будут найдены условно-оптимальные решения на каждом шаге. Затем выполняется переход от условно-оптимального решения к безусловно-оптимальному решению на каждом шаге, иными словами, выполняются решения о первого шага к последнему, ориентируясь на полученные условно-оптимальные решения. Теперь на первом шаге известна «стоимость» решения задачи от второго шага до последнего шага и, соответственно, можно указать оптимальное решение на первом шаге (снизить «стоимость» первого шага). Затем выполняются аналогичным образом второй, третий и т.д. шаги.
При применении динамического программирования многошаговая задача решается два раза: от конца к началу (определение условно-оптимального решения) и от начала к концу (определение безусловно-оптимального решения). Первый этап трудоемкий и длительный, второй - короткий и уточняет решение первого этапа (по готовым рекомендациям определяется безусловно-оптимальное решение на каждом шаге). 
Алгоритм Форда-Беллмана обладает более универсальным характером и может применяться для графовой модели любого вида. Но применение его является наиболее целесообразным для графов, в которых существуют контуры положительной длины и веса дуг обладают произвольными значениями. Если все дуги имеют неотрицательные значения, то с точки зрения вычислительной сложности более эффективным является алгоритм Дейкстры. Для бесконтурных графов наиболее быстро работает алгоритм, основывающийся на идее динамического программирования и реализованный в методах PERT (Project Evaluation Research Task) и CPM (Critical Path Method). В отечественной литературе наряду с указанными обозначениями применяются соответственно термины СПУ (сетевое планирование и управление) и МКП (метод критического пути).
Непосредственными обобщениями вышепредставленной задачи о кратчайшем пути являются две следующие задачи.
Задача А. Для заданной начальной вершины s ( X найти кратчайшие пути ([s, xi] между s и всеми другими вершинами xi ( X \ s.
Задача В. Определить кратчайшие пути ([y, z] между всеми парами вершин y, z ( X.
Почти все методы, дающие возможность решить задачу о кратчайшем пути ([s, t], также обеспечивают и получение всех кратчайших путей от s к любой вершине xi ( X \ s с небольшими дополнительными вычислительными затратами. Задача В может быть решена либо n-кратным применением алгоритмов для задачи А, при этом на каждом шаге в качестве s выбираются разные вершины y ( X, или однократным применением специального алгоритма (к примеру, алгоритма Флойда, обеспечивающего решение задачи В для графов с контурами положительной длины при произвольных весах дуг).
Необходимо сказать, что все перечисленные алгоритмы и методы предназначаются для поиска путей в ориентированных графах. Но, если исходный граф G содержит неориентированные ребра, то для поиска кратчайшего пути может быть рассмотрен новый граф G(, каждое ребро в котором [xi, xj] с весом lij заменяется парой направленных противоположно дуг (xi, xj) и (xj, xi) с весами l(xi, xj) = l(xj, xi) = lij соответственно.
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ

Введение в математическое моделирование. - М.: Логос, 2014. - 397 c.
Голубева, Н.В. Математическое моделирование систем и процессов: Учебное пособие / Н.В. Голубева. - СПб.: Лань, 2013. - 192 c.
Горлач, Б. А. Математическое моделирование. Построение моделей и численная реализация / Б.А. Горлач, В.Г. Шахов. - М.: Лань, 2016. - 292 c.
Зайдель, А.Н. Математическое моделирование. Построение моделей и численная реализация: Учебное пособие / А.Н. Зайдель. - СПб.: Лань, 2016. - 304 c.
Рейзлин, В.И. Математическое моделирование: Учебное пособие для магистратуры / В.И. Рейзлин. - Люберцы: Юрайт, 2016. - 126 c.
Голубева, Н.В. Математическое моделирование систем и процессов: Учебное пособие / Н.В. Голубева. - СПб.: Лань, 2013. – С. 48.
Рейзлин, В.И. Математическое моделирование: Учебное пособие для магистратуры / В.И. Рейзлин. - Люберцы: Юрайт, 2016. – С. 86.
Зайдель, А.Н. Математическое моделирование. Построение моделей и численная реализация: Учебное пособие / А.Н. Зайдель. - СПб.: Лань, 2016. – С. 105.
Введение в математическое моделирование. - М.: Логос, 2014. – С. 195.
Рейзлин, В.И. Математическое моделирование: Учебное пособие для магистратуры / В.И. Рейзлин. - Люберцы: Юрайт, 2016. – С. 88.
Горлач, Б. А. Математическое моделирование. Построение моделей и численная реализация / Б.А. Горлач, В.Г. Шахов. - М.: Лань, 2016. – С. 95.
Введение в математическое моделирование. - М.: Логос, 2014. – С. 196.









2





1

-

Вопрос-ответ:

Какие методы существуют для поиска кратчайшего пути в графовых моделях?

Существует несколько методов поиска кратчайшего пути в графовых моделях, такие как алгоритм Дейкстры, алгоритм Флойда-Уоршелла и алгоритм Беллмана-Форда.

Как работает алгоритм Дейкстры?

Алгоритм Дейкстры начинает с начальной вершины и постепенно расширяет "волны" кратчайших путей из этой вершины до других вершин графа. Он сохраняет информацию о текущем кратчайшем пути и оценке длины пути до каждой вершины в приоритетной очереди, чтобы выбирать следующую вершину для обработки с наименьшей оценкой. Алгоритм продолжает работать, пока не будут посещены все вершины или не будет найден кратчайший путь до конечной вершины.

Как работает алгоритм Флойда-Уоршелла?

Алгоритм Флойда-Уоршелла используется для нахождения всех кратчайших путей между всеми парами вершин во взвешенном ориентированном или неориентированном графе. Он использует динамическое программирование, чтобы постепенно строить таблицу расстояний между всеми парами вершин. Начальное заполнение таблицы основано на весах ребер графа, а затем выполняется несколько шагов, чтобы обновить значения в таблице и получить кратчайшие пути.

Что такое алгоритм Беллмана-Форда?

Алгоритм Беллмана-Форда используется для поиска кратчайшего пути из одной вершины до всех остальных вершин в графе. Он работает с графами с отрицательными весами ребер, в отличие от алгоритма Дейкстры. Алгоритм обходит все ребра графа несколько раз и на каждой итерации обновляет оценки кратчайших путей до каждой вершины на основе текущих оценок и весов ребер.

Какую информацию сохраняет алгоритм Дейкстры для каждой вершины?

Алгоритм Дейкстры сохраняет текущую оценку кратчайшей длины пути до каждой вершины и информацию о предшествующей вершине в кратчайшем пути, чтобы восстановить полный путь в конце.

Какие методы поиска кратчайших путей существуют?

В статье описываются различные методы поиска кратчайших путей в графовых моделях, такие как алгоритм Дейкстры, алгоритм Флойда-Уоршалла и алгоритмы на основе поиска в глубину.

Как работает алгоритм Дейкстры?

Алгоритм Дейкстры используется для нахождения кратчайших путей от одной вершины до всех остальных вершин во взвешенном графе. Он начинает с исходной вершины и присваивает ей расстояние 0, а всем остальным вершинам - бесконечность. Затем алгоритм на каждом шаге выбирает вершину с наименьшим расстоянием и пересчитывает расстояния до ее соседних вершин. Алгоритм повторяется, пока все вершины не будут посещены.

Чем отличается алгоритм Флойда-Уоршалла от алгоритма Дейкстры?

Алгоритм Флойда-Уоршалла также используется для нахождения кратчайших путей в графе, но в отличие от алгоритма Дейкстры он находит кратчайшие пути между всеми парами вершин. Алгоритм Флойда-Уоршалла требует больше вычислительных ресурсов, но позволяет найти кратчайший путь между любыми двумя вершинами в графе.

Какие еще есть способы поиска кратчайших путей в графах?

В статье также упоминаются алгоритмы на основе поиска в глубину, такие как алгоритм Беллмана-Форда и алгоритм поиска Эйлерова пути. Эти алгоритмы позволяют найти кратчайшие пути с учетом специфических условий или ограничений в графе.

Какими примерами применения графовых моделей для поиска кратчайших путей можно привести?

Графовые модели с поиском кратчайших путей широко применяются в различных областях, таких как транспортное планирование, маршрутизация в компьютерных сетях, оптимальное планирование в производственных системах. Они позволяют эффективно находить кратчайшие пути и оптимальные маршруты для различных задач.

Какие методы поиска кратчайших путей существуют в графовых моделях?

В графовых моделях существуют различные методы поиска кратчайших путей. Некоторые из них: алгоритм Дейкстры, алгоритм Флойда-Уоршелла, алгоритм Беллмана-Форда и другие.

Какие книги по математическому моделированию можно рекомендовать для начинающих?

Для начинающих по математическому моделированию рекомендуется книга "Математическое моделирование систем и процессов" автора Н.В. Голубевой. Она представляет базовые теоретические сведения о математическом моделировании и содержит примеры расчетов. Также можно обратить внимание на книгу "Математическое моделирование: построение моделей и численная реализация" авторов Б.А. Горлача и В.Г. Шахова.