
книги из ГПНТБ / Шаракшанэ, А. С. Испытания сложных систем учеб. пособие
.pdfматическими конструкциями: для описания процессов функциони рования и взаимодействия подсистем, наряду с функциональными операторами, использовать логические операторы; для имитации случайных процессов и последовательностей разрабатывать раз личного рода датчики случайных чисел; при анализе многоканаль ных систем привлекать схемы и методы описания, которые отно сятся к теории массового обслуживания и т. д.
Несмотря на такое значительное многообразие способов описа ния реальных процессов, практически все реальные системы могут
быть |
описаны математическими схемами, предложенными |
Н. П. |
Бусленко и образующими класс агрегатированных систем |
[1] (подсистемами подобных систем являются агрегаты). Процес сы преобразования входной информации в агрегатированных си стемах осуществляются с учетом текущего состояния каждого агре гата. В агрегатах формирование выходных сигналов происходит в соответствии с некоторым заданным алгоритмом, который учиты вает не только вероятностную природу функционирования элемен тов агрегата, но и реально существующие обратные связи. Част ными случаями агрегатированных систем являются системы: дина мические, массового обслуживания, кусочно-линейные, введенные
впрактику И. Н. Коваленко [14] и т. д.
Вобщем случае при использовании того или иного способа
описания реальных подсистем моделирующий алгоритм может быть записан с помощью операторных уравнений вида [4, 6]
(4.1.6)
где zг- — текущее состояние i-й подсистемы в момент t; гi(t0) — на чальное состояние i-й подсистемы в момент начала ее функциони рования i0; xLj (0 — вектор-функция, определяющая входной про
цесс i-й подсистемы; (i, Xl;][o — входное сообщение для i-й под
системы (входное сообщение определяется совокупностью упоря доченных пар (i, x L[) для всех ie7\-, где 7\ — множество моментов
времени, в которых рассматривается функционирование i-й под системы). В каждой /-й реализации на модели i-й подсистемы вектор-функцию xL; (t) выбирают из некоторого известного мно
жества функций L*(i), t^Ti.
Для различных подсистем функциональные зависимости (4.1.6) будут получаться, естественно, отличными друг от друга. Совокуп ность всех функций xlj (i) в пространстве их определения
Li X'L2X ... XL„=,L можно рассматривать как |
множество вход |
||
ных воздействий для модели сложной системы. |
При таком подхо |
||
де модель как математический эквивалент |
реальной системы по |
||
некоторому |
показателю качества ее. работоспособности R(i|c) = |
||
= E{R(i, с} |
может быть охарактеризована |
при фиксированном |
60
входном сообщении (t, xL]Jo выражением [4]
R (*,c)=H *M o, |
z(f0), (f, x ^ J ; |
(4.1.7) |
xl W ={xl, (0....... |
xl„W)- |
(4Л-8) |
Процессы смены состояний в такой системе описываются соот ношениями
z(t, с)= Н U, t0, z (g , (*, x j j j ; |
(4.1.9) |
z{t, c)={z1(0,..., zJOb z(f, c)£Z ,
где H — оператор функционирования сложной системы, опреде ляющий алгоритм взаимодействия ее подсистем.
Разработка алгоритма математической модели системы на этих принципах позволяет создать программу на ЭВМ, состоящую из субблоков, которые можно при необходимости заменить или скор ректировать по результатам физических экспериментов другими более точными аналогами. При этом модель взаимодействия под систем, которая обычно гораздо сложнее моделей элементов, остается без изменений, если в системе не нарушено функциональ ное взаимодействие ее.реальных элементов.
§ 4.2. ХАРАКТЕРИСТИКА МЕТОДОВ МАТЕМАТИЧЕСКОГО МОДЕЛИРОВАНИЯ
Опытно-теоретический метод оценки показателей эффективно сти сложных систем основан на использовании результатов мо делирования и потому предусматривает создание математических моделей, которые должны с достаточной точностью описывать изучаемые процессы и явления. Для сложных систем разрабаты ваемые модели обычно получаются 'чрезвычайно громоздкими. В значительной степени сложность создаваемых моделей зависит и определяется математическим обеспечением моделей, разраба тываемым для обработки результатов моделирования. Основу ал горитмов математического обеспечения моделей составляют рас четные формулы методов, используемых при постановке экспери ментов на модели и обработке всех полученных результатов. По этому на этапе создания моделей сложных систем стремятся вы брать метод математического моделирования, удовлетворяющий следующим требованиям:
1. Расчет оценок выходных показателей должен осуществлять ся с использованием достаточно простых алгоритмов обработки; 2. Определение необходимого объема моделирования из усло вий достижения заданной точности оценок выходных показателей ■должно происходить на основании простых и в то же время доста
точно точных соотношений;
61
3. Методика организации экспериментов на модели долж быть по возможности простой и реализуемой на средствах исполь зуемой вычислительной техники.
Наиболее полно всем указанным требованиям удовлетворяет метод моделирования, основанный на методе статистических испы таний [2], [11]. Этот метод обладает высокой помехозащищенностью к случайным ошибкам, возможным при проведении отдельных опытов.
Расчетные формулы метода статистических испытаний базиру ются на основном законе теории вероятностей — законе «больших чисел». Практическое использование этого закона гарантирует при увеличении числа статистических испытаний на модели получение все более и более точных оценок (алгоритмы обработки обеспечи
вают при N-+оо сходимость по вероятности, т. е. R=ilim R:i:). Стрем-
N->-oo
ление достичь максимальной информации в результатах статисти ческого моделирования обычно приводит к очень простой схеме организации экспериментов на модели: для удовлетворения этому требованию эксперименты на модели осуществляют так, чтобы они были независимы по ансамблю реализаций. С практической точки зрения реализация метода статистических испытаний при оценке характеристик сложных систем связана с разработкой и включением в математическое обеспечение создаваемых моделей датчиков случайных чисел с такими законами распределения, ими тация которых не предусмотрена в математическом обеспечении используемых ЭВМ. При разработке датчиков анализируют до вольно широкий круг вопросов, среди которых основными явля ются [3, 21]:
1. Оценка качества генерирования случайных величин и слу чайных последовательностей (проверка законов распределения, определение циклов периодичности и случайности генерируемых чисел и т. д.) ;
2. Анализ возможности повышения быстродействия используе мых датчиков.
Изучение последнего вопроса особенно важно при статистиче ском моделировании сложных систем.
К недостаткам метода статистических испытаний следует от нести тот факт, что этот метод для точностей, предъявляемых при практических оценках, приводит к довольно большому объему мо делирования. Этот недостаток является следствием того, что метод статистических испытаний не полностью использует все априорные сведения о динамике функционирования системы и не учитывает особенностей законов распределения параметров системы. Более полно указанные свойства учитывают интерполяционный метод и метод Б. Г. Доступова [12, 13], которые наиболее широко применя ют при анализе точностных нелинейных автоматических систем сравнительно невысокой сложности. При определенных условиях, в частности, когда рассматривают задачи оценки первого и второ го моментов выходных характеристик, а функциональная зависи-
62
мость выходного показателя выражается квадратичной формой, удается достичь такого положения, при котором необходимое число интегрирований исходной системы уравнений линейно зависит от числа параметров, определяющих закон распределения входных случайных параметров и случайных начальных условий. При ана лизе более сложных систем, когда модель системы описывается сложными математическими конструкциями, преимущества рас сматриваемых методов по сравнению с методом статистических испытаний с точки зрения выигрыша в объеме моделирования рез ко уменьшаются.
Например, для метода Б. Г. Доступова, если не применять ни каких специальных мер, порядок роста числа реализаций, кото рые необходимы для оценки математического ожидания выходного
показателя, нетрудно установить |
из соотношения N = Cir+q, где |
|
q — число членов, учитываемых |
в разложении выходного |
показа |
теля R в ряд Маклорена по величинам с* (i=,1, 2,..., г) . |
системы |
|
При специальном задании решения вспомогательной |
||
уравнений зависимость N от г можно несколько ослабить |
и при |
q= 5 получить N=2r2+ 1.
В этом случае квадратичная зависимость N от г приводит к тому, что при оценке характеристик сложных систем, для которых обычно г > 100, необходимое число реализаций уже получается сравнимым с тем, которое нужно при использовании метода стати стических испытаний. По этой причине и в силу того, что метод статистических испытаний более прост в программном исполнении, область эффективного применения метода Б. Г. Доступова, так же как и интерполяционного, получается несколько уже, чем метода статистических испытаний, в том отношении, что они дают выигрыш в объеме моделирования на уровне подсистем, а порой и чаще все го при рассмотрении элементов реальных сложных систем.
В настоящее время внимание широкого круга исследователей обращено на разработку аналитических методов анализа сложных систем.
Интерес к подобным вопросам в значительной степени обуслов
лен тем, что аналитические методы позволяют |
абстрагироваться |
от некоторых частностей и за счет этого с более |
общих позиций |
охарактеризовать изучаемые процессы и явления.
Успех практического применения аналитических методов во многом зависит от обоснованности допущений, принимаемых при описании реальных систем. В этом отношении к интересным и практически важным результатам следует отнести результаты фор мализации процесса функционирования сложных систем с исполь зованием кусочно-линейных систем, введенных и теоретически обос нованных И. Н. Коваленко [14].
Выделение такого подкласса агрегатированных систем целесо образно, так как для анализа кусочно-линейных систем можно применить методы аналитического исследования и с помощью их изучить общие закономерности в сложных системах, которые с до-
63
статочной для практики точностью могут быть описаны подобными математическими конструкциями.
Если считать, что процессы изменения переменных осущест вляются в соответствии с некоторыми дифференциальными или другого рода функциональными уравнениями, то логическая струк тура кусочно-линейных систем дает возможность описывать более широкий класс реальных систем. Однако в последнем случае воз можности применения аналитических методов исследования резко сокращаются.
§ 4.3. ОГРАНИЧЕНИЯ НА СЛОЖНОСТЬ МАТЕМАТИЧЕСКИХ МОДЕЛЕЙ
При анализе сложных систем возможность применения мате матических моделей в значительной степени зависит от сложности’ их программной реализации и времени моделирования, необходи мого для расчета искомых характеристик. Если оценку показате лей качества реальной системы осуществляют по результатам ста тистического моделирования, то достоверность принимаемых ста тистических выводов определяется точностью имитации процессов в реальной системе, временем проигрыша одной случайной ситуа ции и тем количеством реализаций, которые нужно провести на модели. Если точность рассчитываемых оценок задана, а время моделирования ограничено рядом технических условий или сооб ражений, разработка алгоритмов моделей, сравнительно просто реализуемых на средствах используемой вычислительной техники, приобретает важное практическое значение. Однако стремление к простоте математических описаний находится в известном проти воречии с точностью имитации исследуемых процессов. Поэтому при разработке допустимых вариантов структурного описания каждого оператора модели системы нужно учитывать:
1)требования к точности оценок характеристик качества ра ботоспособности или эффективности системы;
2)возможности практической реализации моделей на исполь зуемых ЭВМ;
3)ограничения на интервал времени, необходимый для полу чения оценок.
Указанные требования и ограничения определяют некоторую
совокупность условий, которые необходимо реализовать при выбо ре наилучшего варианта построения математической модели систе мы. Обычно эти ограничения, по своему физическому смыслу ха рактеризующие пределы изменения параметров системы, относят к ограничениям второго рода и записывают для каждого структур ного описания модели системы в виде системы неравенств:
£гЛс) < 0 . v= l . 2 ,..., N 2, |
(4.3.1)' |
где g ъ — некоторые функции вектора параметров модели с.
64
Кроме того, при разработке моделей сложных систем учитыва ют ограничения первого рода, которые выражают в виде некоторой системы равенств относительно известных функций:
(4.3.2)
К ограничениям первого рода относят уравнения, описываю щие процессы в реальной системе, а также некоторые другие усло вия, которые могут быть выражены с помощью подобных соотно шений.
Часто, чтобы учесть ограниченный объем информации, получае мой при проведении физических экспериментов, в системы урав нений (4.3.1), (4.3.2) вводят равенства и неравенства математиче ских ожиданий от соответствующих функций:
giv (с)= Д у {hu (у, |
с)}, |
v= 1 ,2 ,...; |
ё ъ ( с) ^ Е у (М у , |
с)), |
(4-3.3) |
v = l, 2 ,---- |
где у — вектор случайных последовательностей или процессов, полученный при проведении физических экспериментов.
Однако при недостаточной априорной информации записать в явной форме все ограничения не удается (такой случай характе рен для сложных систем). В связи с этим многие ограничения удается сформулировать только в виде некоторых рекомендаций, в форме словесных формулировок, а иногда и в виде общих поже ланий относительно допустимой сложности структурного описания разрабатываемой модели. Такая неопределенность значительно усложняет процедуру выбора наилучшего варианта построения математической модели.
§ 4.4. РАСПРЕДЕЛЕНИЕ ТРЕБОВАНИЙ К ТОЧНОСТИ МОДЕЛИРОВАНИЯ ПОДСИСТЕМ
При разработке моделей важно организовать работу так, чтобы программирование моделирующих алгоритмов подсистем велось параллельно и была уверенность в том, что точность описания про цессов в подсистемах обеспечивает требуемую точность расчета выходных показателей эффективности всей сложной системы.
Чтобы удовлетворить этим требованиям на практике рассмат ривают целый комплекс задач, связанных с определением допу стимых ошибок в имитации процессов в каждой подсистеме. При чем на начальном этапе в условиях неполной информации при постановке этих задач обычно используют очень упрощенное описа ние для всей сложной системы, но такое, чтобы оно достаточно пол но отражало вероятностную природу функционирования реальной системы. Для этих условий, если не вводить новых обозначений для упрощенного оператора системы и предположить, что ошибки моделирования можно выразить через суммарные ошибки задания вектора параметров с, то на основании (4.1.7) для каждого фикси
3-3162 |
65 |
рованного входного сообщения (t, xL][o нетрудно получить |
урав |
нение, связывающее вариации параметров модели bch{k — \, 2 |
, г) |
с отклонениями критерия качества от некоторого номинального значения:
|
i R ( t / c ) = E |
(4.4.1) |
Если |
компоненты вектора состояния z (t) в моменты |
времени |
ti (i = 1, |
2, .... s) терпят разрывы, что возможно при рассматривае |
мом описании систем (выход из строя элементов системы, разрывы непрерывности в моменты включения и выключения системы, в не которых случаях процессы преобразования z (t) в z(t + ht) для произвольных t и т. д.), то полная вариация 6R(t\c), когда опера-
тор Н* аддитивен и однороден по /f(H*(4, £0))= SH *(^, *\--i),
t0] при t= l, 2, ..., s — свойство дистрибутивности оператора Н*) может быть записана так [22]:
|
S |
|
dH* {th ti- ь г (ti-x), (t, x |
j / ^ |
dx,dc-1 + |
||
|
|
|
|
|
|
||
8R(tsj c ) = E |
|
|
dx |
|
|
|
|
dH* |
|
|
h *j^ r, |
и |
z {tri |
(t, |
|
dz (if,--!) |
dc |
|
|||||
|
|
|
|
|
|||
— H* |
|
. ti-i, Z[ t t w , xL |
|
|
|
||
|
|
i f r = t i - 0, i t = ^ |
+ |
0). |
|
(4.4.2) |
При записи (4.4.2) предполагалось, что текущие моменты про цесса функционирования системы t=ii (при t= l, 2,..., s) и вектор ее состояния z (t) являются функциями от вектора параметров мо дели с, а момент включения t0 системы не зависит от с. Вероятно стная природа процесса функционирования рассматриваемых си стем приводит к тому, что производную dz/dc необходимо понимать как производную случайной вектор-функции z(c, i) по вектору па раметров с. В дальнейшем будем определять указанную производ ную как производную Гато (слабая производная):
dz (t, с) _ |
z(t, с + н-Дс) — z (t, с) |
(4 4 3 ) |
dc |
t* |
|
где ц — некоторое вещественное число.
Для определения производной dtjdc, входящей в (4.4.2), необ ходимо знать уравнение поверхности
F ( z ( t ) , t , с) = 0, |
|
(4.4.4) |
на которой в моменты времени ti(i= 1, 2, ..., |
s) вектор |
состояния |
системы z(t) изменяется скачком. Используя |
правила |
дифферен |
66
цирования неявной функции, нетрудно получить:
dt |
(dFjdz) (д%1дск) + dFjdck |
(4.4.5) |
||
dCh |
(dFjdz) (dzjdt) + |
dF\dt |
||
|
При практических расчетах необходимо помнить, что для боль шинства реальных элементов эти уравнения определяют процессы скачкообразного изменения переменных F(t), z(t) в моменты вре мени ti~=ti—0. Производные, входящие в (4.4.5), как и производ ная dz/dc — слабые производные.
Так как ошибки моделирования являются в общем случае слу чайными величинами, то при разработке моделирующего алгорит ма системы с учетом принятых методов его дискретной реализации целесообразно потребовать, чтобы вероятность его последующей
доработки после проведения натурных испытаний |
не превышала |
|
некоторой заданной величины Рд , т. е. |
|
|
Р {Щ (с, 11(*, xL]'J > Д) < Яд, |
' |
(4.4.6) |
где А — величина, характеризующая требуемую точность расчета показателя эффективности системы R(t/с).
При разработке моделей реальных систем величину А задают на основании опыта, с учетом целевого назначения системы и тех требований, которые предъявляют технические задания на точность оцениваемых показателей качества. Но так как уравнение связи между 5R(t\c) и 6с одно, то решений уравнения о распределении требований к точности моделирования подсистем может быть по лучено бесчисленное множество. Поэтому при разработке моделей сложных систем привлекают экспертов и на основании их оценок строят совокупность весовых коэффициентов рь р2, ..., Рь опреде ляющих алгоритм распределения А по каждой подсистеме:
Д,=Р,Д. *=1,2, ... , I. |
(4.4.7) |
Кроме рассмотренного выше способа, можно предложить и дру гие способы, среди которых нужно выделить один простой и в то же время достаточно наглядный способ деления А на части А,-. По этому способу весовые коэффициенты (5грассчитывают как суммы относительных ошибок оценки параметров Сш каждой г-й под системы:
’' " S i l l ' S |
rt= r, |
i = |
1, 2, |
(4.4.8) |
|
й=1 |
/-1 |
|
|
|
|
Когда значения |
|Згнайдены, |
расчет |
Аг- |
нетрудно |
осуществить |
по (4.4.7).
Необходимость постановки и решения подобных задач опреде ляется тем, что при известных требованиях значительно упрощает ся выбор метода моделирования и способов дискретной реализации
3* |
67 |
операторов, описывающих процессы в реальных элементах систе мы. Если модель разрабатывают для оценки векторного показате ля R j с), то задача распределения требований к точности моде лирования подсистем получается более сложной, чем в рассмотрен ном выше примере.
§ 4.5. РАЗРАБОТКА ПРОГРАММ МОДЕЛЕЙ
Для сложных систем программная реализация моделирующих алгоритмов обычно начинается на этапе проектирования, когда степень разработанности моделирующего алгоритма является не достаточной, чтобы полностью исключить вероятность его после дующей доработки. В связи с этим на этапе анализа возможных способов построения блок-схемы программы необходимо преду сматривать требования, связанные с оперативным вводом измене ний в созданную программу. Для этой цели программа модели системы разбивается на ряд логически законченных модулей. На практике широко распространенным способом разбиения програм мы является трехуровневое разбиение на: укрупненные модули (макромодули), соответствующие принятому разбиению системы на подсистемы; модули, соответствующие функционально обособ ленным элементам каждой подсистемы; простые модули (микро модули), определяющие некоторые логически замкнутые опера ции, которые выполняют в соответствии с моделирующим алгорит мом для рассматриваемого элемента системы. Такое разбиение позволяет сравнительно просто реализовывать процессы доработ ки программ, если в этом есть необходимость после проведения испытаний на реальной системе.
Кроме указанного способа разбиения программ моделей слож ных систем, существуют и другие, которые при определенных усло виях могут стать доминирующими. Так, на начальной стадии кри териями оценки эффективности создаваемых программ являются результаты, получаемые при решении задач:
1) определения времени окончания разработки программы ма тематических моделей;
2)оценки экономических затрат, необходимых для разработки программ;
3)оценки необходимого количества исполнителей для разра ботки программ заданной сложности.
Сложность решения этих задач определяется недостаточной априорной информацией как о завершенности моделирующего ал горитма, так и о необходимых количественных оценках временных
иэкономических затрат, затрачиваемых программистом на коди ровку и отладку программы различного размера. Кроме того, не маловажное значение имеет если не полное отсутствие методик, то во всяком случае очень приближенный способ оценки сложности разрабатываемой программы.
68
Предложенная в работе [23] шкала логической сложности про
граммы (1 — простые программы, |
2 — умеренные, 3 — трудные, |
4 — сложные, 5 — очень сложные), |
несмотря на кажущуюся про |
стоту и обоснованность используемых терминов, является все же субъективной, так как оставляет значительный произвол в оценке сложности конкретной программы. Но тем не менее эта шкала вно сит определенный порядок в процесс оценки сложности програм мы и потому может быть использована при сравнительных оценках сложности двух или нескольких программ.
По своему содержанию первые две задачи являются задачами анализа, а третья задача относится к задачам синтеза.
Для постановки и решения первых двух задач необходимо иметь
следующие исходные данные: N — размер программы |
(количество |
|
команд); Q — сложность программы; |
5 — стоимость |
программы; |
п — число команд, разрабатываемых |
одним программистом выс |
шей квалификации в единицу времени; ASi — затраты на програм миста 1-й квалификации в единицу времени; ASM— стоимость экс плуатации машины в единицу времени.
В работе [23] приведена также шкала квалификации програм мистов в зависимости от времени его работы:
|
|
Т а б л и ц а 4.5.1 |
Занимаемая должность |
Срок работы |
Коэффициент про |
изводительности Р. |
||
Ученик |
0-ь0,5 лет |
0,30 |
Младший программист |
0,5-Ь-1,5 лет |
0,65 |
Программист |
1,5-ьЗ года |
0,90 |
Старший программист |
3 года и выше |
1,00 |
Если все исходные данные известны, то можно привести рас четные формулы, которые будут отражать временные и экономиче ские затраты на кодировку программы программистом i-й квали фикации:
i i ^ N Q K n P , ) ; |
(4.5.1) |
кол—^1&£[. |
(4.5.2) |
Чтобы определить суммарные временные и экономические за траты на разработку программы, нужно знать этапы ее создания и долю каждого этапа в процессе разработки программы. Для гру бых оценок времени создания программы можно рекомендовать следующие результаты [23]:
Изучение моделирующего алгоритма......................... |
10% |
Составление блок-схемы программы......................... |
25% |
Кодировка программы.................................................. |
25% |
Проверка программы на рабочем месте................... |
5% |
69