И. А. КАЛИНОВСКИЙ, Ю. Р. ЦОЙ
Национальный исследовательский Томский политехнический университет
*****@***ru
УПРАВЛЕНИЕ ДИНАМИЧЕСКИМИ ОБЪЕКТАМИ
В УСЛОВИЯХ ПОЛНОЙ НЕОПРЕДЕЛЕННОСТИ
В работе рассматривается метод построения алгоритма управления динамическим объектом в условиях неопределенности, когда объект представляет собой «черный ящик». Регулятор строится как совокупность конечного автомата и искусственной нейронной сети. Для настройки регулятора используются генетические алгоритмы и рандоминизированные алгоритмы стохастической оптимизации. Приводятся результаты применения данного подхода к задаче стабилизации перевернутого маятника на тележке.
Ключевые слова: автоматическое управление, конечные автоматы, нейронные сети, генетические алгоритмы, маятник на тележке
Введение
Классические методы построения алгоритмов управления требуют знания математической модели объекта управления (ОУ), которая точно описывает его поведение. Однако практически любая математическая модель является упрощенным описанием реального объекта. Более того, часто возникают ситуации, когда некоторые параметры модели являются неизвестными (параметрическая неопределенность), неточно известна ее структура (структурная неопределенность), или на объект действует неизвестное внешнее возмущение (сигнальная неопределенность). Основные методы решения задач управления неопределенными объектами основаны на теориях робастного и адаптивного управления [1], а также на активно развивающейся в последнее время, теории интеллектуальных систем управления [2].
Основой построения интеллектуальных регуляторов являются технологии нечеткой логики, ассоциативной памяти, искусственных нейронных сетей и др. Для использования этих технологий требуется некоторый набор начальных знаний об ОУ, которые формируются экспертом или автоматически на основе статистических данных о функционировании ОУ. Эти знания могут быть представлены в виде: продукционных правил, функций принадлежности или множества обучающих примеров.
Более сложная ситуация возникает, когда отсутствует какая-либо априорная информация об ОУ и нет возможности получить обучающую выборку. В этом случае объект управления характеризуют понятием «черный ящик», т. е. объект, о функциях которого можно судить только по его реакции на внешнее воздействие.
В этой работе исследуется задача построения алгоритмов управления динамическим объектом в условиях полной неопределенности, когда ОУ представляет собой «черный ящик».
Описание алгоритма
Алгоритм управления объектом представим в виде конечного автомата. Достоинством такого подхода является структурированность и предсказуемость поведения управляющей системы, что делает автоматное описание сложного поведения наглядным и ясным. Также алгоритмы, описанные в виде конечных автоматов, легко реализуемы на программируемых логических контролерах (ПЛК), на которых построена практически вся промышленная автоматика [3].
Рассмотрим класс конечных автоматов, называемых детерминированными автоматами Мили, которые определяются как совокупность шести компонентов [4]:
M = {A, Q, q0, B, d, l},
где А = {а1, а2, ..., аn} – входной алфавит (элементы алфавита называются входными сигналами); Q = {q0, q1, q2, ..., qm} – множество состояний автомата; q0 – начальное состояние автомата; B = {b1, b2, ..., bn} – выходной алфавит (множество выходных сигналов); d – отображение А×Q → Q (функция переходов); l – отображение А×Q → B (функция выходов), множества A, Q, B конечны.
Функции d и l определяют поведение автомата:

где t = 1, 2, 3, ...
Поступление входного сигнала, переход автомата из одного состояния в другое и выдача выходного сигнала происходит дискретно и мгновенно в моменты времени t. Детерминированность означает, что для каждой последовательности входных сигналов существует лишь одно состояние, в которое автомат может перейти из текущего состояния. Конечные автоматы могут быть заданы в виде таблиц, матриц или графов.
Для поставленной задачи построение автоматов вручную не представляется возможным. Одним из методов автоматической генерации автоматов является использование генетических алгоритмов (ГА). Применение ГА показывает хорошие результаты в построении автоматов для решения ряда задач [5-6]. В работе [5] описываются специальные операторы мутации, ускоряющие работу ГА, особью которого является автомат, представленный в виде графа переходов.
Еще одна проблема связана с тем, что автоматы могут обрабатывать только дискретные входные сигналы, тогда как ОУ может иметь непрерывную функцию состояния. В этом случае можно провести анализ сигналов от ОУ, с целью выделения областей их значений, которые соответствуют особым режимам функционирования объекта, и строить управление на основе уже конечного набора таких режимов. В работе [6] такой анализ предлагается представить как задачу классификации, а именно, разбить множество значений переменных состояния на области и на вход автомата подавать номер области, в котором лежит текущее значение переменной. Для автоматической классификации используется нейронная сеть, настраиваемая ГА совместно с автоматом. Мы воспользуемся аналогичным подходом.
Следующим важным этапом в построении автомата является определение множества управляющих выходных сигналов B, минимизирующих функционал качества W(M) при заданном «каркасе» (графе переходов) автомата. Т. к. вид зависимости W(M(B)) неизвестен, и в общем случае может иметь стохастическую природу (на ОУ могут действовать случайные возмущения), то для оценки множества B воспользуемся методами стохастической оптимизации.
В классе методов стохастической оптимизации в последнее время активно развиваются рандоминизированные алгоритмы [7]. Рассмотрим их применение к решению данной задачи. Как уже было сказано выше, на ОУ может влиять внутреннее или внешнее возмущение, при этом мы получаем от ОУ некоторый сигнал y, характеризующий его состояние. Определим модель наблюдений сигнала y:

где
– дифференцируемая по первому аргументу функция, {
} – последовательность точек измерения[1],
, {
} – неконтролируемая последовательность случайных величин,
, имеющих одинаковое неизвестное распределение
с конечным носителем, υn – аддитивная помеха. Требуется по наблюдениям y1, y2, ... построить последовательность оценок {
} неизвестного вектора θ*,
, минимизирующего функционал среднего риска:

Идея рандоминизированных методов основана на использовании пробных возмущений. Если через входные каналы системы можно включить в рассмотрение некоторое новое возмущение Δn с хорошо известными статистическими свойствами, то его можно использовать для «обогащения» информации о наблюдаемых сигналах. Возмущения Δn должны быть независимы от помех наблюдения. Также требуется, чтобы функция
являлась сильно выпуклой в точке минимума и выполнялся ряд других условий, указанных в [7]. При накладываемых ограничениях доказана состоятельность получаемых оценок {
} при почти произвольных помехах наблюдения.
Один из алгоритмов для построения последовательности точек измерения {
} и оценок {
} имеет вид:
| (1) |
где
– пробное одновременное возмущение – последовательность случайных векторов из Rr с функциями распределения Pn(∙),
вектор-функции (ядра) с компактным носителем, удовлетворяющие вместе с функциями распределения пробного возмущения
условиям:
| (2) |
|
{αn} и {βn} – последовательности положительных чисел, стремящихся к нулю,
– фиксированный начальный вектор.
Пусть вектора Δn одинаково распределены, их компоненты взаимно независимы и равны ±1 с вероятностью 1/2. Тогда условиям (2) удовлетворяют ядра Kn(Δn) = Δn [7]. В качестве последовательностей {αn} и {βn} можно взять:

где
– неотрицательные числа.
Таким образом, алгоритм получения новой особи популяции ГА состоит из двух шагов. На первом шаге производится модификация «каркаса» автомата с помощью специальных операторов [5] и модификация нейронной сети, отвечающей за преобразование вещественных переменных состояния ОУ в дискретное множество значений. На втором шаге производится расстановка управляющих сигналов путем выполнения нескольких итераций алгоритма (1).
Тестирование алгоритма
В качестве модельной задачи рассмотрим стабилизацию перевернутого маятника на подвижной тележке [8]. Эта задача является классической задачей теории управления. Из-за своих отличительных динамических особенностей она стала своеобразным тестом на эффективность для методов построения регуляторов. Причем существуют классы реальных объектов, имеющих схожую математическую модель (например, ракета при взлете [9] и др.), поэтому решение данной задачи является актуальным.
Рассмотрим перевернутый маятник, ось которого укреплена на тележке. Тележка приводится в движение силой F(t), являющейся управляющим воздействием системы. Цель функционирования системы состоит в стабилизации маятника в верхнем положении равновесия, т. е. когда угол отклонения маятника от вертикали θ и угловая скорость ω, а также скорость движения тележки υ равны нулю (рис. 1).
Рис. 1. Система «перевернутый маятник на тележке» |
Рассмотрим нелинейную математическую модель этой системы [10]:
(3)
(4)
(5)
где x – координата тележки, θ – угол отклонения маятника от вертикали, l – длина маятника, m – масса маятника, M – масса тележки, F – сила, действующая на тележку, µc – сила трения тележки, µp – сила трения шарнира маятника, g – ускорение свободного падения.
Особенность модели (3)-(5) состоит в том, что при малых углах отклонения маятника (|θ(t)| < 15°), она может быть представлена линейными дифференциальными уравнениями. Ограничим перемещение тележки 0 < x < L, причем в начальный момент времени она находится в точке L/2. Также установим ограничение на силу |F(t)| < Fmax и максимальное время tmax, за которое маятник должен быть стабилизирован.
Решению задачи стабилизации перевернутого маятника посвящено много исследований [8-12 и др.]. В работе [11] предложен регулятор, позволяющий стабилизировать маятник при углах отклонения в диапазоне ±60°. В статье [12] описан метод построения адаптивного алгоритма управления для линейной модели маятника с учетом влияния неизвестного возмущения. К недостаткам регуляторов, предложенных в [11, 12], можно отнести относительно большой объем вычислений, необходимых для генерации управления F(t), так как для этого требуется выполнение операций численного интегрирования или решения дифференциальных уравнений.
Рассмотрим применение автоматного подхода, описанного выше к построению регулятора для решения задачи стабилизации маятника. Управление осуществляется следующим образом: регулятор в моменты времени tn = Δt∙n считывает состояние объекта управления, характеризуемое значением угла отклонения (вещественная переменная) и направлением угловой скорости (логическая переменная). На основании этих данных он должен выдать значение силы воздействия на тележку F, лежащее в заданном диапазоне.
Максимальное отклонение маятника, которое регулятор может «отработать», зависит от максимально возможной силы воздействия на тележку Fmax и допустимого пробега тележки. Далее считаем, что угол отклонения не превышает 45°. Для оценки качества управления возьмем функцию вида:
| (6) |
Значения функции (6) характеризуют величину штрафа, приписываемого автомату в случаях:
1) маятник стабилизирован – штраф начисляется за длительность регулирования и большое отклонение тележки от начального положения;
2) маятник не стабилизирован – штраф начисляется за быстрое падение маятника.
Целью работы ГА является генерация автомата, минимизирующего функцию W.
Построение регулятора выполним при следующих параметрах объекта управления:
l = 0,5 м, m = 0,5 кг, M = 1 кг, Fmax = 10 Н, L = 2 м,
mс = 5∙10-4, mp = 2∙10-6, tmax = 10 c, Dt = 0,1 c;
начальные условия: θ0 = 0,2 рад.,
= -0,05 1/с, x0 = 1 м,
= 0 м/с;
условия стабилизации: |θ| < 10-3, |ω| < 10-2, |υ| < 10-2.
Управление, генерируемое полученным автоматом, и процессы, наблюдаемые в системе «маятник-тележка», показаны на рис. 2–6.

Рис. 2. Сила воздействия на тележку F

Рис. 3. Угол отклонения маятника θ

Рис. 4. Угловая скорость маятника ω

Рис. 5. Положение тележки x

Рис. 6. Скорость движения тележки υ
Найденный автомат имеет 16 состояний, число попыток моделирования работы системы «маятник-тележка» составило 821000. Существенным недостатком построенного регулятора является чувствительность к изменению параметров системы. При изменении начального угла отклонения на несколько градусов, маятник уже не будет стабилизирован этим автоматом.
Последовательность значений управления F(t) физически представляет собой моменты, развиваемые электрическим двигателем перемещения тележки. Зная F(t), нетрудно определить соответствующие законы управления напряжением на входе двигателя.
Заключение
В данной работе рассмотрен алгоритм построения управляющего автомата без использования математической модели ОУ. Применение автоматов позволяет быстро генерировать управляющий сигнал, что имеет важное значение в системах реального масштаба времени. Однако рассмотренный пример стабилизации перевернутого маятника на тележке показывает:
во-первых, для построения автомата требуется многократное повторение процесса моделирования ОУ, необходимое для оценки качества генерируемых ГА автоматов, что требует больших вычислительных затрат;
во-вторых, алгоритм управления, реализуемый автоматом, является чувствительным к изменению параметров ОУ.
Эти недостатки не позволяют применять описанный метод к построению регуляторов для управления сложными объектами с десятками переменных состояния и управляющих параметров.
Отметим, что работа в этом направлении только начата. В дальнейшем планируется модифицировать алгоритм с целью включения в него свойств адаптации к изменению параметров объекта управления.
Список литературы
1. , , Ушаков управление в условиях неопределенности: учебное пособие. С-Пб.: Изд-во СПбГУ ИТМО, 2011.
2. , , Романов интеллект и интеллектуальные системы управления. М.: Наука, 2006.
3. Зюбин информационно-управляющих систем на основе конечных автоматов: учебное пособие. Новосибирск: Изд-во НГУ, 2006.
4. Дискретная математика. Пермь: Изд-во ПГУ, 2008.
5. Лобанов генетических алгоритмов для генерации конечных автоматов: дис. на соиск. учен. ст. канд. тех. наук. СПбГУ ИТМО. 2008.
6. Царев применение генетического программирования, конечных автоматов и искусственных нейронных сетей для построения системы управления беспилотным летательным аппаратом // Научно-технический вестник СПбГУ ИТМО. Автоматное программирование. 2008. № 53. С. 42-60.
7. , Поляк алгоритмы оптимизации и оценивания при почти произвольных помехах. М.: Наука. 2003.
8. Колесников синергетического синтеза системы управления колебаниями «перевернутого маятника на подвижной тележке» // Известия ЮФУ. Технические науки. 2011. № 6. С. 110-117.
9. Современные системы управления. М.: Лаборатория Базовых Знаний. 2002.
10.Gomez F., Miikkulainen R. Incremental evolution of complex general behavior // Adaptive Behavior. 1997. №5. Р. 317–342.
11.Шпилевая стабилизации маятниковой установки с сигнальной настройкой // Технология и конструирование в электронной аппаратуре. НГУ. 2008. №2. С. 17-20.
12. Об управлении динамическими системами в условиях неопределенности // Соросовский образовательный журнал, 1996. № 6. С. 115-121.
[1] Обозначение последовательности элементов: (∙)n – для векторных величин, (∙)n – для скалярных величин.





