Файл: Цой, С. Синтез оптимальных сетей в системе управления горными предприятиями.pdf
ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 21.10.2024
Просмотров: 112
Скачиваний: 0
тическом пути и ее необходимо выполнять в первую очередь. Заштрихованными прямоугольниками на рисунке 3.3 пока заны работы, поставленные на очередь.
Рис. 3.3.
Условие (3.4) позволяет установить принадлежность ра бот I и г* к критическому пути. Если работы г* и I располо жены на критическом пути, то, согласно (3.3), порядок i* -> -W будет предпочтительнее, и на очередь ставится работа ik, поскольку общая продолжительность проекта Т vip = T(ik~+
Это вытекает непосредственно из условия (3.4), левая часть которого представляет минимально возможное время для осуществления оставшейся части проекта. Действитель но, если неравенство (3.4) справедливо при
max{L*ft; ti-\-Li*)=Likf
57
то в правой его части величина ?гА+^Гйпоказывает, что вре мя завершения работы ikи всех работ пути L*k больше сум
марной продолжительности работ, не поставленных на оче редь (р = 0 ). Следовательно, ik лежит на критическом пути.
В другом случае, когда условие (3.4) |
выполняется при |
т а x{Llk; |
|
а правая часть его есть величина |
то работы 2* |
и I находятся на критическом пути. Действительно, соглас но (3.4), суммарная продолжительность работ с индексом р = = 0 меньше величины 2 ^ + 2z+£/*. Учитывая (3.3), работу
ik необходимо начать раньше 1 -й.
При одновременном соблюдении условий (3.3 )и (3.4) оче редной порядковый номер р присваивается рассматривае мой й работе и проставляется в 2*-й строке таблицы 3.1. Далее выполняется шаг 5. Если не удовлетворяется хоть од но из неравенств для всех строк ik таблицы, лежащих выше
I, то порядковый номер р ставится в строке I с minL* = Z+ i
В нашем случае для ik= 1 (вторая строка таблицы 3.1 поме чена знаком «плюс») справедливо неравенство (3.3):
0 + 3 + т а х {5 ; |
25+15} > 2 + 2 5 + т а х {1 5 ;3 + 5 } ; 4 3> 42 . |
|
Условие (3.4) не удовлетворяется: |
||
(^i I ^2 1 |
1^4) I -^4 I |
^i+max{i<i*j t±-\-L* ); |
(2 5 + 2 0 + 5 + 3 )+ 0 + 0 < 2 5 + m a x{1 5 ; 3+5}; 53>40.
Так как строк со знаком «плюс» в шестом столбце таблицы больше нет, то порядковый номер р = 1 будет у работы 2 = = 1— 4 и записывается во второй столбец таблицы 3.2.
Шаг 5. Для вычисления общей продолжительности про екта на каждой итерации находим две суммы: <+* и о2”* Пер вая сумма представляет отрезок времени от момента начала проекта до момента окончания работы полного контура i, которой присвоен очередной индекс р = п :
|
^ п= ^ -1 + (Х ," -1 + ^ ). |
|
(3.5) |
На первой итерации ( п = 1) 0^ = 0, с2° = 0 , |
£ г° = |
Ьцр=П) и |
|
^i1= ° i° + (А + |
1)= О+ (Li+ f *)= L 1 + f*. |
|
продол |
Вторая сумма предназначена для определения |
|||
жительности |
Ткр и вычисляется с помощью |
агп. |
Значение |
о2в после каждой очередной итерации увеличивается и, ко
58
гда станет на очередь последняя работа полного контура, будет равно
o2n=max{a2n-1; |
(3.6) |
После первой итерации имеем:
c^m axfo.*0; o11-{-Li*}=max{0; a11JrL i*\=311Jr Li*=
Для рассматриваемого примера, используя данные таб лицы 3.1, для i= l= 4 получаем две суммы:
ai1= ai°+(L4+ t 4)= 0 + (0 + 3 )= 3 ; |
|
a21= m a x {a 2°; a-i1+ L 4 }= m a x {0 ; 3 + 5 |
} = 8 . |
Шаг 6. Для работы i полного контура, которой присво ен индекс р, находим сумму £ г+ £ * . Эту величину вычита ем из всех элементов третьего столбца таблицы 3.1. Если при этом получится отрицательное число, то вместо него в тре тий столбец заносим нуль. Разность будет отрицательной,
если |
£*+£*. Это |
равносильно тому, что в течение |
|
промежутка времени |
!/*+;£* внешние работы на пути длины |
||
Lk полностью выполнены. |
Таким образом, на следу |
||
ющей итерации у контурной |
работы k уже не будет пред |
шествующих внешних работ, что означает равенство нулю длины L.
Результаты вычитания показаны в таблице 3.2.
|
|
|
|
|
Таблица 3.2 |
i |
|
Li |
ti |
L *i |
Рабочий |
Р |
столбец |
||||
2 |
|
4 |
20 |
30 |
+ |
1 |
|
0 |
25 |
15 |
min |
4 |
1 |
0 |
3 |
5 |
|
3 |
|
0 |
5 |
0 |
|
Шестым шагом заканчивается очередная итерация и действие алгоритма повторяется с шага 2. Строки, в кото рых индекс р проставлен, т. е. р~^ 1, в последующих итера циях не рассматриваются. Таким образом, за. т (т — коли чество работ полного контура) итераций устанавливается порядок следования работ заданного полного контура, т. е. определяются индексы р для всех работ.
59
Для нашего примера на второй итерации верхний в столбце минимальный элемент Lt будет выбран для i = l =
= 1, а «плюсом» помечена строка i = 2 (табл. |
3.2). Посколь |
|
ку неравенства (3.3) и (3.4) выполняются, |
то |
индекс р = 2 |
присваивается работе г* = 2 . На третьей |
итерации индекс |
р = 3 запишем для работы i= |
1, а р = 4— для работы г = 3 |
|||
(табл. 3.3). |
|
|
|
|
|
|
|
|
Таблица 3.3 |
i |
|
Li |
ti |
Рабочий |
Р |
столбец |
|||
2 |
2 |
0 |
20 |
30 |
1 |
3 |
0 |
25 |
15 |
4 |
1 |
0 |
3 |
5 |
3 |
4 |
0 |
5 |
0 |
Для определения Ткр на каждой итерации по формулам (3.5) и (3.6) проводим следующие вычисления:
|
I о11= 3 ; а21= 3 + 5 = 8 |
|
|
II |
а12= 3 + 4 + 2 0 = 2 7 ; |
o22=m ax{8; |
27+30}=57 |
III |
о13= 27 + 2 5= 5 2; |
o23=max{57; |
52+15}=67 |
IV 0^ = 52+ 5= 57; o24=max{67; 57+0}=67.
Следовательно, Ткр = 67.
Окончательный вариант распределения работ полного контура во времени представлен на рисунке 3.4. Здесь обо-
Рис. 3.4.
60
значения работ полного контура и величин Lt и Lt* совпа дают с элементами рисунка 3.2. Легко проверить, что поря док выполнения работ полного контура на рисунке 3.4 яв ляется оптимальным. Любой другой вариант последователь ности дает большую длину критического пути. Например, при 2->-4->-1->-3 продолжительность Ткр = 7 0 , а при 2->4->■ ->3->1 Т кр = 7 5 .
Проведенные расчеты с помощью программы, реализу ющей изложенный метод, позволяют сделать следующие выводы.
1.Набор правил, лежащих в основе предложенного алго ритма, дает достаточно хорошее приближение к оптимуму.
2.Получаемое решение не однозначно. При одном и том же значении Ткр порядок следования работ может быть раз личным.
3.В ряде случаев величину Ткр можно улучшить за счет перемещения работ с минимальным значением индекса р при L t = 0 в конец последовательности. Это обусловлено тем, что в начальный момент первый порядковый номер р при сваивается работам, для которых Lt= 0. Если tt работ до
статочно велико (например, t£(P=i) > L A(P» 2)) , то последующие работы начнутся позже, чем это допустимо.
Описанный алгоритм упорядочения контурных работ по ложен в основу последующих методов, поэтому для кратко сти назовем его алгоритмом А.
§ 3. ПОСТРОЕНИЕ ОПТИМАЛЬНОГО СЕТЕВОГО ГРАФА
Объектом исследования в алгоритме А является граф, состоящий из одного полного контура. При решении полу чаем оптимальную последовательность выполнения всех контурных работ, при которой длина критического пути всего проекта минимальна. Однако сетевая модель сложных проектов может содержать несколько контуров, связан ных между собой какими-либо внешними работами. Тогда возникает следующая задача: установить порядок следо вания работ в каждом полном контуре таким образом, что бы длина критического пути всего проекта была минималь ной. При этом полагаем заданной продолжительность tj для каждой работы j.
Предлагаемый алгоритм синтеза оптимального сетевого графа включает действия алгоритма А и имеет специфиче ские особенности, обусловленные тем, что наличие несколь ких полных контуров в сети требует определенной последо вательности их анализа.
Существующие методы расчета сетей не позволяют про водить вычисления на графах с полными контурами. Поэто
61