Приложение к Препринту
"Робастное управление в игровых задачах с линейной динамикой"
С.А. Ганебный
1. Описание задачи

Работу робастного управления поясним на примере линеаризованного конфликтно-управляемого маятника. Систему, описывающую динамику маятника, запишем в виде

x1′ = x2 + v,
x2′ = −x1 + u.
Здесь u и v — скалярные управления первого и второго игроков (полезное управление и возмущающее воздействие). Поведение системы будем изучать на промежутке времени T = [0, θ]. На плоскости x1, x2 зададим терминальное множество M в виде круга радиуса 2 с центром в нуле.

Цель первого игрока — привести систему в момент окончания θ на терминальное множество M, по возможности как можно ближе к нулю. Цель второго игрока противоположна.

Предлагаемое нами робастное управление предназначено для случаев, когда полезное управление ограничено, а ограничение на возмущающее воздействие отсутствует. Введем ограничение на управление первого игрока: |u| ≤ 1.

Напомним понятие робастного управления (точная формулировка, способ построения и доказательство теоремы о гарантии смотрите в Препринте). Робастное управление — это управление обратной связи, обладающее следующими свойствами:

В случае маятника критический уровень Qmax будем задавать при помощи ограничения |v| ≤ ν.

Отметим, что рассматриваемое нами робастное управление не реализует какой-либо критерий оптимальности, но обеспечивает хорошую гарантию.

В качестве возмущающего воздействия можно брать:

2. Результаты моделирования

Мы приготовили несколько тестовых случаев, показывающих результаты моделирования. Для всех случаев рассматриваемый интервал времени — [0, 10], шаг дискретной схемы выбора управления — 0.05, начальное положение системы — (0, 1). В качестве критического уровня Qmax выбрано ограничение |v| ≤ 1.

Случай 1. (animated gif, 1.37mb) Здесь помеха задается при помощи синусоиды с длиной волны равной 8 и амплитудой 0.8, т.е. меньше критического уровня.

Случай 2. (animated gif, 1.44mb) Здесь помеха является игровой и рассчитана на уровень |v| ≤ 0.8.

Ниже на рисунке представлен один из кадров случая 1.

Здесь Вы можете посмотреть:

  1. Текущее положение в эквивалентной системе (система (2) в Препринте). Черной точкой отмечено текущее положение, синее множество — сечение главного стабильного моста W; коричневая линия — линия переключения, которая используется для выбора знака управления в текущий момент времени; красная стрелка — выбранное в данный момент времени управление первого игрока; тонкая серая линия — траектория движения системы.
  2. Текущее положение в естественных координатах (система (1) в Препринте). Черной точкой отмечено текущее положение; тонкой серой линией — траектория движения; синий круг — терминальное множество M.
  3. Здесь отмечен текущий момент времени, а также сведения о параметрах моделирования.
  4. График реализации управления первого игрока — робастного управления. Красными линиями обозначены максимально допустимые значения полезного управление. Как видно, в зависимости от текущего положения управление возрастает или уменьшается, и (в данном примере) не доходит до своих максимальных ограничений.
  5. График реализации помехи — в данном случае — синусоиды.

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

Замечание. Для работы программы необходима библиотека .NET Framework. Она входит в состав Windows XP Service Pack 1, либо ее можно скачать с сайта Microsoft (23.1mb).

3. Описание возможностей программы

Пользовательский интерфейс достаточно прост и состоит из двух листков — с параметрами и результатами моделирования.

Рассмотрим листок с параметрами.

Здесь Вы можете изменить:

  1. Начальное положение системы в естественных координатах.
  2. Интервал времени, на котором проводится моделирование, и шаг дискретной схемы управления.
  3. Ожидаемое ограничение на управление второго игрока Qmax.
  4. Способ формирования управления второго игрока: синусоида некоторой амплитуды и некоторой длины волны; либо оптимальное игровое управление, соответствующее некоторому ограничению на управление второго игрока;
  5. кнопка, запускающая моделирование.

Теперь перейдем к листку с результатами моделирования.

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

4. Вопросы? Комментарии? Предложения?

С вопросами можно обращаться к Сергею Ганебному.