5.3.5. Решение задачи стабилизации перевернутого маятникаЗадача стабилизации перевернутого маятника - это проблема, хорошо известная в сфере автоматики. С учетом простоты интерпретации параметров и нелинейности задачи она часто используется в качестве объекта, на котором демонстрируется функционирование различных регуляторов. В настоящем разделе в качестве такого регулятора будем использовать описанный выше модуль нечеткого управления. На рис. 5.22 изображен объект регулирования, т.е. перевернутый маятник. Если принять, что в роли переменных состояния выступают угол маятника и угловая скорость , то уравнения динамики можно записать в виде [19] , где - гравитационное (земное) ускорение, - масса тележки, - масса маятника, - половина длины маятника, а - сила управляющего воздействия. Для моделирования примем , и . Задача заключается в стабилизации маятника в вертикальном положении, т.е. достижение и удержание состояния, в котором и . Рис. 5.22. Перевернутый маятник. Реализация системы нечеткого вывода. При наблюдении функционирования ПИД-регулятора, спроектированного для стабилизации маятника, получена обучающая выборка, состоящая из 90 пар данных. Для каждого входа модуля нечеткого управления заданы четыре функции принадлежности, структура которых представлена на рис. 5.23а и 5.23б. Рис. 5.23. Нечеткая система, полученная в результате применения алгоритма накопления знаний при обработке численных данных: а) функции принадлежности для угла отклонения маятника; б) функции принадлежности для угловой скорости; в) база нечетких правил; г) функции принадлежности для управляющего воздействия. Для выхода определены пять функций принадлежности (см. рис. 5.23а). С использованием алгоритма накопления знаний, описанного в разд. 3.10, в ходе обработки обучающей последовательности сформированы 16 нечетких правил, показанных в табличном виде на рис. 5.23в. Они стали исходной точкой для построения первого блока модуля нечеткого управления, реализующего нечеткий вывод (рис. 5.24). Рис. 5.24. Структура фрагмента модуля управления, реализующего нечеткий вывод. Реализация нейронной сети, выполняющей дефуззификацию. Главная проблема, возникающая при проектировании нейронных сетей, заключается в выборе их структуры, т.е. количества слоев и количества нейронов в каждом слое. Чаще всего количество нейронов в выходном слое предопределяется условиями решаемой задачи (в рассматриваемом случае он состоит из единственного нейрона). Для разрешения большинства проблем оказывается достаточной трехслойная сеть, поэтому остается определить количество нейронов в первых двух слоях. С одной стороны, сеть не должна быть слишком маленькой, так как в этом случае она может не справиться с поставленной задачей. С другой стороны, слишком усложненная структура приведет к излишнему увеличению длительности обучения. Завышение размерности сети имеет и другие негативные последствия, в частности, склонность к неоправданному обобщению знаний. После проведения многочисленных экспериментов принято решение создавать сеть со структурой 5+2+1 с сигмоидальной функцией активации. На ее выходе организованы два блока, которые масштабируют выходной сигнал для лучшей адаптации его к решаемой задаче. Полная структура сети, включающая систему вывода, представлена на рис. 5.25. Рис. 5.25. Структура модуля управления с нейронной сетью, выполняющей дефуззификацию. Обучение модуля управления проводится в два этапа: 1) обучение нейронной сети, выполняющей дефуззификацию, при фиксированных параметрах блока вывода (110 эпох); 2) обучение всего модуля нечеткого управления (22 эпохи). Для обучения применялась сформированная ранее обучающая выборка. Изменение погрешности на протяжении всего процесса обучения показано на рис. 5.26. Рис. 5.26. График изменения погрешности на этапе обучения. Тестирование модуля управления. Для проверки качества функционирования спроектированного модуля управления подготовлен и проведен ряд тестов. Их результаты подтвердили корректность проекта. Пример одного имитационного эксперимента представлен на рис. 5.27. Рис. 5.27. Результаты имитационного эксперимента по стабилизации перевернутого маятника при использовании предложенного модуля управления. Начальные условия: , .
|