русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Оптимальные линейные дискретные регуляторы


Дата добавления: 2014-04-22; просмотров: 747; Нарушение авторских прав


Рассмотрим систему (7.1)

x(i + 1) = A(i) x(i) + B(i) u(i) (7.19)

и на её примере покажем наиболее простой способ определения оптимального в некотором смысле управления. Смысл оптимальности обычно определяется критерием или “закладывается” в него.

Будем управлять состояниями и введем критерий

x T(i+1) V1(i+1) x(i+1) + uT(i) V2(i) u(i) ® min (7.20)

В критерии - два слагаемых, являющихся квадратичными формами. Будем считать, что состоянием является отклонение соответствующих величин от заданных значений. Тогда первое слагаемое в (7.20) представляет собой квадратичную форму от этих отклонений. Матрица V1 задает приоритеты отклонениям состояний, ранжирует их по важности. Для наглядности предположим, что весовая матрица V1 диагональная. Тогда первое слагаемое в (20) в развернутом виде выглядит так:

x T(i+1) V1(i+1) x(i+1) = V1 kk (i+1)x2k (i+1)

и представляет сумму квадратов ошибок состояний.

Второе слагаемое в (7.20) по структуре полностью совпадает с первым, но представляет квадратичную форму от управлений и является нежестким ограничением на их величину.

Если мы будем варьировать значения матрицы V­1 ­по отношению к V2, то мы можем переносить ограничения с u на x.

Заметим, что в (7.20) не входит начальное состояние, которое задано, т.к. на него мы не можем воздействовать, и не входит управление в последний момент времени, т.к. оно влияет на состояния в момент времени после рассматриваемого.

Задача оптимального управления состоит в том, что нужно найти последовательность управляющих воздействий u(i0+1), u(i0+2)…, которая обеспечивает выполнение (7.20).

Можно было бы эту задачу попытаться решить “в лоб”, т.е. выписать выражения для всех х от х(i0) до конечного x(N). Из xR, u RN*r решений – размерность слишком велика. Целесообразным будет попытаться свести эту N*r – мерную задачу к N задачам r – й размерности.



Для устранения этой проблемы используется принцип оптимальности Беллмана.

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

Доказательство производится от противного. Рассмотрим на некотором интервале времени t1£ t £ t2 систему S с вектором управления u и вектором состояния x . Время может быть дискретное или непрерывное, концы могут быть свободными или закреплёнными. Пусть Q некоторый критерий качества, который оптимизируется на заданном интервале [t1, t2], например, минимизируется.

Допустим, что существует, по крайней мере, одно управление u(t), удовлетворяющее всем ограничениям и минимизирующее Q на [t1, t2], обозначим это оптимальное управление u0(t), а соответствующее ему значение критерия Q0.

Рассмотрим некоторый момент времени t’ Î[t1,t2] и предположим, что на интервале [t’,t2] существует управление u*(t), для которого значение критерия Q меньше, чем для u0(t) на этом же интервале и при том же начальном состоянии. Поэтому комбинированное управление

обеспечивает значение критерия Q**< Q0 на интервале [t1,t2]. Но по условию u0(t) является оптимальным управлением, которое не может быть улучшено. Следовательно, имеем противоречие, которое и доказывает теорему.

Принцип оптимальности позволяет сформулированную выше задачу определения вектора управлений размером N*r – мерную задачу разделить на N r-мерных задач. При использовании принципа оптимальности решение осуществляется в обратном порядке, т.е. сначала определяется управление u(N-1), переводящее систему в конечное состояние x(N) из состояния x(N-1). При этом в соответствии с принципом оптимальности принимается, что управление u(N-1) должно быть оптимально относительно состояния x(N-1). Так что последнее управление будет в соответствии с принципом оптимальности оптимальным. Затем определяется управление u(N-2) и т.д. до u (0).

Рассмотрим решение одношаговой задачи определения u(N-1).

Обозначим Q1=[xT(N)V1(N)x(N) + uT(N-1)V2(N-1)u(N-1)] (7.22)

В соответствии с (7.19) имеем

x(N) = A(N-1)x(N-1) + B(N-1)u(N-1)

Подставим этот результат в (7.22) и получим

Q1 = {[ A(N-1)x(N-1) + B(N-1)u(N-1)]T V1(N) [A(N-1)x(N-1) +

+ B(N-1)u(N-1)] + uT (N-1)V2(N-1)u(N-1)} =

={xT(N-1)AT(N-1)V1(N)A(N-1)x(N-1)+xT(N-1)AT(N-1)V1(N)B(N-1)u(N-1) + uT(N-1)BT(N-1)V1(N)A(N-1)x(N-1) + uT(N-1)[BT(N-1)V1(N)B(N-1) +

+ V2(N-1)]u(N-1)}.

Второе слагаемое в скобке равно транспонированному третьему, а т.к. они скаляры, то они равны, и можно записать

Q1 ={xTATV1Ax + 2xTATV1Bu + uT[BTV1B + V2]u} (7.23)

Чтобы найти минимум необходимо приравнять нулю градиент Q1 по управлению:

= 2xTATV1B + 2uT[BTV1B + V2] = 0.

Решая это уравнение относительно неизвестного управления, получим

u(N-1)=-{BT(N-1)V1 (N)B(N-1) + V2(N-1)}-1BT(N-1)V1(N)A(N-1)x(N-1) (7.24)

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

Обозначим матрицу обратной связи, определяющую регулятор S(N-1)

S(N-1)=-{BT(N-1)V1(N)B(N-1) + V2(N-1)}-1BT(N-1)V1(N)A(N-1) (7.25)

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

u(N-1) = S(N-1)x(N-1) (7.26)

Матрица S(N-1) называется матрицей обратной связи системы управления.

Далее можно подставить найденное управление в критерий и найти его значение. Затем решается двухшаговая задача. Положив

Q2={[xT(N-1)V1(N-1)x(N-1)+uT(N-2)V2(N-2)u(N-2)] +

+ [xT(N)V1(N)x(N) + uT(N-1)V2(N-1)u(N-1)]}, т.к. выбор u(N-1) не влияет на x(N-1) , а x(N) уже определено и минимальное значение критерия Q1 уже найдено, то для минимизации Q2 достаточно решить задачу

Q2 = {[xT(N-1)V1(N-1)x(N-1)+uT(N-2)V2(N-2)u(N-2)] +Q1} (7.27)

Из (7.27) видно, что для определения u(N-2) нужно решить такую же задачу, которая была рассмотрена для u(N-1), т.к. (7.27) ничем не отличается от (7.23).

Дальше процедура определения управлений на всех шагах до u(0) абсолютно одинакова.

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



<== предыдущая лекция | следующая лекция ==>
Устойчивость | Стохастические системы. Характеристики и определения


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.05 сек.