Опубликован: 16.11.2010 | Уровень: специалист | Доступ: свободно
Лекция 4:

Статистическое моделирование

3.12. Модель противоборства двух сторон

Имитационную модель, в которой продвижение модельного времени реализовано с фиксированным шагом, рассмотрим на примере огневого противоборства группировок A и В. Аналитическое моделирование такой операции мы рассмотрели в предыдущей теме. Однако мы снимаем условие многочисленности группировок, так как оно теперь несущественно.

Для начала, чтобы не загромождать алгоритм модели, введем два ограничения:

  • вероятность поражения цели одним выстрелом \le 0.1 ;
  • вероятность одновременного поражения двумя средствами друг друга пренебрежимо мала.

Впоследствии мы убедимся, что в имитационной модели рассматриваемого боя эти ограничения могут быть сняты.

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

Учебная задача состоит в том, чтобы изучить структуру конкретного алгоритма, в котором продвижение модельного времени реализовано с фиксированным шагом \Delta t .

Введем обозначения:

А, В - первоначальные численности группировок;

a, b - текущие значения численностей группировок А и В соответственно;

a_{k}, b_{k} - число оставшихся средств каждой из сторон в конце k -го интервала моделирования (после k -ой реализации модели);

n - текущее число реализаций модели;

N - заданное число реализаций модели случайного процесса;

t  - текущее время;

T  - длительность интервала моделирования;

\overline{a}(T ), \overline{b}(T) - средние за N реализаций модели численности оставшихся средств сторон в конце каждого интервала моделирования:

\overline{a}(T)=\cfrac{\sum\limits_{k=1}^{N}{a_k}}{N},\,\,
\overline{b}(T)= \cfrac{\sum\limits_{k=1}^{N}{b_k}}{N},

i, j - переменные счета средств сторон А и В соответственно .

Идея построения имитационной модели состоит в реализации модели противоборства N раз и фиксации остатков сторон после каждой реализации. По выполнении N реализаций будут определены оценки численностей сторон a(T), b(T).

Определим величину \Delta t . На выбор величины \Delta t влияют два противоречивых требования:

  • на протяжении отрезка времени \Delta t не должно происходить много событий, так как они будут зафиксированы как одновременные, что исказит исследуемый реальный процесс;
  • на протяжении отрезка времени \Delta t должно произойти хотя бы одно событие, иначе будет много "пустых" прогонов модели, что увеличит машинное время.

С учетом приведенных выше требований разобьем интервал моделирования T на равные отрезки \Delta t такие, чтобы каждое огневое средство любой из сторон могло выстрелить не более одного раза.

Например, скорострельность средств поражения стороны A

\lambda  _{A} = 2выстр./мин , а средств стороны B- \lambda  _{B} = 3выстр./мин . Так как \lambda_{B}\succ \lambda_{A}, то \Delta t следует выбрать исходя из условия \Delta t \prec 1 / \lambda_{B} .

Алгоритм имитации противоборства сторон состоит из четырех модулей:

  • М1 - установка начальных условий;
  • М2 - продвижение модельного времени;
  • М3 - формирование результата заданной точности;
  • М4 - имитация противоборства сторон.

Блок-схема алгоритма имитации противоборства двух сторон показана на рис. 3.23.

Модуль установки начальных условий ( М1 ). Он состоит из трех блоков 1… 3.

Блок 1 - установка начальных условий на весь процесс моделирования: число реализаций N модели, интервал исследования T, величина временного шага \Delta t, установка в нуль ячеек \sum{a_k},\sum{b_k}

Блок 2 - установка начальных условий на очередную реализацию процесса: восстановление численностей сторон a= A,b = B и исходного времени t = 0 .

Блок 3 - установка начальных условий на очередной отрезок \Delta t модельного времени: подготовка перебора (i = 0, j = 0) средств

поражения каждой стороны.

Модуль продвижения модельного времени ( М2 ). Состоит из двух блоков 4..5.

Блок 4 - продвижение модельного времени на очередной временной отрезок \Delta t (t = t + \Delta t).

Блок 5 - проверка условия окончания очередной реализации модели (t \ge T) .

Модуль формирования результата и обеспечения заданной точности ( М3 ). Состоит из блоков 6…9.

Блок 6 - накопление суммы остатков средств каждой стороны за текущее количество интервалов моделирования (реализаций модели).

Блок-схема алгоритма модели противоборства двух сторон

увеличить изображение
Рис. 3.23. Блок-схема алгоритма модели противоборства двух сторон

Блок 7 - счетчик числа реализаций модели ( n = n+1 ) .

Блок 8 - осуществляет контроль над выполнением заданного числа реализаций модели. Число реализаций модели определяется, исходя из заданных точности и достоверности результатов моделирования.

Блок 9 - формирование конечного результата моделирования.

В данном случае - \overline{a} и \overline{b}.

При необходимости определяются и другие статистические характеристики.

Модуль имитации противоборства сторон ( М4 ). Этот модуль - основной. Если структура предыдущих модулей, в общем-то, стандартна, то реализация данного модуля носит функционально-индивидуальный характер. Модуль включает блоки 10…25. Блок-схема алгоритма модуля представлена на рис. 3.24.

Каждое средство противоборствующих сторон идентифицируется его номером. Номера средств стороны A - i = \overline{1,A} , средств стороны B - j = \overline{1,B}.

Блок 10 - выбор очередного средства стороны A: i = i + 1.

Блок 11 - проверка: все ли средства стороны A получили право на выстрел? Если i \succ A , то управление передается блоку 18 для имитации выстрелов средствами стороны B. В противном случае управление передается блоку 12.

Блок 12 - проверка: боеспособно ли выбранное средство? Состояние средств сторон A и B определяют переменные \alpha  _{i} и \beta  _{j} :

\left\{
\begin{array}{l}
\alpha_i =0, \text{ если } i\text{-ое средство стороны }A \text{ уничтожено;}\\
\alpha_i =1, \text{ если } i\text{-ое средство стороны }A \text{ боеспособно;}
\end{array} 
\\
\left\{
\begin{array}{l}
\beta_j =0, \text{ если } j\text{-ое средство стороны }B \text{ уничтожено;}\\
\beta_j =1, \text{ если } j\text{-ое средство стороны }B \text{ боеспособно;}
\end{array}

Если окажется \alpha  _{i} = 0, то управление передается блоку 10 для

выбора очередного средства стороны A . Иначе - переход к блоку 13.

Блок 13 - выбор цели из средств стороны B . Выбор цели может быть организован либо случайной, либо детерминированной процедурами. Самый простой способ: последовательная проверка средств стороны B с выбором первого непораженного средства.

Блок 14 - проверка выбранной цели: не уничтожена ли она была на предыдущих этапах данной реализации модели? Если \beta_j  =0, то переход к блоку 13 для выбора непораженной цели.

Иначе - переход к блоку 15 для имитации выстрела.

Выстрел - одиночное событие со случайным исходом. Моделью такого события является известная нам конструкция из двух блоков 15 и 15.1.

Блок-схема алгоритма модуля противоборства двух сторон

увеличить изображение
Рис. 3.24. Блок-схема алгоритма модуля противоборства двух сторон

Блок 15 - обращение к ДСЧ за равномерно распределенным случайным числом х_i \sim Rav[0, 1].

Блок 15.1 - проверка результата выстрела. Если х_i \le Р_{аb}, цель поражена и управление передается блоку 16 для фиксации этого факта. Если х_{i} \succ Р_{ab}, то промах и управление передается блоку 10 для выбора очередного стреляющего средства стороны A .

Блок 16 - уменьшение числа средств стороны В: b=b-1 и установка признака состояния пораженного средства: \beta_j  = 0.

Блок 17 - не уничтожена ли вся группировка В ? Если да, то данная реализация модели заканчивается и управление передается блоку 6 для фиксации оставшихся боеспособных средств стороны A. Если нет, то управление передается блоку 10 для выбора очередного средства стороны A и т. д.

После предоставления права на выстрел всем средствам стороны A соответствующее право дается средствам стороны В - переход из блока 11 в блок 18.

Функции блоков 18… 25 попарно одинаковы с функциями блоков 10…17, изменены только обозначения - вместо A указано В, вместо \alpha _{i} \to  \beta_j , вместо Р_{ab} \to Р_{ba} и т. д.

По окончании перебора всех средств стороны В и, если не зафиксировано полное уничтожение средств стороны A (a = 0), управление передается блоку 3 для моделирования очередного скачка времени на величину \Delta t.

Примерная диаграмма изменения численностей сторон A и В в k -й реализации на интервале 0\ldots Т показана на рис. 3.25.

Диаграмма изменения численности сторон

Рис. 3.25. Диаграмма изменения численности сторон
Владислав Нагорный
Владислав Нагорный
Высшее образование
Лариса Парфенова
Лариса Парфенова
Экстерн
Петр Гончар-Зайкин
Петр Гончар-Зайкин
Россия
Борис Борисов
Борис Борисов
Казахстан, Алматы, Казахский государственный университет, 1983