- •Раздел 3. Специальные методы решения транспортной задачи
- •3.1 Постановка транспортной задачи и построение математической модели
- •3.2 Открытая и закрытая модели транспортной задачи (тз)
- •3.3 Необходимость специальных методов для решения тз.
- •Практическая задача
- •Нахождение опорного и оптимального плана в тт. Количество переменных в тт и их характеристика.
- •3.5 Методы нахождения опорного плана (первоначального, допустимого, базисного)
- •3.5.1 Метод северо-западного угла
- •3.5.2 Метод минимального элемента (тарифа)
- •3.5.3 Метод двойного предпочтения (минимальных затрат, минимального тарифа с двойным предпочтением)
- •3.6 Вырожденность плана тз
- •3.7 Нахождение оптимального плана тз (оптимального решения)
- •3.7.1 Цикл пересчета тт для нахождения оптимального плана
- •3.7.2 Распределительный метод нахождения оптимального плана тз
- •Практическое решение задач распределительным методом
- •Решение открытых тз
- •Практическое решение открытых тз
- •Метод потенциалов для нахождения оптимального решения тз (метод потенциалов)
- •Экономическая интерпретация. Понятие платежей и псевдостоимостей
- •Особые случаи при решении тз
- •Неединственность решения тз
- •Раздел 4. Графовые модели. Алгоритмы на графах
- •4.1 Теория графов и ее применение
- •4.2 Основные определения графов
- •4.3 Типы графов
- •4.4 Маршруты и связность
- •4.5 Деревья
- •4.6 Сети
- •4.7 Математическое представление графов. (Методы хранения графов в памяти пк)
- •4.8 Нахождение кратчайших путей в графе
4.7 Математическое представление графов. (Методы хранения графов в памяти пк)
Очевидно, что наиболее понятные, полезные для человека способы представления графов – изображение на плоскости в виде точек и соединяющих их линий, - не пригодны для решения задач, связанных с графами, на ЭВМ.
Выбор соответствующей структуры данных для представления графов имеет принципиальное влияние на эффективность алгоритма.
Рассмотрим G=(V,E), где V – множество вершин, E – множество ребер, также зафиксируем количество вершин n и ребер m. В теории графов классическим способом представления графов является матрица инциденций. Это матрица А с n строками (вершинами) и m столбцами (ребрами).
Для орграфа столбец, соответствующий ребру (x,y), содержит «-1» в строке, соответствующей вершине x, «1» в строке, соответствующей y, и «0» во всех остальных строках. Петлю вида (x,x) можно представить со значением «2».
В случае неорграфа столбец, соответствующий ребру (x,y), содержит «1» в строке x и «-1» в строке y.
Рассмотрим Ex1:
Введем ее математическое представление:
(1,2) (1,3) (3,2) (3,4) (5,4) (5,6) (6,5)
1
2
А= 3
4
5
6
Такая форма представления не эффективна как с точки зрения экономии памяти (требуется (m*n) ячеек, причем большинство из них заняты нулями), так и с точки зрения удобства и скорости доступа (вопрос типа : «Существует ли дуга (x,y)?» требует перебор всех ячеек).
Более удачным представлением графа является матрица смежности, определяемая как матрица В размерностью (n*n), bij=1, если существует ребро, идущее из вершины x в вершину y, и bij=0, в противном случае. Здесь подразумевается, что для орграфа существует направление из x в y, а для неорграфа ребро (x,y) идет как из x в y, так и из y в x. Так что матрица будет выглядеть симметричной.
Недостатком матрицы смежности является тот факт, что независимо от числа ребер объем занятой памяти равен n2 ячеек
Рассмотрим Ex2:
Составим матрицу смежности для орграфа из Ex1.
1 2 3 4 5 6
1
2
В= 3
4
5
6
4.8 Нахождение кратчайших путей в графе
Рассмотрим орграф G=(V,E), дугам которого предписаны веса. Это означает, что каждой дуге (u,v), принадлежащей множеству ребер Е поставлено в соответствие некоторое вещественное число a(u,v), называемое весом данной дуги.
Если дуга (u,v) не существует, то d(u,v)=∞
Если последовательность вершин V0, V1, V2, …, Vi определяет маршрут в графе G, то его длина определяется по формуле
d= a(Vi-1,Vi)
Нас будет интересовать нахождение кратчайшего пути между фиксированными вершинами S и T, принадлежащих множеству V.
Длину такого пути будем обозначать d(S,T) и называть расстоянием от S до T.
Если не существует исходного пути из S в T, то d(S,T)= ∞
Контур – нетривиальный замкнутый маршрут, у которого все вершины различны (за исключением первой и последней).
(3)
(1)
(3)
(1)
(2)
(8)
(-5)
Граф А
(3)
(4)
1 2 3 4 5
1
2
3
4
5