Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курсовые по ОАУ / Методы сетевого планирования и управления. Оптимизация проекта по стоимости.doc
Скачиваний:
296
Добавлен:
15.06.2014
Размер:
9.18 Mб
Скачать

1.5. Алгоритмы, использованные для решения задачи оптимизации проекта по стоимости

1.5.1. Общие принципы решения задачи

Принцип решения задач оптимизации, описываемой выражениями (1.3) и (1.4) основано на алгоритме Келли.

Можно утверждать, что минимизация функции (1.3) аналогична максимизации функции вида

. (1.5)

Если представить, что некоторое число Xij равно потоку жидкости через дугу (i,j) за время tij, то aij в этом случае будет являться пропускной способностью дуги (i,j). Тогда минимизация (1.3) сводится к поиску максимального потока, протекающего через сеть.

Задача о максимальном потоке

Сеть состоит из узлов 0..n и дуг. По путям, образованным последовательностями дуг, направляется жидкость из узла 0 в узел n . Каждая дуга имеет пропускную способность cij (пропускная способность — это максимальное количество жидкости, которое может пропустить дуга за единицу времени).

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

Если поток жидкости через дугу (i,j) в единицу времени обозначить как xij, то ограничения, накладываемые на величину потока, будут иметь вид:

0≤xij≤cij (1.6)

, j=1..n-1 (1.7)

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

Поток по сети (совокупность { xij }) является допустимым, если все xij удовлетворяют ограничениям (1.6) и (1.7). Величина потока — это количество жидкости, которое притекает в узел 0 или вытекает из узла n:

.

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

Найти такой допустимый поток (т.е. такие xij ), при котором

(1.8)

Обобщенная задача о максимальном потоке:

Найти максимальный поток в антисимметрическом графе при ограничениях:

, j=1..n-1; (1.9)

0≤lij≤xij≤aij.

Однако при решении задачи о максимальном потоке нужно учитывать следующие особенности:

  1. при оптимизации имеет смысл сокращать только критические работы;

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

1.5.2. Алгоритм поиска ранних сроков свершения событий

В программе, реализующей алгоритм Келли, алгоритм поиска ранних сроков свершения событий применяется для следующих целей:

  1. нахождение исходного оптимального плана для алгоритма Келли;

  2. нахождение допустимого диапазона значений задаваемого пользователем Тд. Если Тд меньше длины критического пути, рассчитанного при всех tij=dij, то задача не имеет решений. Если Тд ,больше продолжительности критического пути, рассчитанного при всех tij=Dij, то оптимальным решением будет план, в котором все tij=Dij.

Постановка задачи поиска ранних сроков свершения событий.

В сети n+1 событий. Пусть известны продолжительности работ tij. Необходимо рассчитать ранние сроки свершения событий Tj. Будем исходить из того, что

Tj =max{ Ti+ tij }. (1.10)

Представим сеть в виде матрицы || Rij || (i,j=0..n). Если события i и j связывает работа, то Rij = tij, иначе Rij не заполняется.

Полагаем все Ti =0. Просматриваем все столбцы от столбца1 до столбца n. В каждом столбце просматриваем Rij (для i<j, т.к. в правильно построенной сети нет работ (i,j) с i≥ j ), каждый элемент помечается числом  i, причем

i=Ti+ tij .

Далее находим max{  i } — это ранний срок Tj свершения события j, соответствующего просматриваемому столбцу.

Соседние файлы в папке Курсовые по ОАУ