67602

Минимальные пути, (маршруты) в нагруженных орграфах (графах)

Лекция

Математика и математический анализ

Примеры латинских свойств. Не проходить через данную вершину (или через множество вершин). Не проходить через данную дугу (или через множество дуг). Быть простой цепью (или простым контуром). Быть цепью или контуром. Не проходить через каждую вершину более k раз.

Русский

2014-09-12

223.5 KB

2 чел.

Лекция №11

Минимальные пути, (маршруты) в нагруженных орграфах (графах)

опр || назовем орграф D=(V,X) нагруженным, если на множестве дуг X определена некоторая функция , которую называют весовой функцией

Числа – вес дуги, (цена дуги).

Для любого пути П нагруженного орграфа D обозначим через l(П) сумму длин дуг, входящих в путь П. (Каждая дуга считается столько раз, сколько она входит в путь П).

Величина l называется длиной пути. Если выбрать веса равными 1, то придем к ненагруженному графу.

Опр. Путь в нагр. орграфе из вершины v в верш. w, где vw, называется минимальным, если он имеет наименьшую длину.

Аналогично определяется минимальный маршрут в нагр. графе.

Задачи на min П имеет смысл ставить тогда, когда нет отрицательных замкнутых путей (иначе можно повторять цикл многократно, уменьшая «длину»).

Свойства min путей в нагруженном орграфе

1) Если для дуги  , то  min путь (маршрут) является простой цепью;

2) если  min путь (маршрут) то для  i,j :  путь (маршрут)  тоже является min

Доказывается аналогично св-вам ненагруж. графа.

3) если  min путь (маршрут) среди путей (марш.) из v в w, содержащих не более k+1 дуг (ребер), то  min путь (маршрут) из v в u среди путей (марш.), содержащих не более k дуг (ребер).

Поиск  min пути.

Пусть D=(V,X) – нагр. орграф, V={v1,… vn}, n>1. Введем величины , где i=1,…,n, k=1,2,…,n-1.

Для каждого фиксированного i и k величина  равна длине min пути среди путей из v1 в vi содержащих не более k дуг. Если путей нет, то .

Положим также .

Введем матрицу длин дуг C(D)=[cij] порядка n, причем

Утверждение. При i=2,…,n, k0 выполняется равенство

(Принцип динамического программирования. Использовать его позволяют свойства 2,3 min путей).

Алгоритм Форда-Беллмана нахождения min пути в нагруженном орграфе D из v1 в vi.(i1).

( записываем в виде матрицы, i- строка, k-столбец).

1) Составляем табл. , i=1,…,n, k=0,…,n-1. Если , то пути из v1 в vi нет. Конец алгоритма.

2) Если  то это число выражает длину любого min пути из v1 в vi. Найдем min k11, при котором . По определению  получим, что k1- min число дуг в пути среди всех min путей из v1 в vi.

3) Затем определяем номера i2,…,  такие, что

,

,

. . . . . . . . . . . . .

,

Пример. v1v6 

v1

v2

v3

v4

v5

v6

v1

5

5

2

12

0

0

0

0

0

0

v2

2

7

5

5

5

v3

2

5

3

3

3

3

v4

2

5

4

4

4

4

v5

1

2

2

2

2

2

2

v6

12

12

9

7

7

Путь v1v6

7=5+2 (2-ая стр.)

5=3+2 (3-я стр.)

3=1+2 (5-я стр.)

2=0+2 (1-я стр.)

Путь v1v5v3v2v6

Примеры

Специальные пути в орграфах (маршруты в графах).

Рассмотрим орграфы.

Определение. Свойство называется латинским, если из того, что путь =12, где 1, 2  (множество всех путей в орграфе) обладает свойством , следует, что пути 1, 2 также обладают свойством .

Примеры латинских свойств.

  1.  Не проходить через данную вершину (или через множество вершин).
  2.  Не проходить через данную дугу (или через множество дуг).
  3.  Быть простой цепью (или простым контуром).
  4.  Быть цепью или контуром.
  5.  Не проходить через каждую вершину более k раз.

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

Введем бинарную операцию . Пусть 1=v1v2vk (мн-во путей, обладающих свойством ), 2=w1w2wL. Положим

Положим ==.

Введем латинскую матрицу  размерности nn такую, что  - множество путей длины k из vi в vj, обладающих свойством , (, если таких путей нет).

Под результатом комбинации  будем понимать квадратную матрицу C=[cij] порядка n с элементами

(аналогично произведению матриц: строка на столбец).

Утверждение. При любом k1 выполняется

Пример. Найти все простые цепи длины 3 в орграфе D:

     

v1v2

v1v3

v1v2v3

v1v2v4

v1v3v4

v2v3

v2v4

v2v4v1

v2v3v4

v3v4

v3v4v1

v3v4v2

v4v1

v4v2

v4v1v2

v4v1v3

v4v2v3

v1v3v4v2

v1v2v3v4

v2v3v4v1

v2v4v1v3

v3v4v1v2

v4v1v2v3

Дополнение. Найти простые контура длины 4 в том же орграфе (свойство ).

Для этого используем матрицу , полученную при решении предыдущей задачи

v1v2

v1v3

v2v3

v2v4

v3v4

v4v1

v4v2

v1v3v4v2

v1v2v3v4

v2v3v4v1

v2v4v1v3

=

v3v4v1v2

v4v1v2v3

v1v2v3v4v1

v2v3v4v1v2

v3v4v1v2v3

v4v1v2v3v4

Пример 2.


 

А также другие работы, которые могут Вас заинтересовать

22493. Разработка средств поддержки процесса проектирования интерфейсов 230 KB
  Однако качество цифровых продуктов с точки зрения взаимодействия с пользователем оставляло желать лучшего. Причина кроется в том, что определением конечной формы и поведения программ занимались программисты, ориентированные на качественное и быстрое выполнение технической стороны.
22494. SELECT в SQL Oracle. Основные возможности 335 KB
  1] Основные фразы запроса: SELECT и FROM [3.1] Фраза SELECT [3. В противном случае вы должны иметь привилегию SELECT по отношению к таблице.
22495. ОБРАБОТКА, ХРАНЕНИЕ И ВИЗУАЛИЗАЦИЯ ДАННЫХ ДЛЯ ЗАДАЧ КАРДИОМОНИТОРИНГА 1.92 MB
  В данной работе изучается задача кардиомониторинга; рассматриваются основные понятия, связанные с построением электрокардиограммы; вводится понятие кардиорегистратора, описываются виды регистрации показаний. Ставится задача о разработке программного обеспечения, которое будет принимать поток данных, разбивать его на отведения
22496. ИСПОЛЬЗОВАНИЕ МНОГОПОТОЧНОСТИ ДЛЯ СОЗДАНИЯ ГРАФИЧЕСКОГО JAVA - ПЛАТФОРМЕРА 1.36 MB
  Android - это открытая платформа, основанная на ядре Linux. Установлена она на тысячах устройствах широкого круга производителей. Android предоставляет приложения для всех видов оборудования, которые только можно представить в виде современных мобильных устройств
22497. Разработка компилятора расширяемого языка системного программирования 194 KB
  В ходе работы были описаны лексика и синтаксис языка, а также были приведены ключевые алгоритмы этапы генерации кода и рассмотрен пример практического использования. Результатом стала реализация компилятора на C# и набора библиотек для нового языка, описывающих конструкции...
22498. Обязательное подтверждение соответствия в Таможенном союзе. Объекты, формы, схемы. Перечни продукции, подлежащей декларированию и обязательной сертификации 18.75 KB
  Суть принятых решений состоит в том, чтобы максимально минимизировать риски негативного воздействия на граждан и в целом на национальную безопасность государств - членов Таможенного союза при использовании потреблении) товаров, производимых за его пределами.
22499. Использование дидактических игр на уроках у учащихся младших классов 134 KB
  Значение использования игр в младшем школьном возрасте велико и потому, что в процессе игровой деятельности наряду с умственным развитием осуществляется физическое, эстетическое, нравственное воспитание. Выполняя правила игры, ребята приучаются сдерживаться, контролировать свое поведение
22500. Особливості особистості та сімейної соціалізації адоптованих, дезадоптованих студентів 265.5 KB
  Определить степень адаптированности (дезадаптированности) студентов-первокурсников. Выявить основные стили родительского семейного воспитания у первокурсников с низким и высоким уровнем адаптации. Выявить различия в уровнях личностной и ситуативной тревожности у адаптивных (дезадаптивных) студентов.
22501. ЛИЧНОСТНЫЕ ОСНОВЫ ПОВЕДЕНИЯ ЧЕЛОВЕКА В ОРГАНИЗАЦИОННОМ ОКРУЖЕНИИ 375.8 KB
  Их различия проявляются во всем многообразии характеристик человека. Это разнообразие делает человека человеком а не машиной. И это же разнообразие порождает трудности в управлении организацией проблемы и конфликты во взаимодействии человека с организационным окружением.