Метод вычисления функции распределения и числовых вероятностных характеристик времени выполнения стохастического сетевого графика

УДК 519.179.2

МЕТОД ВЫЧИСЛЕНИЯ ФУНКЦИИ РАСПРЕДЕЛЕНИЯ И ЧИСЛОВЫХ ВЕРОЯТНОСТНЫХ ХАРАКТЕРИСТИК ВРЕМЕНИ ВЫПОЛНЕНИЯ СТОХАСТИЧЕСКОГО СЕТЕВОГО ГРАФИКА

H.H. Иванов

Для стохастического сетевого графика предложена методика вычисления функции распределения и первых двух моментов времени его выполнения, основанная на построении многомерных интегралов, вычисляемых методом Монте-Карло.

Ключевые слова: стохастический сетевой график, критический путь, функция распределения, время выполнения сетевого графика, момент распределения, метод Монте-Карло.

ВВЕДЕНИЕ

Сетевые графики, существующие уже более полувека [1], служат для моделирования сложных взаимосвязанных временных процессов, таких как выполнение проектной документации, строительство зданий, сборочные процессы, выполнение управляющих программ в вычислительных системах и др. Первоначально предполагалось, что времена выполнения отдельных работ, входящих в сетевой график, являются детерминированными величинами. Однако в настоящее время сетевые графики рассматриваются в более общих предположениях, связанных со случайными временами выполнения работ с известными распределениями [2]. Такие сетевые графики получили название стохастических (ССГ).

Время выполнения ССГ также представляет собой случайную величину, законы распределения которой и их числовые вероятностные характеристики подлежат либо оценке по различным методикам [3], либо вычислению приближенными методами [4], а в частных случаях, определяемых некоторыми ограничениями на топологию ССГ, могут быть рассчитаны аналитическими методами [5]. Интерес для пользователей аппаратом ССГ представляют также законы распределения и их числовые характеристики для отдельных фрагментов ССГ, позволяющие выявить узкие места в процессе их реализации в реальном времени.

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

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

Рис. 1. Пример стохастического сетевого графика

тественно и принимается многими авторам в исследованиях, посвященных изучению свойств ССГ. Кроме того, можно принудительно ограничивать область, на которой рассматриваются распределения, не обладающие упомянутым свойством (например, нормальное, для которого можно ввести удовлетворяющий пользователя уровень значимости и соответствующую ему квантиль). Существенно, что в статье в отличие от подхода, рассмотренного в работе [6], допускаются зависимые случайные времена выполнения отдельных групп работ или даже всего комплекса работ, образующих сетевой график (за исключением детерминированных времен).

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

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

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

1. ОСНОВЫ АНАЛИЗА МОДЕЛИ

На графе ССГ выделим вершины, в которые входит более одного ребра. Такие работы назовем узлами ССГ. Из рассмотрения исключаются ССГ, у которых каждая работа имеет не более одной работы-преемника. Путь на графе ССГ — это последовательность работ, начинающаяся в начальной вершине и заканчивающаяся в заключительной, при этом каждая работа пути, кроме начальной, является последователем предыдущей. Любой путь на графе ССГ проходит, по крайней мере, через один узел.

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

Процедуры нахождения всех путей в простом орграфе известны [7]. Однако не всем путям в ССГ суждено стать критическими, поскольку распределения времен выполнения работ, входящих в них, могут сделать вероятности их реализации равными нулю. Критический путь определяет время окончания выполнения всего ССГ, поэтому, зная вероятности р, с которыми реализуются все критические пути, и условные (при условии, что выбранные пути являются критическими) функции распределения ^(г) времени их выполнения, можно вычислить функцию распределения Дг) времени выполнения ССГ — Дг) =

16

СОМТМ!. вОЕМОЕБ № 6 • 2014

Для ССГ (см. рис. 1) множество всех путей образуется цепочками: 1) 4, 5, 11; 2) 4, 5, 6, 9; 3) 2, 3, 5, 11; 4) 2, 3, 5, 6, 9; 5) 2, 7, 9; 6) 2, 8, 10; 7) 1, 10.

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

1 ш1п тах

максимально. Теперь из множества всех путей (например, полным перебором) могут быть выделены все пути, у которых суммы максимальных времен

Т „ выполнения работ больше времени Т

I, тах х -•-г

т1п тах

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

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

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

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

Рассмотрим какой-либо из критических путей

П е П (рассмотрение будем вести на примере пути 4 — см. рис. 1). Время Т его выполнения должно удовлетворять условию Т > Т . „ . Его замыкаю-

т1п тах

щие представлены пятью цепочками: 4 (замыкает участок из работ 2 и 3); 11 (6 и 9); 7 (3, 5 и 6), 8, 10 (3, 5, 6 и 9) и 1, 10 (весь путь 4). В предположении, что путь 4 является критическим, случайная величина £ — время его выполнения — есть сумма £ = С2 + + С5 + Сб + случайных времен выполнения работ, входящих в этот путь. Функция распределения этого времени, с одной стороны,

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

Что касается замыкающих, представляющих целые пути, но не входящих в множество П, то их влияния на функцию распределения рассматриваемого пути не существует, поскольку время Т* их выполнения без простоев не превосходит время Тт:„ „,„„ и, следовательно, всегда Т* < Т, а это оз-

т1п тах

начает, что зависимость времени выполнения пути П от времени выполнения замыкающего его пути, не входящего в множество П, исчезает. Эти же рассуждения не теряют своей силы, если рассматривать замыкающие пути П, входящие в заключительную вершину ССГ, но не являющиеся путями, поскольку, присоединяя к ним общую с путем П начальную цепочку, приходим к тому же выводу в случае, если их максимальное время выполнения не превосходит время Тт1п тах.

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

Далее рассматривается методика вычисления соответствующих вероятностных характеристик применительно к случаю зависимости времен выполнения всех работ, входящих в сетевой график. Это означает, что задана соответствующая многомерная функция распределения времени выполнения работ F(и) = F(u1, ..., им) (или плотность/(и)), где М — общее число работ сетевого графика. Более простые случаи зависимости работ могут рассматриваться аналогичным образом (см. далее пример в § 3).

Пусть Б с Я+ = {(х1, х2, ..., х): хк е Я, хк > 0} — область, в которой отличны от нуля плотности распределений времен выполнения работ, входящих во все замыкающие пути П (нумерация работ произвольная). В нашем примере — это работы 4, 7, 8, 10 и 11 (см. рис. 1).

Отсюда, если \ = (^1, ..., ^) представляет собой случайный вектор в области Б, составленный из случайных времен выполнения работ, входящих во все замыкающие пути П, то фиксируя его

значение х = (х1, х2, ..., х) е Б (в нашем примере

x = (x4, x7, x8, x10, xn)), следует считать, что вероятность p. (в нашем примере р4) реализации пути

П зависит от x: рг = рг(x). Тогда

pF(z 1i = X) = рг( x )Fc(z | i = x).

Взвешенная условная функция распределения

рг(x )FZ(z| i = x) суммы Z = XZj случайных вели-

z j j

чин Z1, ..., Zs (в примере Z = (Z2, Z3, i5, i6, i9)) может быть вычислена в соответствии с равенством

рг( x )Fc(z | i = x) = jfy, x )dy,

в

где область интегрирования В определяется следующими условиями.

Прежде всего, область В должна содержаться в

области A = {y: XУ- < z, У- > 0} с R+, по которой

j

определяется распределение суммы X Z, (в нашем

jj

примере у = (y2, у3, у5, Уб, У9)). Далее, на область В налагаются ограничения, определяемые замыкающими. В нашем примере эти ограничения сведутся к неравенствам: у2 + у3 > x4, Уб + У9 > x11, у3 +

У5 + Уб > X7, Уз + У5 + Уб + У9 > x8 + x10 и У2 + Уз + + У5 + Уб + У9 > x1 + x10. Однако два последних неравенства можно исключить, поскольку они будут выполняться автоматически в силу тех распределений времени выполнения работ, которые рассматриваются в приводимом в § 3 примере анализа данного ССГ и высказанных ранее соображений о просеивании замыкающих, являющихся путями. Каждое из этих неравенств определяет некоторую

область в R+. В нашем примере это области C1, C2, C3, соответствующие первым трем неравенствам. Кроме того, следует учесть условие У2 + У3 + У5 +

+ Уб + У9 > Zmin где Zmin = Tmin max. Его соблюдение может сократить объем вычислений функции распределения рг/)-(г) (в данном случае р4^4(г)). Таким образом, получаем B = A П C1 П C2 П C3 П C4. По формуле полной вероятности получаем

р/^(г) = j jf(У, x )dy dx.

D B

Для пути 4 равенство (1) принимает вид:

p4F4(z) = j jfУ, x ^dy^dy^dx/x^ D с R

D B

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

Из соотношения (1) может быть получено значение вероятности р; реализации каждого пути в ССГ: достаточно выбрать по возможности минимальное значение г = Т, для которого вычисление функции рг-^'(г) по формуле (1) приводит к равенству рг^.(7) = Рг-. Такое значение г = Т существует, если времена выполнения работ заданы на конечных промежутках. Например, можно положить Т равным сумме всех правых концов промежутков, на которых определены плотности распределений времен выполнения всех работ, входящих в рассматриваемый путь.

Направленный поиск критических путей можно теперь вести, применяя для этой цели упомянутую процедуру поиска кратчайшего пути в ациклическом ориентированном графе, где кратчайшим будет считаться путь П; е П с наибольшим значением Т. тах. После определения его вероятности р; > 0, в случае, если р. < 1, поиск продолжается по мере убывания значения Т. тах до тех пор, пока не будет получено равенство Ерг = 1 (возможно, с некоторым приближением, удовлетворяющим пользователя).

Заметим, что после определения множества всех критических путей может быть достаточно просто решена практически важная задача нахождения вероятности выполнения ССГ за время, не превосходящее заданное время Т. С этой целью, задавая значение г = Т, вычисляется в соответствии с приведенным алгоритмом значение ДТ) = Ерг^.(Т). Обратная задача о нахождении времени Т, которое не будет превышено с заданной вероятностью р, может быть решена путем итераций.

2. ВЫЧИСЛЕНИЕ ВЕРОЯТНОСТНЫХ ЧИСЛОВЫХ ХАРАКТЕРИСТИК

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

критических путей, а именно, два первых момента распределений этого времени. В основе расчетных алгоритмов для математического ожидания ц и второго момента а2 времени прохождения рассматриваемого пути П е П лежат соотношения:

Теперь имеем дело с интегралом:

h

= J [1 - F(z)]dz, a2 = 2 Jz[1 - F(z)]dz,

которые имеют место в случае абсолютно непрерывных распределений, когда F(0) = 0 и Д Т) = 1, Т < +<», где Т — величина, определяемая в процессе вычисления вероятности реализации пути (см. § 1).

Для каждого из отобранных ранее путей, вероятность реализации которого р. > 0, можно теперь составить равенства, на основе которых (опять же методом Монте-Карло) можно вычислять математическое ожидание и второй момент времени прохождения критического пути:

h = T - p JJJf У >

Pi 0 DB

x) П dy,- П dxkdz,

j k

2i

i = T2 - 2 J z J fy, x) Пdy,-пdxkdz,

p - - -.....SjlL-^k"

Pi 0 D B , k

после чего для нахождения дисперсии этого вре-

2

мени воспользоваться равенством а{ = a2i — ц .

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

Для интеграла (2) образуем гиперпараллелепипед (далее всюду параллелепипед) Р со сторонами, представляющими собой отрезки [ат, Ьт], где

т = 1, М (М — общее число всех работ, определяющих множества В и Б), т. е. границы промежутков, на которых определены равномерные распределения для всех работ, входящих в путь и в его замыкающие. За знак интеграла в формуле (2) выносится константа с = П (Ь — а ) 1. Также сто-

а а ^ т т/ т

роной параллелепипеда Р будет назначен отрезок [0, Т ]. Заполняем параллелепипед Р равномерно распределенными псевдослучайными точками (г, У1, У2, ..., У5, х1, х2, ..., х;), г е [0, Т], хк е [ак, Ьк], у. е [а., Ь.]. Их число N должно быть достаточно велико.

h

i = T - С JJJn dy,- П dxkdz.

Pi 0 D B ,

Интеграл (без множителя) представляет собой «объем» той части параллелепипеда Р единичной «высоты» (поскольку подынтегральная функция равна единице), точки которой удовлетворяют неравенствам, определяющим область В. Весь параллелепипед Р имеет «объем», равный T/c.

Для вычисления математического ожидания определяем, какое число случайных точек (z, yp y2, ..., ys, Xj, x2, ..., x;) удовлетворяют неравенствам, задающим множество В. Пусть это число равно «.. Величина T — «.T/^N) приближенно равна В пределе получаем

^ = tV 1 - 1 lim NN) .

Для вычисления интеграла (3) погружаем виртуальный график функции zF(z) в квадрат со сторонами [0, T], и в случае равномерных распределений интеграл приобретает вид

*2i = T2 - 2е JzЦПdy,.ПdXkdz.

pi 0 D B j к

2

Величина T /с представляет собой «объем» параллелепипеда Р «высоты» Т.

Среди всех случайных точек (z, 9, y) = (z, 0, yx, У2, ..., ys, Xj, x2, ..., x;), z e [0, T], 9 e [0, T], которыми равномерно заполнен параллелепипед Р, отбираем те, координаты которых удовлетворяют неравенствам, задающим множество В, и неравенству 9 < z. Если их число обозначить n i, то приходим к равенству

ü2i = T2

1 - 2 lim Ш

Pi N^ »N

Теперь рассмотрим произвольную плотность распределения f( y) времени выполнения работ [am, bm], где m = 1, M. Параллелепипед Р теперь

будет иметь «высоту» v = sup f y) (эта величина

p

особенно просто находится, если f( y) представляет собой плотность многомерного нормального распределения с заданной положительно определенной ковариационной матрицей), при этом «объем» параллелепипеда Р становится равным vT/c.

0

0

Для расчета интеграла (2) равномерно заполняем параллелепипед Р N случайными точками

(г, и у) = (г, и у1? у2, у5, х1? х2, х), г е [0, Т], и е [0, V], хк е [«к, Ьк], у. е [«, Ьу.]. «Просеивание» точек теперь будет заключаться в проверке, удовлетворяют ли случайные точки неравенствам, задающим множество В, а также условию и < /(у). Определяем число точек я,, попавших в число отобранных при «просеивании». В пределе получаем

ц, = Т[ 1 - ----- Иш

1 у Ср, N^

Интеграл (3) вычисляется с учетом, что параллелепипед Р имеет «высоту», равную v7, и «объем», равный VI7 /с, а отбор п точек вида (г, и, 0, у1, у2, ..., у5, х1, х2, ..., х7) определяется тем, что координаты этих точек удовлетворяют неравенствам, задающим множество В, а также неравенствам

и </(у), и е [0, V], и 0 </(у), 0 е [0, VII Теперь в пределе получаем

«2, = Т2

1

- Иш Л

ср, N ^ «Л

Результаты расчета числовых вероятностных характеристик

Параметры бета-распределения Числовая характеристика Критические пути

1 2 3 4 5

а = Ь = 1, равномерное распределение Р 0,2848 0,2842 0,2252 0,2260 0,125 0,125 0,0714 0,0716 0,2936 0,293

Ц 13,76 13,76 13,21 13,21 13,54 13,53 12,94 12,94 13,11 13,11

а 0,85 0,85 0,73 0,73 0,77 0,77 0,7 0,69 0,73 0,73

а = Ь = 2 Р 0,2969 0,2971 0,2314 0,2314 0,1009 0,1009 0,0539 0,0537 0,3169 0,3168

Ц 13,43 13,43 13,03 13,03 13,25 13,25 12,81 12,81 12,96 12,96

а 0,69 0,68 0,57 0,58 0,58 0,61 0,54 0,54 0,55 0,57

а = Ь = 3 Р 0,3062 0,3059 0,2358 0,2354 0,0838 0,0841 0,0418 0,042 0,3324 0,3325

Ц 13,26 13,26 12,94 12,94 13,10 13,10 12.73 12.74 12,88 12,88

а 0,58 0,58 0,49 0,5 0,53 0,52 0,4 0,45 0,46 0,48

Рис. 2. Функции распределения времени выполнения ССГ

Для ССГ в целом теперь можно получить числовые вероятностные характеристики в соответствии с равенствами: ц = ^ рц, «2 = ^ р«2/,

/ /

2

^ = «2 — ц .

3. ПРИМЕР

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

— работы 1, 6 и 10 имеют детерминированные времена выполнения в условных единицах с параметрами: т1 = т10 = 1, т6 = 2;

— работы 2, 3, 5, 7, 8, 9 и 11 имеют времена, распределенные соответственно на промежутках:

2, 3 — [2, 4]; 4 — [5, 8]; 5, 8 — [1, 2]; 7 — [6, 8]; 9 — [2, 3], 11 — [3, 6].

В соответствии с этими распределениями в результате применения алгоритма выделения путей, претендующих на роль критических, для анализа были отобраны пути 1—5. Их вероятности для рассмотренных распределений приведены в таблице. Значение 7Ш. Шах для заданных распределе-

Ш1П тах

ний оказалось равным 10-ти условным единицам времени. По этой причине пути 6 и 7 были исключены из числа кандидатов в критические.

На рис. 2 показаны графики функций распределения времени выполнения ССГ, построенные на ограниченном участке временной шкалы на основании выбранных распределений времени выполнения работ. Кривая 1 соответствует равномерному распределению времени выполнении работ на указанных промежутках; кривая 2 — бета-распределению с параметрами « = Ь = 2 и кривая 3 — с параметрами а = Ь = 3.

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

20

ООМТЯОЬ вОЕМОЕБ № 6 • 2014

ния а{ времени реализации всех критических путей: путь 1 (работы 4, 5, 11), путь 2 (4, 5, 6, 9), путь 3 (2, 3, 5, 11), путь 4 (2, 3, 5, 6, 9) и путь 5 (2, 7, 9). Результаты расчетов представлены в таблице (во вторых строках значений соответствующих параметров в таблице указаны значения, полученные при имитационном моделировании).

Для ССГ в целом вероятностные характеристики таковы: для равномерного распределения времени выполнения работ (a = b = 1): ц « 13,36, a « 0,82 (13,36 и 0,82, соответственно при имитационном моделировании); для бета-распределения с параметрами a = b = 2: ц « 13,14, a « 0,64 (13,13 и 0,64); для бета-распределения с параметрами a = b = 3: ц « 13,02, a « 0,55 (13,02 и 0,55).

Из приведенного решения можно определить, с какой вероятностью та или иная работа входит в критические пути. Например, работа 5 входит в критические пути со следующими вероятностями: при равномерных распределениях — 0,7064, при бета-распределениях с параметрами a = b = = 2 — 0,6831 и с параметрами a = b = 3 — 0,6675.

Вычисленная вероятность выполнения ССГ за время, не превышающее 14 ед. времени, при равномерных распределениях, бета-распределениях с параметрами a = b = 2 и a = b = 3 равна соответственно 0,7784, 0,9088 и 0,9585.

Заметим, что при всех рассмотренных симметричных распределениях математические ожидания времени выполнения критических путей существенно отличаются в большую сторону от соответствующих сумм математических ожиданий времени выполнения работ, входящих в эти пути (12,5; 12,5; 12; 12; 12,5 — в порядке возрастания номеров критических путей). Это происходит вследствие «давления» на времена выполнения критических путей, оказываемого на них со стороны замыкающих.

Вычислительные эксперименты и имитационное моделирование проводились на ПК, оборудованном процессором Intel Core i3 2100, 3,1 ГГц, ОЗУ 4ГБ, в среде Delphi 7. Имитационное моделирование проводилось с помощью встроенных в моделирующие программы итеративных процедур, преобразующих равномерно распределенные псевдослучайные числа в случайные числа в соответствии с обратными функциями бета-распределений.

ЗАКЛЮЧЕНИЕ

Изложенная методика анализа стохастических сетевых графиков — ССГ — построена на регулярной основе, позволяющей широко применять машинные средства для поиска критических путей,

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

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

Предложенная методика в равной степени может быть применена для анализа ССГ, определяемых в формате «вершина — работа». Перестройка ее алгоритмов не потребует серьезных усилий.

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

ЛИТЕРАТУРА

1. Clark C.E. The PERT model for the distribution of an activity // Operations Research. - 1962. - Vol. 10 (3). - Р. 405-406.

2. Голенко-Гинзбург Д.И. Стохастические сетевые модели планирования и управления разработками. — Воронеж: Научная мысль, 2010. — 283 с.

3. Kleindorfer G.B. Bounding Distributions for a Stochastic Acyclic Network // Operations Research. — 1971. — Vol. 19. — Р. 1586-1601.

4. Dodin B.M. Approximating the Distribution Functions in Stochastic Networks // Computers and Operations Research. — 1985. — Vol. 12, N. 3. — P. 251—264.

5. Martin J. J. Distribution of the Time Through a Directed Acyclic Network // Operations Research. — 1965. — Vol. 13 (1). — P. 46—66.

6. Иванов Н.Н., Шастун В.В. Определение точных верхних оценок времени выполнения сложных наборов задач в управляющих параллельных вычислительных системах // Автоматика и телемеханика. — 2010. — № 9. — С. 174—184.

7. Игнатущенко В.В. Организация структур управляющих многопроцессорных систем. — М.: Энергоатомиздат, 1984. — 154 с.

8. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ / Пер. с англ. под ред. А. Шеня. — М.: МЦНМО, 2002. — 960 с.

Статья представлена к публикации членом редколлегии В.Н. Бурковым.

Иванов Николай Николаевич — д-р техн. наук, гл. науч. сотрудник, S (495) 334-76-39, И niknivan@ipu.ru, Институт проблем управления им. В.А. Трапезникова РАН, г. Москва.