Cовместное применение машинного обучения и метаэвристических алгоритмов оптимизации для синтеза оптимального управления спутником

Введение

В теории управления большая часть исследований проводится в области применения нейронных сетей в качестве аппроксимации управления [1,2]. В большинстве случаев в данных работах предпринимаются попытки решить вычислительно сложную задачу напрямую без приобретения априорной информации об оптимальных или хотя бы субоптимальных управлениях.

Предлагается комбинированный двухэтапный подход, который использует идеи и алгоритмы теории оптимального управления и базовые техники машинного обучения. Основной идеей первого этапа является формулирование задачи поиска оптимального программного управления, которая впоследствии преобразуется к задаче нелинейного программирования, решение которой можно найти с помощью метаэвристических алгоритмов оптимизации. Данная процедура повторяется для разных начальных условий. Результатом данного этапа является набор оптимальных программных управлений и соответствующих им траекторий. Полученный набор данных используется на втором этапе для формулировки задачи обучения с учителем.

Выбор именно такого подхода обоснован наличием большого числа эффективных методов оптимального программного управления [3-5] и большого числа алгоритмов оптимизации и построения регрессии [6,7].

Данная работа может быть рассмотрена как апробация open-source программного комплекса [10], разрабатываемого авторами, для решения задачи синтеза оптимального управления с полной обратной связью для некоторого заданного множества начальных состояний.

Решение задачи поиска субоптимального управления с обратной связью

Этап 1: Поиск оптимальных программных управлений

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

Рассмотрим решение следующей задачи оптимального управления [4,5,8]:

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

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

Для применения метаэвристических алгоритмов оптимизации (они могут быть любого типа: эволюционные, биоинспирированные, методы роевого интеллекта, мультиагентные, меметические и др. [6]) необходимо параметризовать управление, например, в виде кусочно-постоянных, кусочно-линейных функций, разложения по ортогональной системе базисных функций и т.д. Здесь искомое программное управление ищется в виде кусочно-линейных функций: , , где и , , которые задаются вектором коэффициентов .

Таким образом, решаемая задача сводится к проблеме поиска вектора , минимизирующего критерий качества управления для заданного начального состояния из множества . На первом этапе для всех начальных условий , где - количество различных начальных состояний, находятся векторы и, как следствие, субоптимальные управления . С этой целью предлагается использовать свободно распространяемую библиотеку алгоритмов оптимизации OSOL Extremum [10].

Этап 2: Формирование регрессии

Подготовка данных

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

табл

Формирование регрессии

Регрессия является классическим примером задачи обучения с учителем [7]. В рамках данного исследования найденные на предыдущем этапе управления могут быть рассмотрены как желаемое значение регрессора для вектора входных параметров -- времени и вектора состояния. Другими словами, требуемое управление с обратной связью может быть представлено следующим образом:

где -- моменты времени из отрезка .

Приведенное соотношение показывает, как генерировать управляющие воздействия для ранее использованных входных параметров, но неясно, что делать для остальных значений, который могут возникать в будущем. Алгоритмы машинного обучения имеют свойство обобщать данные, используя конечный набор наблюдений [7], поэтому их применение является естественным.

Для построения регрессии предлагается использовать хорошо изученный и часто применяемый алгоритм случайного леса [7], который реализован в библиотеке Scikit-Learn [11].

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

Задача оптимального управления спутником

Постановка задачи

Рассмотрим задачу гашения вращательного движения спутника [12]. После преобразования к безразмерным величинам система дифференциальных уравнений, описывающая движение твердого тела относительно центра масс, выглядит следующим образом:

Ограничения на управление представлены в виде интервалов: . Начальные значения , , берутся из множества , что приводит к возможным комбинациям. Время функционирования системы: . Требуемое конечное состояние системы: , функционал качества управления: , где -- параметр штрафа.

В качестве основного инструмента для решения задачи параметрической оптимизации был использован интервальный метод взрывов [5].

Итоговый результат

Рассмотрим несколько конфигураций начальных состояний , которые не были использованы на первом этапе.

Случай 1. Начальное состояние: . Достигнутое конечное состояние: , , .

Стабилизация спутника. Случай 1 Рис. 1. Стабилизация спутника. Случай 1

Случай 2. Начальное состояние: . Достигнутое конечное состояние: , , .

Стабилизация спутника. Случай 2 Рис. 2. Стабилизация спутника. Случай 2

Аналогичные результаты получаются при других начальных состояниях из .

По приведенным на рис. 1 и рис. 2 графикам видно, что предлагаемый подход имеет потенциал решения проблемы синтеза оптимального управления с обратной связью. Очевидным недостатком является негладкая форма получаемого управления.

Заключение

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

Дальнейшие исследования планируется проводить по нескольким направлениям: определение потери относительно критерия эффективности и обеспечение более гладкой формы управления, генерируемого регрессией.

Работа выполнена при поддержке Российского фонда фундаментальных исследований (16-07-00419 А).

Список литературы

  1. Shin J.-H., Jun H.-B., Kim J.-G. Dynamic Control of Intelligent Parking Guidance Using Neural Network Predictive Control // Computers & Industrial Engineering. 2018. No. 120. P. 15–30.
  2. Zhang G., Deng Y. and Zhang W. Robust Neural Path-Following Control for Underactuated Ships with the DVS Obstacles Avoidance Guidance // Ocean Engineering. 2017. No. 143. P. 198–208.
  3. Kuo Y.-L., Wu T.-L. Open-Loop and Closed-Loop Attitude Dynamics and Controls of Miniature Spacecraft Using Pseudowheels // Computers and Mathematics with Applications. 2012. No. 64. P. 1282–1290.
  4. Panteleev A.V., Metlitskaya D.V. Using the Method of Artificial Immune Systems to Seek the Suboptimal Program Control of Deterministic Systems // Automation and Remote Control. 2014. Vol. 75. No. 11. P. 1922–1935.
  5. Panteleev A.V., Panovskiy V.N., Korotkova T.I. Interval Explosion Search Algorithm and Its Application to Hypersonic Aircraft Modelling and Motion Optimization Problems // Bulletin of the South Ural State University, Series: Mathematical Modelling, Programming and Computer Software. 2016. No. 9. P. 55-67.
  6. Brownlee J. Clever Algorithms: Nature-Inspired Programming Recipes. North Carolina, Morrisville: LuLu, 423 p.
  7. Herbrich R., Graepel T. Machine Learning: An Algorithmic Perspective. FL: CRC Press, 430 p.
  8. Пантелеев А.В., Бортаковский А.С. Теория управления в примерах и задачах. М.: ИНФРА-М, 583 с.
  9. Пантелеев А.В., Скавинская Д.В., Алешина Е.А. Метаэвристические алгоритмы поиска оптимального программного управления. М.: ИНФРА-М, 396 с.
  10. Panovskiy V.N. Open-Source Optimization Library - Extremum
  11. Hackeling G. Mastering Machine Learning with scikit-learn. Birmingham: Packt Publishing, 221 p.
  12. Крылов И.А. Численное решение задачи об оптимальной стабилизации спутника // Вычислительная математика и математическая физика. 1968. Т. 8. No. 1. С. 284–291.
ИП Пановский Валентин Николаевич
ОГРНИП 322774600390419
ИНН 771683960143