Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УПП_Дискретная математика.doc
Скачиваний:
43
Добавлен:
12.11.2019
Размер:
6.98 Mб
Скачать

Сетевое планирование. Скорейшее время завершения проекта

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

Пусть данные о строительстве приведены в следующей таблице

Виды работ

Какие работы следуют за перечисленными

Продолжительность работ

1

2,3

2

2

8

3

3

6,7

4

4

6,7

5

5

9

4

6

8

6

7

4

8

2

9

7

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

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

Выходом графа будет являться событие, заключающееся в окончании работ, за которыми не следуют никакие другие работы, т.е. в окончании всего проекта. В данном примере – это работы №7,8,9.

Все другие вершины графа есть события, заключающиеся в окончании одних и начале других работ.

Сетевой граф, соответствующий приведенным в таблице данным, изображен на рис. 3.3.2. Номер работы обозначен числом вне кружка. Число, обведенное кружком, есть продолжительность данной работы. Вход графа, вершина x0 – начало проекта. Выход графа, вершина x5 – окончание проекта.

Рис. 3.3.2

Вершины x1,x2,x3,x4 есть события, заключающиеся в начале одних и окончании других работ. Так, например, вершина x3 есть окончание 3-й и 4-й работ и начало 6-й и 7-й.

Путь максимальной длины из вершины x0 в xi есть скорейшее время наступления события xi. В самом деле, событие x3, например, соответствующее началу 6-й и 7-й работ, может произойти только после окончания 3-й и 4-й работ, а следовательно, и после окончания 1-й, т.к. для выполнения 3-й работы необходимо окончание 1-й работы. Следовательно, скорейшее время наступления события x3 есть

max{5,(2+4)}=6.

Скорейшее время наступления события 5 есть скорейшее время окончания проекта в целом и равно длине пути максимальной длины из вершины x0 в x5.

Итак, если x0 и xn есть вход и выход графа-сети, соответствующего данному проекту, то для определения наиболее раннего срока окончания всех работ нужно найти путь максимальной длины из x0 в xn, т.е. критический путь, и определить его длину. Время, соответствующее скорейшему окончанию работ, т.е. скорейшему завершению проекта, называется критическим временем данного проекта. Оно численно совпадает с длиной критического пути из x0 в xn.

В приведенном примере критический путь, проходящий через вершины x0,x1,x3,x4,x5, имеет длину, равную 14 l()=14, т.е. критическое время данного проекта равно 14.

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

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

Вопросы для самопроверки

  1. Как определить граф?

  2. Какова геометрическая реализация ориентированного, неориентированного, смешанного графа?

  3. Каковы свойства матрицы смежности графа? Можно ли с помощью матрицы смежности задать граф?

  4. Как построить матрицу инцидентности графа?

  5. Как построить матрицу достижимости?

  6. Что такое граф-сеть?

  7. Какова формула связи между количеством рёбер графа и степенями вершин графа?

  8. Какой граф называется связным? Не связным? Какое ребро называется перешейком?

  9. Как определяется граф-дерево?

  10. Когда граф содержит Эйлеров цикл? Эйлерову цепь?

  11. Каков алгоритм построения Эйлерова цикла и Эйлеровой цепи на графе?

  12. Существует ли алгоритм построения Гамильтонова цикла на графе?

  13. Как найти объединение двух графов?

  14. Как найти пересечение двух графов?

  15. Как найти граф, являющийся прямым произведением графов?

  16. Как провести операции объединения, пересечения графов, заданных матрицами смежности?

  17. Как определить число внутренней устойчивости графа?

  18. Как определить число внешней устойчивости графа?

  19. Как определить цикломатическое число?

  20. Как определить хроматическое число графа?

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

  22. Какие графы называются изоморфными?

  23. Какой граф называется плоским?

  24. Какие графы называются гомеоморфными?

  25. Каково достаточное условие планарности графа?

  26. Как формулируется и решается задача о четырёх красках?

  27. Чему равно цикломатическое число графа дерева?

  28. Если «n» – количество вершин графа-дерева, то чему равно количество его рёбер?

  29. Любые ли вершины графа-дерева можно соединить цепью?

  30. Что станет с графом-деревом, если удалить любое ребро?

  31. Что станет с графом-деревом, если любые его вершины соединить ещё одним ребром?

  32. Сколько компонент связности имеет граф-дерево?

  33. Как определяется «частичное дерево»?

  34. В чём состоит алгоритм Краскала?

  35. В чём отличие всех последующих шагов алгоритма Краскала от первого шага?

  36. Что является завершающим шагом алгоритма Краскала и почему?

  37. Какой смысл имеют метки вершин xi в алгоритме Форда?

  38. Метка какой вершины не меняется во всех итерациях?

  39. При определении кратчайшего пути между двумя фиксированными вершинами ориентированного графа. Как влияет использование формулы на решение задачи.

  40. Когда кратчайший путь между двумя фиксированными вершинами ориентированного графа определяется за один шаг, не считая нулевой итерации?

  41. В каких экономических задачах применяется алгоритм Форда для отыскания кратчайшего пути между двумя фиксированными вершинами ориентированного графа?

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

  43. При определении длиннейшего пути между двумя фиксированными вершинами ориентированного графа. Как влияет на решение задачи использование формулы.

  44. Когда длиннейший путь между двумя фиксированными вершинами ориентированного графа определяется за один шаг, не считая нулевой итерации?

  45. Каков алгоритм метода правильной нумерации вершин сетевого графа путём вычёркивания дуг, какие номера получат вершины одного ранга?

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

  47. В чём состоит основная идея сетевого планирования? Опишите краткое содержание задачи?

  48. Какую смысловую нагрузку имеют вершины и дуги графа в сетевом планировании?

  49. Как построить граф-сеть по заданной таблице последовательности работ, составляющих данный проект?

  50. С каких работ заданного проекта нужно начинать строительство графа-сети?

  51. Почему длина пути максимальной длины из x0 в вершину xj есть кратчайшее время наступления события xj?

  52. Как определяется критический путь и критическое время сетевого графа?

К онтрольные задания