Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Моделирования



2.3.1. Элементы теории графов

Большое количество задач удобно представлять для исследования в виде сетей, которые позволяют ответить на два главных вопроса: до какого места необходимо дойти (цель) и какой путь следует избрать (как). Методы сетевого анализа основаны на теории графов.

Граф задается двумя множествами: непустым множеством Х (вершин) и множеством пар элементов U, которые называются ребрами для неориентированного графа, или дугами для ориентированного (орграфа). Граф называется ориентированным, если пары элементов упорядочены. На плоскости граф задается в виде точек (вершин) и линий, соединяющих некоторые из них (ребер или дуг).

Определения для неориентированного графа:

· Вершины называются смежными, если существует ребро их соединяющее.

· Вершина и ребро называются инцидентными, если вершина является началом или концом ребра.

· Степенью вершины называется число инцидентных ей ребер.

· Ребро, начало и конец которого совпадают называется петлей.

· Маршрутом называют последовательность вершин и ребер, в которой конец предыдущего ребра совпадает с началом следующего.

· Число ребер в маршруте называют длиной маршрута.

· Цепью называют маршрут, в котором все ребра попарно различны.

· Цепь называется простой, если все вершины попарно различны.

· Граф называется связным, если для любых двух его вершин существует цепь, соединяющая вершины.

· Расстоянием между вершинами связного графа называется длина самой короткой цепи.

· Диаметром графа называется максимальное расстояние между его вершинами.

· Простым циклом называется простая цепь, начало и конец которой совпадают.

· Подграфом графа G называется графG1 с множеством вершин Х1 реберU1, такой, что X1€X, U1€U.

· Деревом называется связный граф без циклов.

· Граф называется взвешенным, если каждому его ребру поставлено в соответствие число.

Для ориентированных графов в основном все определения сохраняются.

Отличия для орграфа:

· Цепь называют путем.

· Цикл называют контуром.

При выполнении анализа на компьютере граф неудобно задавать графически, лучше представлять его в виде матриц.

Матрицей смежности графа, содержащего n – вершин, называется квадратная матрица, каждый элементом которой определяется следующим образом:

1, если вершины i, j соединены ребром

Ai j=

0 в противном случае

Для графа с кратными дугами (ребрами) вместо 1 записывается число дуг (ребер) между вершинами. Матрицу смежности чаще применяют для задания неориентированного графа.

Для орграфа лучше использовать матрицу инцидентности.

Матрицей инцидентности орграфа с n – вершинами и m – дугами называется матрица с n – строками и m – столбцами элемент которой определяется следующим образом:

1, если вершина является началом ребра i, j

-1, если вершина является концом ребра i, j

Ai j= 2, если вершина и начало и конец ребра i, j

0, если вершина и ребро не инцидентны

Среди сетей особо выделяется двухполюсная транспортная сеть, которая удовлетворяет следующим условиям:

1. существует только одна вершина, в которую не заходит ни одна дуга. Эта вершина называется входом или истоком.

2. существует только одна вершина, из которой не выходит ни одна дуга. Эта вершина называется выходом или стоком.

3. каждой дуге поставлено в соответствие неотрицательное число, называемое пропускной способностью дуги.

Постановку и решение подобных задач можно получить с помощью сетевого моделирования.

Природа потоков и принцип их сохранения.

Потоковые процессы имеют динамический характер, связанный с перемещениями, различных по своей природе, масс в пространстве: электроэнергии, нефти, газа, воды, железнодорожного, воздушного, водного, автодорожного транспорта; товаров, финансов, пешеходов, информации и т.д. Множество возникающих в таких случаях задач может быть решено с помощью теории потоков в сетях. В этой теории в качестве основы рассматриваются движения в сетях потоков любой природы от источника к стоку.

Определение

Потоком в сети S=(N,U) от входа к выходу называется неотрицательная функция f, определенная на множестве дуг U сети, со следующими свойствами:

1. величина потока, по каждой дуге не должна превосходить ее пропускной способности; 0<=f(i,j)<=c(i,j)

2. величина потока, входящего в каждую вершину сети, за исключением входа и выхода, равна величине потока, выходящего из этой вершины.

∑f (i,j) - ∑f +(i,j)=0

Из определения потока следует, что величина потока не исчезает и не накапливается в вершинах сети. Следовательно, количества потока из входа равно количеству потока, заходящему на выход. Это значение называется величиной потока.

Величина потока равна сумме значений потоков, выходящих из истока или входящих в сток.

V=∑f (i,j) = ∑f +(i,j)

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

Теорема о максимальном потоке и минимальном разрезе

Пусть в ориентированной сети от источника к стоку протекает поток, величина которого равна V. Поскольку пропускная способность каждой дуги c(i,j) является величиной конечной, то максимальная величина допустимого потока всей сети тоже ограничена. Максимальный поток определяется на основе понятия разреза.

Понятие разреза

Множество вершин можно разбить на два непересекающихся подмножества, которые соединяются между собой дугами Up. Причем исток принадлежит одному подмножеству N-p, а сток другому N+p. Тогда величина потока из подмножества N-p в подмножество N+p, протекающего по дугам не может быть больше, чем сумма пропускных способностей дуг этого подмножества

∑f (i,j)< = ∑c(i,j)

Этот барьер для потока, отделяющий множество узлов N-p от множества узлов N+p, называется разрезом. Разрез представляет такое множество дуг Up, исключение которых отделяет вход от выхода.

Величина максимального потока от источника к стоку ограничена сверху величиной разреза, определяемой суммой пропускных способностей всех входящих в него дуг множества Up.

Минимальным разрезом сети называют разрез, имеющий минимальную величину.

В соответствии с теоремой о максимальном потоке и минимальном разрезе, сформулированным Фордом и Фалкерсоном, величина максимального потока от входа в выход равна величине минимального разреза, отделяющего вход и выход сети, следовательно:

V=min C(N-p, N+p)

Пример

На рисунке 2.2. изображена сеть автомобильных потоков

Рис. 2.2

Стрелками показано направление одностороннего разрешенного движения потоков автомобилей. От одного перекрестка до другого пропускная способность ограничена величиной c(i,j). В связи с этим мощность автомобильного потока f (i,j) не может превысить c(i,j).

0< = f (i,j)< = c(i,j)

с(1,2)=3, с(1,3)=9, с(2,3)=2, с(2,4)=8, с(3,4)=2

Задача заключается в определении максимально возможного потока.

Необходимо определить все разрезы и вычислить потоки через эти разрезы. Найти минимальный среди полученных величин. Величина разреза определяется пропускной способностью входящих в него дуг.

Разрез А-А: дуги (3,4) и (2,4)

с(2,4)+с(3,4)=8+2=10

Разрез В-В: дуги (1,3), (2,3) и (2,4)

с(1,3)+с(2,3)+с(2,4)=9+2+8=19

Разрез С-С: дуги (1,2) и (3,4)

с(1,2)+с(3,4)=3+2=5

Тогда величина максимального потока от источника к стоку равна величине минимального разреза:

Min[(A,A),(B,B),(C,C)]=min[10,19,5]=5

Построение максимального потока

Для решения этой проблемы необходимо ввести несколько понятий.

Пусть задана сеть S=(N,U) с множеством вершин N и множеством дуг U.

Определение. Дуга (i,j) называется допустимой дугой, если она обладает одним из следующих свойств:

1) направление дуги совпадает с направлением потока, и значение потока по этой дуге меньше ее пропускной способности:

f (i,j)< = c(i,j)

2) направление дуги противоположного направлению потока, и величина потока отлична от нуля:

f (i,j)>0

Дуги, обладающие первым свойством, называют увеличивающими; дуги, обладающие вторым свойством, - уменьшающими.

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

Пример. Построить максимальный поток для сети, представленной на рисунке.

Алгоритм построения максимального потока:

1. задание начального значения потока.

2. построение увеличивающей цепи от входа к выходу сети. Если такой цепи нет, то максимальный поток построен и его величина

V=∑f (i,j) = ∑f +(i,j)

3. в противном случае – увеличение вдоль построенной цепи значения потока на максимально возможную величину ∆f, при этом по каждой увеличивающей дуге поток увеличивается на ∆f, а по каждой уменьшающей дуге уменьшается на ∆f.

Исходные данные: с(0,1)=9, с(0,3)=8, с(1,2)=6, с(1,4)=3, с(3,4)=4, с(2,4)=4,с(2,5)=10, с(4,5)=7

f (0,1)=6, f (0,3)=3, f (1,2)=3, f (1,4)=3, f (3,4)=3, f (2,4)=2, f (2,5)=5, f (4,5)=4.

Цепь (0,1,2.4,5) является увеличивающей, так как все ее дуги допустимые. Дуга (2,4) – уменьшающая, остальные – увеличивающие.

Увеличим поток вдоль цепи (0,1,2.4,5):

Вдоль дуги (0,1) увеличим на разницу между пропускной способностью и уже проходящим по ней потоком (9-6)=3.

Вдоль дуги (1,2) (6-3)=3

Дуга (2,4) является уменьшающей, максимальная величина, на которую можно уменьшить поток на ней (4-2)=2.

По дуге (4,5) поток можно увеличить на (7-4)=3.

Таким образом, максимальная величина ∆f, на которую можно увеличить поток, составляет:

∆f=min(3,3,2,3)=2

При этом на каждой увеличивающей дуге поток увеличивается на эту величину, а по каждой уменьшающей – уменьшается.

Новое значение потока по каждой дуге этой цепи равно:

f (0,1)=8, f (0,3)=3, f (1,2)=5, f (1,4)=3, f (3,4)=3, f (2,4)=0, f (2,5)=5, f (4,5)=6.

После такого перераспределения значение потока стало равным V=(8+3)=5+6=11

Условие сохранения потока в вершинах сети по-прежнему выполняется.

Рассмотрим цепь (0,1,2,5). Эта цепь увеличивающая, так как все дуги допустимые.

Поток вдоль этой цепи можно увеличить на:

∆f=min(9-8,6-5,10-5)=1

Новое значение потока по каждой дуге этой цепи равно:

f (0,1)=9, f (0,3)=3, f (1,2)=6, f (1,4)=3, f (3,4)=3, f (2,4)=0, f (2,5)=6, f (4,5)=6.

Рассмотрим цепь (0,3,4,5).

∆f=min(8-3,4-3,7-6)=1

Новое значение потока по каждой дуге этой цепи равно:

f (0,1)=9, f (0,3)=4, f (1,2)=6, f (1,4)=3, f (3,4)=4, f (2,4)=0, f (2,5)=6, f (4,5)=7.

Больше увеличивающих цепей нет, следовательно, максимальный поток построен. Его величина

V=11+1+1=9+4=6+7=13

Минимальный разрез, соответствующий этому потоку, содержит дуги (1,2), (1,4), (3,4), а его пропускная способность 6+3+4=13 соответствует величине максимального потока.

Что Вы должны знать:

(вопросы для самоконтроля

1. Каковы основные термины и определения для неориентированных графов?

2. Каковы основные термины и определения для ориентированных графов?

3. Как строится матрица смежности?

4. Как строится матрица инцидентности?

5. В чем заключается принцип сохранения потоков на сетях?

6. В чем состоит сущность теоремы о максимальном потоке?

7. Как выполняются разрезы на сети?

Примеры для закрепления:

Нарисуйте граф по матрице смежности

Номера вершин              
             
             
             
             
             
             

2.3.2. Сетевое планирование и управление

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

2.3.3. Основные понятия и терминология, используемые в сетевом планировании

Комплекс работ - это задача, для выполнения которой необходимо осуществить достаточно большое количество разнообразных работ.

Сетевая модель - это план выполнения некоторого комплекса взаимосвязанных работ, заданного в форме сети, графическое изображение которой называется сетевым графиком.

Главными элементами сети являются события и работы.

Работа может быть определена как действительная работа, т. е. протяженный во времени процесс с затратами ресурсов, либо -это ожидание, т.е. протяженный во времени процесс, не требующий затрат труда, либо -это фиктивная работа, не требующая времени и затрат ресурсов. Фиктивная работа указывает, что возможность выполнения одной работы непосредственно зависит от результатов другой.

Событие - это момент завершения какого- либо процесса. Последующие работы могут начаться только тогда, когда событие завершиться. Отсюда следует двойственный характер события. С одной стороны - это конечное событие для одной работы, с другой стороны - это начальное событие для следующей. Событие не имеет протяженности во времени. Среди событий есть исходное (первое) и завершающее (последнее). В сетевых графиках событие обычно изображают кружочками, а работы стрелками.

Рис.2.3.

2.3.4. Порядок построения сетевых графиков

1. Планируемый процесс разбивается на отдельные работы.

2. Составляется перечень работ и событий.

3. Продумываются их логические связи и последовательность выполнения.

4.Оценивается длительность каждой работы.

5. Составляется сетевой график..

6. Рассчитываются параметры событии к работ.

7.Определяются резервы времени для событий и работ.

8. Проводится анализ и оптимизация сетевого графика.





Дата публикования: 2015-03-26; Прочитано: 444 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.019 с)...