синтез системы управления методом сетевого оператора на

advertisement
8023
УДК 519.6
СИНТЕЗ СИСТЕМЫ УПРАВЛЕНИЯ
МЕТОДОМ СЕТЕВОГО ОПЕРАТОРА
НА ОСНОВЕ АППРОКСИМАЦИИ
МНОЖЕСТВА ОПТИМАЛЬНЫХ
ТРАЕКТОРИЙ
А.И. Дивеев
Вычислительный центр им. А.А. Дородницына РАН
Россия, 119333, Москва, Вавилова ул., 40
E-mail: aidiveev@mail.ru
К.А. Пупков
Московский государственный технический университет им Н.Э. Баумана
Россия, 105005, Москва, 2-я Бауманская ул., 5
E-mail: ktk_rudn@mail.ru
Е.А. Шмалько
Вычислительный центр им. А.А. Дородницына РАН
Россия, 119333, Москва, Вавилова ул., 40
E-mail: eshmalko@googlemail.com
E.А. Софронова
Московский государственный технический университет им Н.Э. Баумана
Россия, 117198, Москва, Миклухо-Маклая ул., 6
E-mail: sofronova_ea@mail.ru
Ключевые слова: синтез системы управления, оптимальное управление, генетический
алгоритм, метод сетевого оператора
Аннотация: Рассматривается задача синтеза системы управления. Для решения задачи
используется численный метод сетевого оператора. Известный подход к численному
решению задачи синтеза заключается в нахождении многомерной функции, описывающей зависимость управления от координат состояния, с помощью метода сетевого оператора по критерию минимума суммы значений функционалов для различных начальных условий. Получаемое при этом решение, оптимальное по суммарному значению
функционалов, не гарантирует близости каждой отдельной траектории для конкретного
начального значения к оптимальной траектории. В настоящей работе предлагается подход, основанный на использовании при синтезе оптимальных траекторий. На первом
этапе для различных начальных значений решаются численно задачи оптимального
управления. После каждого решения точки оптимальных траекторий в пространстве состояний сохраняются. На втором этапе методом сетевого оператора решается задача
синтеза по критерию минимума отклонения решений от точек оптимальных траекторий.
Для численного решения задачи оптимального управления используется вариационный
генетический алгоритм. Приведен пример решения задачи синтеза системы управления
спуском космического аппарата на поверхность Луны.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8024
1. Введение
Задача синтеза системы управления до последнего времени могла решаться только
аналитически, так как ее решением является многомерная функция, описывающая зависимость управления от значений вектора состояния объекта. Искомая синтезирующая функция должна определять по состоянию объекта значение управления, обеспечивающего достижение заданной цели, и оптимального с точки зрения заданного критерия качества. Аналитическое решение задачи синтеза было возможно только для несложных объектов, математические модели которых допускали получение аналитического решения, а вид оптимального управления определялся свойствами задачи.
С развитием вычислительной техники и последними достижениями в области алгоритмизации появилась возможность создавать численные методы для нахождения многомерных функций. К таким методам следует, прежде всего, отнести метод генетического программирования [1], а также его развитие, метод грамматической эволюции [2]
и метод аналитического программирования [3]. Все перечисленные методы позволяют
искать с помощью эволюционных алгоритмов математические выражения, закодированные специальными структурами данных. Генетическое программирование использует строку символов, метод грамматической эволюции использует битовые строки, в
методе аналитического программирования применяется наборы из целых чисел. Данные методы возможно использовать и для решения задачи синтеза системы управления.
Использование перечисленных методов для решения задачи синтеза показало, что из-за
огромного пространства возможных решений в виде математических выражений, нахождение решения задачи синтеза требует больших вычислительных затрат.
Разработка специального метода для решения задачи синтеза управления, учитывающего недостатки вышеперечисленных методов, привело к созданию метода сетевого оператора [4-7], который в качестве структуры данных для описания математического выражения использует целочисленную матрицу. Основными преимуществами метода сетевого оператора являются: быстрое вычисление математического выражения за
один проход по строкам над главной диагональю матрицы и поиск оптимального решения на множестве вариаций базисного решения, которое задается исследователем.
Использование малых вариаций базисного решения позволяет ввести метрику на
пространстве математических выражений, а задание самого базисного решения определяет область поиска решения.
Численный метод сетевого оператора для синтеза системы управления предполагает поиск решения в виде математического выражения в форме целочисленной матрицы,
обеспечивающего решение задачи многокритериальной оптимизации. Первый критерий определяется заданным функционалом качества, а второй критерий учитывает точность выполнения терминальных условий. Функционалы вычисляются в виде суммы
значений функционалов на множестве начальных состояний объекта управления.
Очевидно, что, если синтезирующая функция для конкретной задачи синтеза существует на классе функций, заданных сетевым оператором определенной размерности и
построенным на множествах унарных и бинарных операций, то указанный выше подход должен привести к нахождению синтезирующей функции, особенно при удачном
задании базисного решения. Определение достаточности сетевого оператора для решения конкретной задачи синтеза является сложной математической проблемой. В общем
случае метод сетевого оператора будет искать наилучшее по значениям функционалов
решение на классе функций, определяемых размерностью сетевого оператора и заданными множествами унарных и бинарных операций. При таком подходе вопрос о том,
насколько найденная синтезирующая функция обеспечивает получение оптимального
управления, остается открытым. В данной работе предлагается подход, который также
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8025
использует метод сетевого оператора, но задача синтеза управления решается как задача аппроксимации точек оптимальных траекторий, полученных в результате решения
задачи оптимального управления для различных начальных значений. Данный подход
должен дать информацию о близости найденного решения к синтезирующей функции.
2. Задача синтеза системы управления
Рассмотрим постановку задачи синтеза системы управления.
Задана математическая модель объекта управления в виде системы обыкновенных
дифференциальных уравнений
(1)
x  f x, u  ,
где x – вектор состояния объекта управления, x  R n , u – вектор управления,
u  U  R m , m  n , U – ограниченное замкнутое множество.
Задано множество начальных значений
X0  R n .
(2)
Заданы терминальные условия или цель управления
i x   0 , i  1, r .
(3)
Задан критерий качества управления в виде функционала
tf
(4)
J
 f 0 xt , ut dt  min ,
0
где t f - время управления, которое может быть не задано и определяться по условию
(3) достижения цели управления.
Необходимо найти управление в виде многомерной функции от компонент вектора
пространства состояний
(5)
u  hx  .
Функция hx  должна обладать следующими свойствами. Функция hx  должна
удовлетворять ограничениям на управление
hx   U , x  R n .
(6)
При подстановке функции hx  в модель объекта управления (1) получаем систему
дифференциальных уравнений
x  f x, hx  .
Полученная система уравнений для любого начального значения из заданной области (2) начальных значений
x 0  X 0
имеет решение в форме векторной функции времени x t  . Данное решение за конечное
время t f   достигает цели управления (3)
i x t f   0 , i  1, r ,
и обеспечивает минимум функционалу (4) качества управления на множестве всех до~ ~
, удовлетворяющих ограничениям u~t   U , 0  t  t f
пустимых управлений U  u
(7)
(8)
tf
tf
0
0
f 0 x t , ut dt .
~
 f 0 xt , hxt dt  min
uU 
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8026
При численном решении задачи синтеза управления область начальных значений
(2) заменяем множеством из конечного числа элементов
~
X 0  x 0,1 ,, x 0, K ,
(9)




T
xn0,i
, i  1, K .
где x 0,i  x10,i 
Заменим функционал (4) суммой вычисленных для каждого начального значения
функционалов.
K tf

(10)
J 1     f 0 x t , ut dt   min ,


i 1  0
 x 0 ,i
где J x0,i указывает на вычисление функционала J при начальных значениях
x0  x 0,i .
Требование выполнения терминальных условий (3) для каждого начального значения при численном поиске функции (5) является слишком жестким. Заменим терминальные условия (3) вторым функционалом
J 2  max x t f x 0,i  min ,
(11)
i
где x   1 x    r x  ,
T
x  
r
  2j x  .
j 1
3. Аппроксимация множества оптимальных траекторий
Пусть для математической модели (1) объекта управления решены задачи оптимального управления по критерию качества (4) и терминальным условиям (3) для всех
начальных значений из множества (9). В результате получено множество пар оптимальных программных управлений и траекторий
~
~1  ,, ~
~ K  ,
D ~
x1 , u
x K , u
(10)

 

x i  – частное решение системы уравнений
где ~
~ i t 
x  f x, u
(11)


с начальными условиями
x0  x 0,i ,
(12)
~ i  – решение задачи оптимального управления с учетом ограничений
u
(13)
~ i t   U  R m ,
u
и начальными значениями (12), i  1, K .
Для каждого решения введем множество дискретных значений времени
T i  0, t1i , t2i ,, tni i ,
(14)


где tni i  t f для начального условия (12)
Введем обозначения
~
(15)
x i, j  ~
x i t ij , j  1, ni , i  1, K .

XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8027
Получаем множество точек оптимальных программных управлений и траекторий в
пространстве R n  R m
D ~
x 1,1 ,, ~
x 1,n1 ,, ~
x K ,1 ,, ~
x K ,nK .
(16)

 

Необходимо найти многомерную функцию управления (5), которая должна удовлетворять критерию
(17)
n1
 
K
J 1   min x i t   h ~
x i , j  min ,
j 1 i 1
t
где x i t  - решение дифференциального уравнения x  f x, hx  при начальных значениях x 0,i , i  1, K .
4. Вариационный генетический алгоритм для решения задачи
оптимального управления
Рассмотрим генетический алгоритм на основе принципа вариаций базисного решения для задачи оптимального управления [8]. Суть алгоритма заключается в том, чтобы
закодировать не само решение, а его вариации. Все генетические операции при этом
выполняются на множестве кодов вариаций.
Задаем множество значений моментов времени
(18)
T  0, t1 , t 2 ,, t N  ,
где
ti  it .
(19)
Определим базисное решение в виде упорядоченного множества допустимых значений управления в дискретные моменты времени
(20)
где


V 0  v 0,0 , v 0,1 ,, v 0, N ,


T
v 0,i  v10,i  vm0,i .
Определим вариацию базисного решения. Для построения вариации выбираем точку действия вариации k и величину вариации u . Соседние M точек слева и справа
от точки k также подвергнем вариации пропорционально их близости к точке действия
вариации k .
Выбираем случайно целое число k из множества целых чисел величиной от 0 до
mN , k  0,, mN  . Определяем компоненту управления для вариации, как остаток от
деления величины k на количество N  1 точек в решении
 k 
(22)
mod m  1 .
j
 N  1 
где  A - целая часть числа A .
Определяем точку вариации
p  k mod N .
(23)
(21)
Выполняем вариацию для компоненты v 0p базисного решения.
В результате действия вариации получаем новое возможное решение
V  v 0 , v 1 , , v N ,
(24)


XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8028
v jp  v 0j , p  u j ,
(25)
M i
u j , i  0, minM , k ,
M
M i
(27)
v jp  i  v 0j , p  i 
u j , i  1, minM , N  k 
M
где u j - скалярная величина приращения компоненты j управления, M - диапазон
v pj  i  v 0j , p  i 
(26)
вариации.
Целочисленная величина диапазона вариации M указывает на количество точек
слева и справа от точки вариации p , в которых управление также подвергается вариациям на величины обратно пропорциональные удаленности от точки вариации p .
С целью повышения эффективности поиска нормируем величины управления
u j  u j
~
uj  
(28)
,
u j  u j
где u~ – величина компоненты j нормированного управления.
j
Для нормированного управления все компоненты имеют одинаковые ограничения
0  u~ j  1 , j  1, m .
(29)
Обратный пересчет величины реального управления u j по величине нормированного управления u~ выполняем по формуле
j


u j  u~ j u j  u j  u j .
(30)
Для нормированного управления получаем одинаковые ограничения для всех значений управлений. Положительная величина приращения управления не зависит от номера компоненты управления, поэтому ищем одно положительное значение приращения q для всех компонент управления.
0  q  1.
(31)
При описании вариации используем вектор из трех компонент
(32)
w  w1 w2 w3 T ,
где w1  k , w2  M , wi  q .
Действие вектора вариаций (32) на базисное решение (20) приводит к получению
нового решения
V  w  V0 .
(33)


где V  v 0 , v1 ,, v N .
Поиск решения осуществляем на множестве наборов векторов вариаций
W  W1 ,, WH ,
(34)


где Wi  w i ,1 ,, w i ,d .
Любое новое возможное решение является следствием воздействия набора вариаций на базисное решение.
5. Пример синтеза системы управления
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8029
Рассмотрим задачу спуска космического аппарата на поверхность Луны. Математическая модель объекта управления описывается следующей системой обыкновенных
дифференциальных уравнений
dV
 W cosu1    g cos  ,
dt
d 1
 W sinu1    g sin  ,
dt V
dh
 V cos  ,
dt
dL
 V sin  ,
dt
dm
P u
 0 2 ,
dt
Pud
где
2
 R0 
g~P
 , R  R0  h ,
, g  g 0 
W
m
 R0  h 
V – модуль скорости движения космического аппарата, W – ускорение, создаваемое
тягой двигателя торможения,  – угол наклона траектории относительно гравитационной вертикали, h – высота полета КА, R – модуль радиус-вектора от центра Луны до
космического аппарат, R0 – средний радиус поверхности Луны, L – дальность вдоль
поверхности, m – масса КА, P – тяга коррекционно-тормозного двигателя (Н), Pud –
удельный импульс коррекционно-тормозного двигателя (м/с), g 0 - гравитационное ускорение свободного падения на поверхности Луны.
Постоянные параметры в модели имеют следующие значения: R0  1738.4 км,
P  7200 0 Н, P  319 с, g  1.623 м/c 2 , g~  9.80665 м/c 2 .
ud
0
0
Для модели известны начальные значения:


V 0  V0 , 0  0 , h 0  h0 , h0 , L0  L0 , m0  m0 ,
где
h0 ,
h0
– наименьшее и наибольшее значения начальной высоты.
Заданы терминальные условия
V t f V f , h t f  h f , L t f  L f .
 
 
 
Значения компонент управления, величины изменения тяги и угла направления тяги ограничены


ui  ui , ui , i  1,2 .
Необходимо найти управление в виде
u1  g1 V , , h  , u2  g 2 V , , h  .
Управление должно обеспечить перелет космического аппарата из начальной области в терминальное состояние с учетом ограничений на управление.
Для оценки качества управления заданы функционалы
J1  L f  L t f   h f  h t f ,
 
J 2  V f  V t f  ,
 
где  - весовой коэффициент.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8030
Для учета неопределенности заменим интервал начальных значений по высоте
множеством значений
h0  h0,0  h0,1    h0,kh  h0 ,
где h0  h0,0  h0,1    h0,kh  h0 .
Заменим значения функционалов суммами
kh
kh
~
~
J1   J1  j , J 2   J 2  j  .
j 0
j 0
где J i  j  - значение функционала J i , вычисленное при h 0  h0, j , i  1,2 .
Для решения задачи синтеза используем метод сетевого оператора и аппроксимацию множества оптимальных траекторий.
В вычислительном эксперименте использовались следующие числовые значения
модели: V 0  1689 м/с, 0  1,6 рад., h0  16,648 км., h0  19,648 км., L0  0 км.,
m0  1400 кг.,
u1    рад.,
u1   рад.,
u2  80 кг,
u2  80 кг,
V f  5 м/с,
h f  1,5 км., L f  240 км.
Для вычисления функционалов использовали следующую дискретизацию
h0, j  h0,0  jh0 ,
где h0  1.5 км.
Для поиска решения используем вариационный генетический алгоритм со следующими параметрами: размер начальной популяции - 256; число поколений - 64; число скрещиваемых пар в одном поколении – 128; число вариаций в одном решении – 8;
число поколений между сменой базисного решения – 29; число элитарных решений – 8;
вероятность мутации – 0,7; параметр для скрещивания – 0,4.
В результате была получена следующая матрица сетевого оператора
0 0 0 0 0 0 1 23 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
 0 0 0 0 0 0 0 1 0 0 9 0 0 1 0 0
 0 0 0 0 0 0 8 1 0 0 0 0 5 0 0 0
0 0 0 0 0 0 0 0 1 0 0 11 0 0 0 0
 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
0 0 0 0 0 0 1 4 0 1 0 0 18 0 0 0
Ψ  00 00 00 00 00 00 00 10 10 00 10 03 00 00 90 00 .


00 00 00 00 00 00 00 00 00 10 00 00 10 10 05 00
0 0 0 0 0 0 0 0 0 0 0 1 6 18 0 5
 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 6
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 4 0
 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 6
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Проученная матрица согласно обозначениям функций, приведенным в работе [4]
следующим математическим выражениям
ui , если u~i  ui ,

ui  ui , если u~i  ui , i  1, 2,
u~i - иначе,

где
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8031
1  e  q1
 B  ,
1  e  q1 q0   
~
1
u~2  e u1  e A 
,
q2  cos
u~1  sgnC  C 
A
e
 q2  cos  
q1
hf  h



 h  h  
1 e
 
 B   f
 h *   sgn q0    1  e  q1


 

 q1
       sgn q   11  ee
 q0    1 e  q1



1 e  q1
 e
 1 ,






1  e  q1



B  q1
q0   
,
0
 q1 
h*
1  e  q1


 hf  h  hf  h
q  cos  
 
,
C  sgn q2  cos e 2
 1  B  
*
*
h
h


q1  5,50977 , q2  8,41626 , q3  13,94580 .
На рис. 1-6 приведены результаты моделирования синтезированной системы
управления. Там же точками приведены результаты, полученные при решении задачи
оптимального управления. Согласно моделированию видно, что синтезированная нелинейная система управления обеспечивает достаточно точное выполнение терминальных условий при различных начальных значениях объекта управления, хотя синтезированная система не обеспечила высокой точности совпадения с оптимальной траекторией по высоте полета космического аппарата.
3

 q1

Рис. 1. Скорость КА при синтезированном и оптимальном управлениях для начального
значения высоты 16,648 км.
Рис. 2. Скорость КА при синтезированном и оптимальном управлениях для начального
значения высоты 19,648 км.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8032
Рис. 3. Высота полета КА при синтезированном и оптимальном управлениях для начального значения высоты 16,648 км.
Рис. 4. Высота полета КА при синтезированном и оптимальном управлениях для начального значения высоты 19,648 км.
Рис. 5. Дальность полета КА при синтезированном и оптимальном управлениях для начального значения высоты 16,648 км.
Рис. 6. Дальность полета КА при синтезированном и оптимальном управлениях для начального значения высоты 16,648 км.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
8033
6. Заключение
Предложен метод синтеза системы управления на основе использования метода сетевого оператора для аппроксимации множества точек оптимальных траекторий. Метод
содержит два этапа. На первом этапе численно решается задача оптимального управления для всех начальных условий. На втором этапе решается задача аппроксимации точек множества оптимальных траекторий методом сетевого оператора. Разработанный
метод был применен к решению задачи синтеза системы управления спуском космического аппарата на поверхность Луны. Результаты моделирования показали достаточно
удовлетворительное выполнение терминальных условий при различных начальных
значениях объекта управления.
Работа выполнена при поддержке Российского фонда фундаментальных исследований (14-08-00008а, 13-08-00523а).
Список литературы
1.
2.
3.
4.
5.
6.
7.
8.
Koza J.R. Genetic Programming: On the Programming of Computers by Means of Natural Selection. Cambridge, Massachusetts, London, MA: MIT Press, 1992, 819 p.
O'Neill M., Ryan C. Grammatical Evolution. Evolutionary Automatic Programming in an Arbitrary Language. Kluwer Academic Publishers. 2002.
Zelinka I. Analytic programming by Means of Soma Algorithm // In: Proc. 8th International Conference on
Soft Computing Mendel '02, 2002. Brno, Czech Republic. P. 93-101.
Дивеев А.И. Метод сетевого оператора. М.: ВЦ РАН, 2010. 178 с.
Дивеев А.И., Софронова Е.А. Метод сетевого оператора и его применение в задачах управления. М.:
РУДН. 2012. 182 с.
Дивеев А.И. Численный метод сетевого оператора для синтеза системы управления с неопределенными начальными значениями // Известия РАН Теория и системы управления. 2012, № 2. С. 63-78.
Дивеев А.И., Пупков К.А., Софронова Е.А. Синтез управления спуском космического аппарата на
поверхность Луны методом сетевого оператора // Вестник МГТУ им. Н.Э. Баумана. Сер. «Приборостроение». 2013. №4. С. 14-29.
Дивеев А.И., Шмалько Е.Ю. Вариационный генетический алгоритм для решения задачи оптимального управления // Современные проблемы науки и образования. 2014. № 1. URL: http://www.scienceeducation.ru/115-11474.
XII ВСЕРОССИЙСКОЕ СОВЕЩАНИЕ ПО ПРОБЛЕМАМ УПРАВЛЕНИЯ
ВСПУ-2014
Москва 16-19 июня 2014 г.
Download