Опубликован: 16.11.2010 | Доступ: свободный | Студентов: 3573 / 1735 | Оценка: 4.43 / 4.14 | Длительность: 27:21:00
Лекция 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. Диаграмма изменения численности сторон
Владислав Нагорный
Владислав Нагорный

Подскажите, пожалуйста, планируете ли вы возобновление программ высшего образования? Если да, есть ли какие-то примерные сроки?

Спасибо!

Лариса Парфенова
Лариса Парфенова

1) Можно ли экстерном получить второе высшее образование "Программная инженерия" ?

2) Трудоустраиваете ли Вы выпускников?

3) Можно ли с Вашим дипломом поступить в аспирантуру?

 

Петр Гончар-Зайкин
Петр Гончар-Зайкин
Россия
Елена Городниченко
Елена Городниченко
Украина, Киев