В процессе рассмотрения оптимизационной игровой задачи противоборства между двумя противниками, один из которых управляет конечным числом подвижных (нападающих объектов), а второй – выбором мест расположения неподвижных пунктов защиты было разработано программное обеспечение для вычислительных экспериментов на основе алгоритма дифференциальной игры между подвижными и неподвижными объектами.
В [3] приводится детальный алгоритм решения задачи методом дискретизации.
Задача оптимального управления типа «нападение-защита» для двух игроков, располагающих подвижными и неподвижными объектами рассматривается в следующей постановке. Стратегией каждого игрока является множество траектории управляемых им подвижных объектов для достижения поставленных целей при соответствующей модели взаимодействия конкурирующих объектов, т.е каждый из игроков преследует достижение следующих целей:
-первый игрок старается максимально ослабить к концу игры второго игрока, не считаясь со своими потерями (выигрыш любой ценой);
-второй игрок преследует ту же цель, но с учетом максимального сохранения своих ресурсов.
Обозначим Z1 множество стратегий игрока 1, а за Z2 примем множество стратегий второго игрока. Пусть K – функция выигрыша первого игрока. Заметим, что выигрыш игрока 1 складывается определенно на ситуациях, складывающихся в процессе игры. Но каждая ситуация, а значит, и выигрыш игрока зависит не только от его выбора, но и от того, какая стратегия выбрана противником. Поэтому необходимо учитывать поведение противника.
Следовательно, выберем в качестве выигрыша первого игрока результат вычисления следующей функции Эта формула гарантирует, что выигрыш игрока 1 всегда будет больше или равен полученному значению.
Движение средств нанесения удара описывается дифференциальным уравнением
(1)
С физической точки зрения это уравнение означает, что атакующий объект перемещается в плоскости с ограниченной скоростью v0 и ускорением M. Также ограничим время полета объекта игрока 1 уравнением где - общее время движения объекта.
Эффективностью воздействия на один атакующий объект игрока 1 всех оборонительных объектов игрока 2 запишем в виде уравнения
(2)
где - интенсивность отказов атакующего объекта игрока 1.
Формула для вычисления интенсивности отказов средства нанесения удара записана ниже:
(3)
где среднее значение интенсивности отказов для данного средства нанесения удара, ci - координаты оборонительного объекта.
Точно решить поставленную задачу для общего случая не представляется возможным. По этой причине будем ее решать приближенно. А именно, перейдем к дискретной модели времени путем дискретизации промежутка , т.е. зададим разбиение. При этом радиус разбиения выберем достаточно малым. Затем, последовательно по шагам для всех моментов разбиения, начиная с момента времени вплоть до момента времени T, будем строить множества достижимости. Шаг дискретизации рассчитаем по формуле:
, (4)
где - точность измерения, - максимальное из ускорений атакующих объектов игрока 1.
Запишем теперь формулу выигрыша, которая имеет следующий вид:
(5)
Т.е. находим разницу между уничтоженными средствами нанесения ударов игрока 1 и достигшими своей цели.
Z1 - стратегия игрока 1, выраженная в векторе , т.е. вектор траектории движения атакуемых объектов.Z2 -стратегия игрока 2, выраженная вектором , т.е. вектор, который определяет, в каких пунктах защиты размещены оборонительные объекты игрока 2.
Разработанная программа, предназначена для решения задачи оптимизации дифференциальной игры между подвижными и неподвижными объектами выполняет следующие основные функции:
ввод параметров системы;
расчет интенсивности отказов систем противника;
расчет вероятности безотказной работы первой и второй системы;
вычисление оптимальной пространственно-временной стратегии резервирования подвижного объекта.
Для повышения надежности и эффективности проведения исследования, правильной интерпретации результатов, а также чтобы не загромождать окно программы результатами вычислений, используются Excel – файлы с выходными данными программы.
В программе предусмотрено одно основное окно (рисунок 1), которое содержит:
Исходные данные первого игрока;
Исходные данные защищаемых объектов;
Исходные данные второго игрока;
Панель «меню».
Рис 1. Главное окно программы
Исходные данные первого игрока задаются следующими параметрами:
список атакующих объектов, содержащий текстовое поле вывода вспомогательной информации об объектах, а это прежде всего координаты атакующего объекта, которые можем также задавать кнопкой «Координата», при этом можем изменять координаты x, y, z. Следует учитывать, что координаты z принимает при умолчании значение 0, так как это способствует правильности вычислений;
интенсивность отказов;
начальная скорость;
начальное ускорение;
максимальное время жизни системы;
кнопка «Добавить» - позволяет добавлять количество атакующих объектов;
кнопка «Удалить» - позволяет удалить координаты объекта из общего списка;
кнопка «Сохранить изменения» - сохраняет добавленные координаты атакующего объекта, а также интенсивность отказов.
Исходные данные защищаемых объектов состоят из списка защищаемых объектов, который также как и список атакующих объектов состоит из текстового поля вывода вспомогательной информации об объектах, а это прежде всего координаты защищаемых объектов, которые можем также задавать кнопкой «Координата», при этом можем изменять координаты x, y, z. Таким образом мы задаем начальную позицию объекта, особенности точек a и β - последовательности действительных чисел, которые определяются физико-географическими или иными особенностями.
Исходные данные второго игрока определяются точками (координатами) для размещения объектов второго игрока, дальностью действия (радиус и степень защиты точек).
Панель «меню» содержит:
кнопка «Рассчитать»;
кнопка «сохранить начальные данные»;
исходные данные среды. В этом блоке определяется количество точек защиты, ε-точность измерения и конечная область - та область, в которой разрешено перемещать атакуемые объекты.
Кнопка «Рассчитать» позволяет вывести результаты расчетов на экран.
Во время выполнения программы, отображается состояние вычислений, выраженное в проценте выполненных расчетов.
Программа ожидает нажатие кнопки «Рассчитать» от пользователя, после чего запускает алгоритм «рассчитать». Данные, введённые пользователем, считываются из соответствующих элементов и проверяются на соответствие входному формату. Если все данные введены корректно, то программа начинает определение наилучших стратегий поведения для атакующих и оборонительных объектов. Вначале выполняется общая для всех итераций функция, вычисляющая шаг дискретизации.
По итогам работы системы формируется отчет представленный, выходными данными Excel файлом, в котором детально представлены: номер объекта, координаты, по которым данный объект перемещается.
Данная программа рассчитывает интенсивности отказов системы противника, вероятности безотказной работы первой и второй системы, а также позволяет найти оптимальную пространственно-временную стратегию резервирования подвижного объекта.
На рисунке 2 сформирован отчет, о результатах расчета программы в виде Excel файла.
Рис.2. Результаты расчета программы в виде Excel файла для 1-го шага
Рис.3. Результаты расчета программы в виде Excel файла для 15-го шага
Из приведенного фрагмента программы, стоит заменить, при приближении подвижного объекта к неподвижному на шаг дискретизации, противоборствующие между собой системы начинают воздействовать друг на друга, при этом интенсивность отказов системы противника начинает увеличиваться.
В отчете указывается временной интервал дискретизации, т.е. выполняется общая для всех итераций функция, вычисляющая шаг дискретизации. Затем идут основные вычисления для атакующего объекта:
номер объекта;
номер j – ого шага;
координаты объекта;
время полета атакующего объекта;
интенсивность отказов первого игрока;
интенсивность отказов второго игрока;
вероятность безотказной работы первой системы;
вероятность безотказной работы второй системы;
функция выигрыша.
Стоит еще раз отметить, что все вычисления проводятся на каждом j-ом шаге, до тех пор пока не произойдет максимальное приближение подвижного объекта к неподвижному на заданное расстояние.
Результатом вычислений является максимальное значение функции выигрыша Kj т.е. определение оптимальной пространственно-временной стратегии резервирования подвижного объекта. Указывается номер стратегии и ее значение.
Рис.4. Результат вычисления программы
Область науки, в рамках которой представлена данная работа, является достаточно специфичной, так как рассматриваемые задачи, связанные с разработкой математических моделей, методов, алгоритмов и программного обеспечения для решения задач оптимального управления противоборствующими подвижными объектами относятся к особо важным и охраняемым от широкого распространения.
Список литературы
Вентцель Е.С. Исследование операций.-М.: Сов.радио,1972-550с.
Горн О.А. Исследование дифференциальной игры между подвижными и неподвижными объектами / О.А.Горн// «Автоматизация, мехатроника, информационные технологии» материалы III Международной науч.-техн. конференции молодых ученых.-Омск: Изд-во ОмГТУ.-2013.-№.-С.158-162.
Потапов В.И. Дифференциальная игра между подвижными и неподвижными объектами/ В.И. Потапов//Омский научный вестник. Серия «Приборы, машины и технологии», 2012.-№3(113).-С.268-271.
Потапов В.И., Братцев С.Г. Дифференциальная игра между управляемыми подвижными объектами, Омский политехнический институт-Омск,1985-31с.-Деп. в ВИНИТИ 17.0785, №6002-85.