
книги из ГПНТБ / Васильев, В. В. Гибридные модели задач оптимизации
.pdfчается к единичному выходу триггера Т 3 (см. рис. 75). Затем в началь ное событие графика нг подается запускающий импульс. Этим импульсом триггер Твх моделей работ устанавливается в единичное состояние, с единичных выходов которых выдается разрешающий потенциал на схему совпадения И. Импульсы от ГИ поступают в счетчики моделей работ, выходящих из начального события графика нг. Одновременно пусковой импульс устанавливает триггер Т1 в единичное состояние и импульсы от ГИ через схему совпадения И1 поступают в линию задержки ЛЗ, которая при определении этой
Рис. 75
временной характеристики устанавливается продолжительностью, равной длине критического пути tKp. В момент появления импульса на выходе линии задержки цифровой аналог будет находиться в таком же состоянии, как и при определении t„.H(ij).
Импульс, появившийся на выходе ЛЗ, устанавливает триггер Т3 в единичное состояние. Сигнал с выхода Т3 устанавливает вход ной триггер Тех модели работы (i, j) в единичное состояние и ее счетчик отсчитывает число импульсов, пропорциональное ее про должительности. Сигнал о завершении работы (і, /), появившийся в точке / модели работы, устанавливает триггер Т2 в единичное состояние. При этом разрешается поступление импульсов от ГИ через Их и # 2 в счетчик измерения Сч. Импульс, появившийся в конечном событии графика Кг, переводит 7\ и Т2 в нулевые состоя ния и при этом прекращается поступление импульсов в счетчик измерения.
В результате этих |
переключений в счетчике измерения Сч ока |
зывается записанным |
число импульсов |
|
^Сч = ^ кр — tjvC.m a x , |
123
а эта величина, согласно формуле (1.25), и является, наиболее поздним допустимым сроком окончания работы.
Наиболее поздний срок окончания работы (і, /) есть одновре менно и наиболее поздним допустимым сроком свершения события /, в которое данная работа входит. Поэтому для определения этой характеристики событий сетевого графика достаточно определить наиболее допустимые сроки окончания для одной из работ, входящих в каждое событие.
Полный резерв времени для каждой работы можно найти соглас но функциональной схеме рис. 76.
ерадіика
Рис. 76
Предварительно, как указывалось ранее, необходимо занести в счетчик измерения величину критического пути. Начало выбранной работы (і, ;') отрывается от события і и подключается к единичному выходу триггера Т2, а точка і', соединяющаяся с событием, под ключается к нулевому входу триггера Г8 и к единичному входу триггера Т 3. При поступлении пускового импульса в начальное со бытие графика нг и на единичные входы триггеров 7\ и Т2в модели работ, счетчик измерения и в линию задержки ЛЗ начинают посту пать импульсы от ГИ. Импульс, появившейся в точке і' модели ра боты (£, /), переводит триггер Т2 в нулевое состояние и прекращает через схему совпадения И2 подачу импульсов в счетчике измерения Сч. При этом в счетчике измерения оказывается число импульсов
£сч = 4р £нгі'шах>
где t„ri>щах — длина максимального пути от начала графика до
начала работы (і, /), а эта величина есть наиболее ранний срок нача ла данной работы, т. е. из длины критического пути произошло вычитание раннего начала работы (і, /).
Импульс с выхода линии задержки устанавливает триггеры Т2 и Т3 в единичное состояние и разрешает поступление импульсов в
124
модель работы (і, /) через триггер Т 3 и в счетчик измерения. После появления импульса в конечном событии в счетчике измерения оказывается записанным число импульсов
^Сч : ^кр ^НрГтах — ^lj ^/кгтах-
Эта величина, как видно из выражения (1.27), и есть полный резерв времени работы (і , /).
Кроме указанного способа определения поздних допустимых характеристик работ и их резервов времени, в котором используется
один |
цикл |
просчета |
сетевого |
||||
графика |
и |
запоминается длина |
|||||
критического пути, |
можно пред |
||||||
ложить процесс измерения этих |
|||||||
временных |
характеристик, |
сос |
|||||
тоящий из двух циклов. |
|
при |
|||||
Первый |
цикл, |
общий |
|||||
определении всех поздних времен |
|||||||
ных |
характеристик и |
полного |
|||||
резерва |
времени, |
заключается |
|||||
в определении |
величины крити |
||||||
ческого пути. Этот цикл повторя |
|||||||
ется |
при |
|
определении |
каждой |
|||
временной |
характеристики |
для |
|||||
отдельной работы. |
|
|
|
||||
Второй цикл состоит в вычи |
|||||||
тании |
из |
длины |
критического |
||||
пути |
длины |
соответствующих |
максимальных путей аналогично |
I |
L |
|
тому, как это делалось в первом |
|||
1 2 3 4 5 6 7 8 9 |
10 11 12 13 |
||
способе. |
Рис. 77 |
|
|
Отметим недостатки и пре |
|
||
|
|
имущества обоих способов.
При использовании первого способа необходимо иметь достаточ но сложный счетчик измерения. Однако при таком способе опреде ления поздних временных характеристик и резервов времени это осуществляется за один цикл. Время, необходимое для этого, в самом неблагоприятном случае (когда производится измерение для работы, лежащей на критическом пути и выходящей из начального события графика) равно 2tKp.
При втором способе нет надобности в сложном счетчике изме рения, однако время определения временных характеристик в том же неблагоприятном случае составляет 3fKp-
Сетевой график, хоть и дает четкое представление о порядке следования работ, все же недостаточно нагляден для определения тех работ, которые должны выполняться в данный момент времени. Поэтому в случае небольшого проекта полезно после составления пронумерованного сетевого графика составить так называемую ли нейную диаграмму проекта (рис. 77), которая строится следующим
125
образом. На горизонтальную ось наносится равномерная шкала времени t. Каждая работа изображается полоской, располагаемой параллельно оси времени. Длина полоски изображает продолжи тельность выполнения работы. Полоска располагается между собы тиями і и /, соединенными работой (і, /).
При помощи линейной диаграммы можно просто определить временные характеристики сетевого графика и совокупность работ, выполняемых одновременно. Совокупность работ, которые, по се тевому графику можно выполнить одновременно, называется фрон том работ F {f). Таким образом, фронту работ могут принадлежать
|
только работы разных путей. Дан |
|||||
К МР |
ному |
значению |
времени t |
могут |
||
|
соответствовать |
несколько |
значе |
|||
|
ний функций F (t). Максимальным |
|||||
|
фронтом Ф (t) в данный момент |
|||||
|
времени t называется совокупность |
|||||
|
всех работ, которые сетевой гра |
|||||
|
фик позволяет |
производить |
одно |
|||
|
временно в момент t. |
|
|
|||
|
Цифровой аналог сетевого гра |
|||||
|
фика, |
в |
котором продолжитель |
|||
|
ность |
работы задается |
пропорцио |
|||
|
нальным |
количеством |
импульсов, |
|||
Рис. 78 |
по принципу действия |
объединяет |
||||
|
свойства линейных диаграмм и сете |
вых графиков. Действительно, при параллельном просмотре всех путей цифровой аналог производит развертывание картины выполне ния проекта во времени. При этом временной осью является генера тор тактовых импульсов. В то же время, как отмечалось выше, в цифровом аналоге все работы взаимосвязаны импликацией двух конъюнкций, что описывает совокупность работ, которые необходи мо выполнить, как сетевой график.
В цифровом аналоге сетевого графика, в котором моделирующей величиной выбиралось пропорциональное количество импульсов, можно реализовать режим остановки текущего времени. Иначе го воря, такое устройство может дать ответ на вопрос о том, что будет через известный промежуток времени после начала выполнения се тевого графика и какие работы будут находиться в стадии выполне ния. Иными словами, цифровой аналог, по сути, позволяет опреде лить максимальный фронт работ Ф (і), выполняемых в заданный момент времени. Для реализации этого режима необходимо остано вить в данный момент времени генератор тактовых импульсов и произвести индукцию состояния работ. На рис. 78 показана функцио нальная схема, реализующая режим определения максимального фронта работ.
Всчетчик Сч заносится число импульсов
ЛГ - / ф . Р ,
126
где ^ф.р — число импульсов, пропорциональное моменту времени, в который необходимо определить фронт выполняемых работ; Nn— полная емкость счетчика.
Затем подается пусковой сигнал в начальное событие сетевого графика и на единичный вход триггера Т. Импульсы от генератора ГИ поступают в счетчик Сч и в модели работ сетевого графика.
Импульс переполнения счетчика устанавливает 7\ в нулевое состояние и при этом прекращается поступление импульсов в счет чик и в модели работ.
Работы, в моделях которых входные триггеры будут в единичном состоянии, находятся в стадии выполнения. Содержимое счетчиков моделей этих работ будет свидетельствовать о степени выполнен ности их. Те работы, у которых схемы выделения выдают сигналы, к этому моменту времени уже выполнены.
Для визуального определения максимального фронта выпол ненных работ необходимо проиндицировать состояния обоих вы ходов схем выделения и входных триггеров моделей работ. При выборе для цифрового аналога схем выделения на тиратронах тлею щего разряда (см. рис. 63) после остановки генератора тактовых им пульсов состояния запоминающих тиратронов будут непосредственно показывать (светиться) максимальный фронт выполненных работ.
Часто при управлении ходом разработок с помощью сетевых графиков необходимо знать не только общий критический путь, но и максимальные пути из начального события графика в любое иное. Как указывалось ранее, схемы выделения на одном из своих выходов имеют сигнал только в том случае, если работа (г, /) завер шилась последней в событии /. Таким образом, после определения критического пути сетевого графика состояния схем выделения будут показывать все те работы, которые завершались в событиях последними, т. е. дерево максимальных путей от начального события ко всем другим событиям сетевого графика. Для визуального опре деления дерева максимальных путей необходимо во все события индикационной схемы (рис. 50, в) подать сигнал индикации. В ре зультате этого будут проиндицированы все работы, принадлежащие дереву максимальных путей.
Впроцессе управления ходом создания объекта с помощью се тевых графиков информация только о длине критического пути и работах, лежащих на нем, не является достаточной. Необходимо также знать подкритические пути. Наиболее напряженные работы, от которых зависят общие сроки строительства, лежат не только на критическом, но и на подкритическом пути.
Входе строительства критические и подкритические пути могут меняться местами.
Особую важность приобретает задача определения подкритиче ских работ и путей, когда заданный срок Т выполнения проекта меньше критического времени Ткр. В этом случае для выполнения проекта в заданный срок необходимо сократить не только критиче ские пути, но и подкритические, длина L которых удовлетворяет
127
неравенствам Т < L •< TV,,. Поэтому при расчете сетевых графиков и их оптимизации необходимо кроме критического пути знать и критическую зону. Существует ряд методов [97, 13], позволяющих определить критическую зону. Однако эти методы не позволяют наглядно видеть работы, принадлежащие критической зоне.
Критическую зону достаточно просто можно определить на мо делях сетевых графиков [34, 35], а еще проще — на цифровом ана логе сетевых графиков.
Критическая зона определяется путями, длину которых можно
описать соотношением |
|
^кр.з ^ ^крі |
(5.9) |
где ^tp.s — длина пути от начального события до конечного, при надлежащего критической зоне; k — коэффициент, определяющий критическую зону, /кр — длина критического пути.
Критическую зону можно охарактеризовать, исходя из полных резервов времени работ. Полный резерв времени работы равен раз ности между длиной критического пути и длиной максимального пу ти, проходящего через данную работу, от начального события до конечного. Поэтому полный резерв времени работы является как бы мерой критичности работы. Если для полного резерва времени вы полняется соотношение
P i i < ( l - k ) t » v, |
(5.10) |
то эта работа принадлежит пути, который находится в критической зоне. При определении резерва времени работы на модели исполь зуется соотношение
|
Ри ~ А<р |
hi |
^/кі |
(5-11) |
где tu — максимальный путь |
от начального события до события і, |
|||
из которого работа |
выходит; |
іц — продолжительность |
работы; |
|
tjK— максимальный |
путь от события /, |
в котором заканчивается |
работа, до конечного события графика. Подставив (5.10) в (5.11), получим
4 / + h i “ Ь h v - ^ k t « v , |
( 5 .1 2 ) |
т. е. в левой части получаем максимальный путь от начального собы тия в конечное, проходящий через данную работу, которая принад лежит критической зоне. Таким образом, для определения работ, принадлежащих критической зоне, необходимо определить крити ческий путь, вычислить величину минимального пути критической зоны /г/кр.з min и сравнивать этот путь с максимальными путями, проходящими через работы.
Длительность критического пути сетевого графика находится после записи исходных данных в модели работ. Функциональная схема определения критического пути на цифровой модели сетевого графика представлена на рис. 62. Триггерная схема Т импульсом «пуск» устанавливается в единичное положение, единичный выход Т соединен со входом схемы совпадения. Импульсы от Г И подаются в начальное событие и в счетчик измерения. Как только в конечном
128
событии графика появится сигнал, триггерная схема Т устанавлива ется им в нулевое положение. При этом прекращается подача импуль сов в счетчик измерения. Количество импульсов, поступившее в счетчик измерения, пропорционально длительности критического пути. Задаваясь величиной к, определяем минимальный путь кри тической зоны по формуле
^кр.зшіп = ktKp.
На рис. 79 приведена функциональная схема, позволяющая определить принадлежащие критической зоне работы. .
П у с к |
с х е м ы |
|
Рис. 79 |
Предварительно 7\, Т2, и Т 3устанавливают в нулевое состояние. |
|
В счетчик заносится число |
импульсов, равное разности числа им |
пульсов полной емкости счетчика и числа импульсов, пропорцио нального ^кр.зmin»
Допустим, необходимо узнать, находится ли работа (і, /) в кри тической зоне. Для этого отключаем точку V этой работы от точки і (рис. 79). Импульсом «Пуск» 7\ и Т2 устанавливают в единичное со стояние. При этом импульсы от генератора ГИ поступают в началь ное событие графика, линию задержки и в счетчик. Линия задержки задерживает поступление импульсов в модель работы (г, /) на время,
9 3-2595 |
129 |
равное продолжительности критического пути сетевого графика. За это время импульсы ГИ заполнят все модели работ, не связанные с работой (і, /). Счетчики моделей работ, начало которых связано с окончанием этой работы, не будут заполняться импульсами, так как от работы (£, /) не поступит сигнал о ее завершении на схему совпадения события. В связи с тем, что не все модели работ, закон чившиеся в конечном событии сетевого графика, заполнялись им пульсами, то на выходе конечного события не появится импульс об окончании выполнения сетевого графика.
Импульс, пришедший в точку г, устанавливает триггер Т2 в нуле вое состояние. Поступление импульсов в счетчик прекращается. За это время в счетчик поступило число импульсов, пропорцио
нальное максимальному |
пути от начального события до точки і, |
т. е. |
через линию задержки, устанавливает |
Импульс, прошедший |
Т2 в единичное состояние и разрешает поступление импульсов в точку V и в счетчик.
В счетчик импульсы поступают до появления сигнала об оконча нии всех работ на выходе модели конечного события сетевого гра фика. Такой сигнал устанавливает Тг в нулевое состояние и при этом прекращается поступление импульсов в счетчик. В счетчик за время от подачи пускового импульса до появления импульса на выходе конечного события поступило число импульсов, пропорциональное
^ні + Іц + tjk-
Если за это время появился импульс переполнения, то он устанавливает Т3 в единичное состояние. Импульс с выхода схемы совпадения И3 поступает в точку А схемы индикации (рис. 50, в).
Выходные сигналы со схем выделения моделей работ соответст вуют дереву максимальных путей от начального события к любому другому событию сетевого графика. Если теперь произвести инди кацию состояния схем выделения, то получится наглядное отобра жение дерева максимальных путей. В полученном дереве максималь ных путей наибольшим будет путь от начального события в конеч ное, проходящий через выбранную работу, так как он равен tKP + + t{j + tjK. Таким образом, импульс, поступивший в точку А индикационной схемы, проиндицирует максимальный путь от на чального события в конечное, проходящий через выбранную работу. Производить проверку для работ, составляющих этот путь, нет не обходимости, так как они заведомо находятся в критической зоне. Проверку работ легко автоматизировать.
130
5.5. МОДЕЛИРОВАНИЕ ПУТЕЙ ЗАДАННОЙ ДЛИНЫ НА ЦИФРОВОМ АНАЛОГЕ
Особенностью электронного моделирования задач опре деления экстремальных путей в мультисети является возможность построения аналоговых моделей и цифровых аналогов этих задач. Эта возможность обусловлена логическими и экстремальными свой ствами указанных задач и реализуется с помощью логико-тополо гических моделей мультисети, обладающих такими свойствами.
Отсутствие экстремальных свойств и комбинаторный характер задачи о допустимых по длине путях в мультисети не позволяют непосредственно построить ее аналог.
Один из способов моделирования пути допустимой длины может быть основан, например, на реализации метода подкритических путей рассмотренного в § 5.4, на электронной модели задачи о длиннейших путях в мультисети. Однако недостатками такого способа являются его возможная вычислительная громоздкость, а также то, что он приближенный и не обеспечивает решения задачи при малых до пусках на изменение длины искомого пути.
Точным и, на наш взгляд, наиболее эффективным способом определения пути допустимой или однозначно заданной длины явля ется моделирование его на цифровом аналоге мультисети. Данный способ основан на параллельном просчете длин всех вариантов пу тей в мультисети с выбором искомого допустимого пути по извест ным численным признакам.
Под цифровым аналогом мультисети (ЦАМ) будем подразуме вать логико-топологическую цифровую модель ее, обеспечивающую информационное представление всех возможных путей в ней, дли ны которых моделируются дискретно изменяющимися временными соотношениями. Как и в аналогах экстремальных сетевых задач, данная модель состоит из отдельных моделей ветвей и узлов, соеди ненных в соответствии с топологией мультисети. Так как логиче ское содержание любого фрагмента мультисети, состоящего из про извольного угла / и множества инцидентных ему ветвей, по отноше
нию |
к произвольному строящемуся |
пути, проходящему |
через |
||
данный узел, описывается импликацией двух предикатов |
|
||||
где |
Wi£VT, |
Vjm £ Vf; |
|
|
|
|
|
|
|||
U Ufj |
— квантор существования |
по |
Uf/\ |
Ѵ]~ — множество |
вет |
вей, входящих в /-й узел; (J Ujm — квантор |
существования по И*т\ |
У/1" — множество ветвей, выходящих из /-го узла, то указанная мо дель мультисети должна быть дизъюнктивной.
Однако в отличие от рассмотренных в § 5.1 дизъюнктивных мо делей цифровых аналогов задачи о кратчайшем пути, в рабочем ре жиме которых каждая модель ветви информационно использовалась
9* |
Ш |
однократно, информационный процесс в данной модели должен допускать многократное использование каждой ветви при по строении различных путей. Применение счетчиковых структур в цифровом аналоге мультисети не может обеспечить параллельный принцип работы такой модели, так как в качестве счетного устройст ва модели ветви в данном случае должен применяться элемент, обеспечивающий передачу одного или серии произвольно сдвинутых относительно друг друга во времени импульсных сигналов с вре менной задержкой, пропорциональной длине моделируемой ветви. Таким элементом является регистр сдвига, осуществляющий сдвиг входного импульсного сигнала на один разряд с каждым тактовым импульсом. При этом длина ветви, моделируемая соответствующим числом тактовых импульсов, может задаваться коммутацией функ ционального выхода сдвигового регистра модели ветви с выходом его соответствующей разрядной ячейки.
Если в качестве модели ветви применить регистр сдвига, а мо дели узла — логическую схему дизъюнкции, то построенная из этих элементов логико-топологическая модель будет цифровым аналогом мультисети. Переходный процесс в такой модели, вызван ный поступлением одиночного импульса, синхронизированного с тактовыми импульсами, на вход модели начального узла, будет соответствовать процессу параллельного прохождения одиночных импульсных сигналов по всем возможным путям в модели мультисети с временными задержками, пропорциональными суммарным дли нам ветвей, составляющих эти пути или их отрезки, в каждый промежуточный узел мультисети.
Обозначим операцию посылки одиночного импульса на вход модели начального узла мультисети «опросом» модели мультисети, а указанный импульс — «опрашивающий». «Опрос» модели мульти сети с временным контролем прохождения импульсного сигнала через модели ветвей, входящих в ее некоторый произвольный узел, позволяет выделить из их числа ветвь, принадлежащую пути любой заданной длины в этот узел, если такой путь имеет место. Этот принцип положен в основу способа определения пути заданной дли ны на цифровом аналоге мультисети, заключающегося в следующем.
Одновременно с посылкой «опрашивающего» импульса начина ется отсчет тактовых импульсов и далее выделяется та из ветвей, входящих в конечный узел мультисети, сигнал на выходе регистра сдвига которой появился в интервале времени отсчета числа такто вых импульсов, соответствующего заданной допустимой длине ис комого пути. Каждый последующий цикл определения новой ветви искомого пути отличается тем, что при «опросе» модели мультисети отсчитывается число импульсов, соответствующее разности извест ной по первому циклу длины искомого пути и длины его уже выде ленного отрезка. При этом выделяется та из ветвей, входящих в начальный узел известного конечного отрезка искомого пути, по явление сигнала на выходе регистра сдвига модели которой соот ветствует моменту времени отсчета указанного числа импульсов.