ДонНТУ   Портал магистров

ИСПОЛЬЗОВАНИЕ ГЛУБОКОГО ОБУЧЕНИЯ С ПОДКРЕПЛЕНИЕМ ДЛЯ ОБУЧЕНИЯ НЕЙРОСЕТЕВОГО ПИД-РЕГУЛЯТОРА НА ПРИМЕРЕ УПРАВЛЕНИЯ КВАДРОКОПТЕРОМ

С.Ю. Луканов, О.Ю. Тимошевская, В.В. Николаев, В.А. Лондиков, А.С. Вертешев. Использование глубокого обучения с подкреплением для обучения нейросетевого ПИД-регулятора на примере управления квадрокоптером // Научно-технический вестник Поволжья. — 2025. — № 6. — С. 223-227.

С.Ю. Луканов, О.Ю. Тимошевская, В.В. Николаев, В.А. Лондиков, А.С. Вертешев

Аннотация

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

Ключевые слова: Глубокое обучение с подкреплением, квадрокоптер, ПИД-регулирование, системы управления.

Введение

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

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

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

ПИД регулирование

Выходной сигнал регулятора \( \Delta u(t) \) определяется по следующей формуле:

\[ \Delta u(t) = k_c ((e'(t) - e'(t-1)) + \frac{T_s}{2T_i} (e'(t) + e'(t-1)) + \frac{T_d}{T_s} (e'(t) - 2e'(t-1) + e'(t-2))) \quad (1) \]

где \( e'(t) = r(t) - y(t) \), \( r(t) \) – входной опорный сигнал системы управления, \( y(t) \) – выходной сигнал.

Уравнение для \( \Delta u(t) \) можно переписать в следующем виде:

\[ \Delta u(t) = k_p (e'(t) - e'(t-1)) + k_I e'(t) + k_D (e'(t) - 2e'(t-1) + e'(t-2)) \quad (2) \]

где \( k_p = k_c - \frac{1}{2} k_I, \ k_I = \frac{k_c T_s}{T_i}, \ k_D = \frac{k_c T_d}{T_s}, \ k_c \) – коэффициент передачи, \( T_i \) – время сброса, \( T_d \) – время дифференцирования и \( T_s \) – время извлечения выборки. \( k_p, k_I, k_D \) — пропорциональный, интегральный и дифференциальный коэффициенты передачи соответственно.

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

Одним из возможных вариантов решения задач по подбору коэффициентов ПИД регулятора при управлении сложными объектами и при управлении квадрокоптерами, является вариант использования искусственных нейронных сетей (ИНС), так как нейронные сети способны аппроксимировать сложные нелинейные зависимости.

Нейронное управление

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

Благодаря возможностям обучения, нейронный контроллер хорошо подходит для работы при существенной неопределённости параметров. Если заранее неизвестны точные характеристики объекта, сеть может адаптировать свои веса на основе эмпирических данных.

Общая структура нейронных систем управления может включать контроллер прямой связи (для быстрого реагирования на изменения входного опорного сигнала) и контроллер обратной связи (для обеспечения устойчивости и отслеживания опорного сигнала). При отсутствии возмущающих воздействий контроллер прямой связи обеспечивает оперативную реакцию системы, а контроллер обратной связи заботится о поддержании устойчивости [3]. В объекте присутствует задержка по времени, нейронный контроллер должен учитывать эту особенность, например, используя информацию о прошлых состояниях системы и предсказывая будущее значения сигнала.

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

ПИД-контроллеры являются одним из наиболее распространённых средств регулирования в промышленности, а также при управлении летательными аппаратами и робототехникой. Однако выбор их параметров (коэффициентов пропорционального, интегрального и дифференциального звеньев) нередко требует экспертных знаний. Внедрение нейросети для самонастройки ПИД-контроллера (так называемого нейро-ПИД-контроллера) позволяет автоматически подбирать эти коэффициенты, исходя из текущих условий работы и критериев качества (минимизация ошибки, обеспечение стабильности, скорость реакции) [5].

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

В данной статье для самонастройки ПИД-контроллера может обучаться по данным, накопленным в прошлом, или методом обучения с подкреплением, используя эмулятор. При этом снижается зависимость от человека-оператора и упрощается внедрение системы в промышленныe или другие реальные приложения. В итоге достигается более высокая надёжность и качество управления по сравнению с традиционной ручной настройкой. На рисунке 1 представлена схема нейросетевого ПИД-контроллера, где нейронная сеть встроена для генерации коэффициентов на основе вычисляемой ошибки.

Схема нейросетевого ПИД-контроллера

Рис. 1 – Схема нейросетевого ПИД-контроллера

Для обучения нейронной сети через обратное распространение ошибки необходимо определить минимизируемую целевую функцию ошибки. Целевую функцию необходимо выбирать такую, чтобы ошибки \( e(n+1) \) уменьшалась в момент времени \((n+1)T\):

\[ E(\vec{\gamma}) = \frac{1}{t_f - t_0} \int_{t_0}^{t_f} e(t, \vec{\gamma})^2 dt \quad (3) \]

где \( e(t, \vec{\gamma}) \) – ошибка в следовании некоторой эталонной траектории с некоторым начальным возмущением, зависящая от набора параметров \( k_p, k_I, k_D \). В случае, если известен градиент целевой функции, то можно итеративными методами получить значения весов нейронной сети до локального оптимума.

Применение глубокого обучения с подкреплением

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

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

В случае нейросетевого ПИД-контроллера в качестве состояние берется ошибка ПИД-регулятора, разность входного опорного и выходного сигналов. Действием является числовые значения коэффициентов \( k_p, k_I, k_D \).

Экспериментальная среда. Для тестирования метода была разработана среда с простым сценарием, имитирующая квадрокоптер. Агент стабилизировать квадрокоптер, меняя тягу. На входы которых подается отклонение от целевого положения по трем осям. Выходами является максимальное значение коэффициентов регулятора.

Функция вознаграждения имеет следующий вид: \( r = -1 \) за выход из целевой зоны (падение допустимого отклонения) и \( r = 5 / MaxStep \), где \( MaxStep \) – максимальный шаг симуляции.

Для решения задачи использован алгоритм PPO [6]. PPO (Proximal Policy Optimization) – безмодельный, on-policy алгоритм градиентной оптимизации. Стратегия выбирается на основе вычисления функции преимущества, оценивающей, насколько выбор действия \( a \) лучше базового значения.

\[ \theta_{k+1} = \text{argmax}_{\theta} \mathbb{E}_{s,a \sim \pi_{\theta_k}} [L(s, a, \theta_k, \theta)] \]

\[ L(s, a, \theta_k, \theta) = \min \left( \frac{\pi_{\theta}(a|s)}{\pi_{\theta_k}(a|s)} A^{\pi_{\theta_k}}(s, a), g(\epsilon, A^{\pi_{\theta_k}}(s, a)) \right) \quad (5) \]

\[ g(\epsilon, A) = \begin{cases} (1 + \epsilon)A & A \ge 0 \\ (1 - \epsilon)A & A < 0 \end{cases} \quad (6) \]

Где \( \theta \) – веса стратегии, \( k \) – шаг обновления, \( \pi \) – стратегия, \( A \) – функция преимущества, \( s \) – состояние, \( a \) – действие.

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

Результаты обучения

Рис. 2. – Результаты обучения

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

В результате экспериментов лучшего результата (оранжевый график) добились с максимальным значением коэффициентов равным 70; архитектурой аппроксимирующей стратегию нейронной сети, состоящей из двух слоев по 256 нейронов; размером пакета для вычисления градиента ошибка равным 1024 и коэффициентом \( \lambda \) для вычисления обобщенной оценки преимущества равным 0.99.

Таким образом глубокое обучение с подкреплением может быть использовано для обучения нейронной сети в задаче автоматической настройки ПИД-регулятора.

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

  1. Åström K.J., Wittenmark B. Adaptive Control. Addison-Wesley, 1989.
  2. Narendra K.S., Parthasarathy K. Identification and Control of Dynamical Systems Using Neural Networks. IEEE Transactions on Neural Networks, vol. 1, no. 1, 1990.
  3. Dorf R.C., Bishop R.H. Modern Control Systems. Pearson, 2011.
  4. Bouabdallah S. Design and Control of Quadrotors with Application to Autonomous Flying. PhD Thesis, EPFL, 2007.
  5. Huang S.J., Huang S.M. Adaptive fuzzy PID control of nonlinear systems using RBFN. IEEE Transactions on Industrial Electronics, vol. 54, no. 2, 2007.
  6. Schulman J., Wolski F., Dhariwal P. [et al.] / Proximal Policy Optimization Algorithms // Machine Learning. – 2017. – https://doi.org/10.48550/arXiv.1707.06347.