Пакет: TuningGoal
Цель "линейного квадратичного гауссова" (LQG) по настройке системы управления
Используйте TuningGoal.LQG
, чтобы задать настраивающуюся цель, которая определяет количество производительности управления как стоимости LQG. Это применимо к любой управляющей структуре, не только классической структуре наблюдателя оптимального управления LQG. Можно использовать эту настраивающую цель для системы управления, настраивающейся с настраивающимися командами, такими как systune
или looptune
.
Стоимостью LQG дают:
J = E (z (t) ′ QZ z (t)).
z (t) является откликом системы к белому шумовому входному вектору w (t). Ковариацией w (t) дают:
E (w (t) w (t) ′) = QW.
Векторный w (t) обычно состоит из внешних входных параметров к системе, таких как шум, воздействия или команда. Векторный z (t) включает все системные переменные, которые характеризуют производительность, такую как управляющие сигналы, системные состояния и выходные параметры. E (x) обозначает ожидаемое значение стохастической переменной x.
Функция стоимости J может также писаться как среднее значение в зависимости от времени:
После того, как вы создадите настраивающуюся цель, можно далее сконфигурировать ее установкой Properties объекта.
создает требование LQG. Req
=
TuningGoal.LQG(wname
,zname
,QW
,QZ
)wname
и zname
задают сигналы, составляющие w (t) и z (t). Матрицы QW
и QZ
задают шумовую ковариацию и вес производительности. Эти матрицы должны быть симметричны неотрицательный определенный. Используйте скалярные значения для QW
и QZ
, чтобы задать множители единичной матрицы.
|
Шумовые входные параметры, w (t), заданный как вектор символов или массив ячеек из символьных векторов, которые определяют сигналы, составляющие w (t) по наименованию, такие как
Если |
|
Выходные параметры производительности, z (t), заданный как вектор символов или массив ячеек из символьных векторов, которые определяют сигналы, составляющие z (t) по наименованию, такие как
Если |
|
Ковариация белого шумового входного вектора w (t), заданный как скаляр или матрица. Используйте скалярное значение, чтобы задать кратное единичной матрице. В противном случае задайте симметричную неотрицательную определенную матрицу со столькими же строк, сколько существуют записи в векторном w (t). Диагональная матрица означает, что записи w (t) являются некоррелироваными. Ковариация w (t дают: E (w (t) w (t) ′) = QW. Когда вы настраиваете систему управления в дискретное время, LQG, настраивающаяся цель принимает: E (w [k] w [k] ′) = QW/Ts. Ts является образцовым шагом расчета. Это предположение гарантирует сопоставимые результаты настраиванием непрерывно-разовой области. В этом предположении w [k] является шумом дискретного времени, полученным путем выборки непрерывного белого шумового w (t) с ковариацией QW. Если в вашей системе w [k] является действительно дискретным процессом с известной ковариацией QWd, используйте значение Ts*QWd для значения Значение по умолчанию: I |
|
Веса производительности, заданные как скаляр или матрица. Используйте скалярное значение, чтобы задать кратное единичной матрице. В противном случае задайте симметричную неотрицательную определенную матрицу. Используйте диагональную матрицу, чтобы независимо масштабировать или оштрафовать вклад каждой переменной в z. Веса производительности способствуют функции стоимости согласно: J = E (z (t) ′ QZ z (t)). Когда вы используете LQG настраивающаяся цель в качестве трудной цели, программное обеспечение пытается управлять функцией стоимости J <1. Когда вы используете его в качестве мягкой цели, функция стоимости, J минимизирован подвергающийся любым трудным целям, и его значение внесено функции главной цели. Поэтому выберите значения Значение по умолчанию: I |
|
Ковариационная матрица шума вводит w (t), заданный как матрица. Значение свойства |
|
Веса для производительности сигнализируют о z (t), заданный как матрица. Значение свойства |
|
Шумовые имена входного сигнала, заданные как массив ячеек из символьных векторов. Имена входного сигнала задают входные параметры передаточной функции, которую ограничивает настраивающаяся цель. Начальное значение свойства |
|
Имена выходного сигнала производительности, заданные как массив ячеек из символьных векторов. Имена выходного сигнала задают выходные параметры передаточной функции, которую ограничивает настраивающаяся цель. Начальное значение свойства |
|
Модели, к которым настраивающаяся цель применяется, заданный как вектор индексов. Используйте свойство Req.Models = 2:4; Когда Значение по умолчанию: |
|
Обратная связь, чтобы открыться при оценке настраивающейся цели, заданной как массив ячеек из символьных векторов, которые идентифицируют открывающие цикл местоположения. Настраивающаяся цель оценена против настройки разомкнутого цикла, созданной вводной обратной связью в местоположениях, которые вы идентифицируете. Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то Если вы используете настраивающуюся цель настроить обобщенную модель ( Например, если Значение по умолчанию: |
|
Имя настраивающейся цели, заданной как вектор символов. Например, если Req.Name = 'LoopReq'; Значение по умолчанию: |
Когда вы используете эту настраивающую цель настроить непрерывно-разовую систему управления, systune
пытается осуществить нулевое сквозное соединение (D = 0) на передаче, которую ограничивает настраивающаяся цель. Нулевое сквозное соединение наложено, потому что H 2 нормы, и поэтому значение настраивающейся цели, бесконечен для непрерывно-разовых систем с ненулевым сквозным соединением.
systune
осуществляет нулевое сквозное соединение путем фиксации, чтобы обнулить все настраиваемые параметры, которые способствуют проходному термину. systune
возвращает ошибку, когда фиксация этих настраиваемых параметров недостаточна, чтобы осуществить нулевое сквозное соединение. В таких случаях необходимо изменить настраивающуюся цель или управляющую структуру, или вручную зафиксировать некоторые настраиваемые параметры системы к значениям, которые устраняют проходной термин.
Когда ограниченная передаточная функция имеет несколько настраиваемых блоков последовательно, подход программного обеспечения обнуления всех параметров, которые способствуют полной проходной силе быть консервативными. В этом случае достаточно обнулить проходной термин одного из блоков. Если вы хотите управлять, который блок имеет сквозное соединение, зафиксированное, чтобы обнулить, можно вручную зафиксировать сквозное соединение настроенного блока по вашему выбору.
Чтобы зафиксировать параметры настраиваемых блоков к заданным значениям, используйте свойства Value
и Free
параметризации блока. Например, рассмотрите настроенный блок пространства состояний:
C = tunableSS('C',1,2,3);
Чтобы осуществить нулевое сквозное соединение на этом блоке, обнулите его матричное значение D и зафиксируйте параметр.
C.D.Value = 0; C.D.Free = false;
Для получения дополнительной информации о фиксации значений параметров смотрите страницы с описанием Блока Системы управления, такие как tunableSS
.
Эта настраивающая цель налагает неявное ограничение устойчивости на передаточную функцию с обратной связью от wname
до zname
, оцененного с циклами, открытыми в точках, идентифицированных в Openings
. Движущими силами, затронутыми этим неявным ограничением, является stabilized dynamics для этой настраивающей цели. MinDecay
и опции MaxRadius
systuneOptions
управляют границами на этих неявно ограниченных движущих силах. Если оптимизации не удается соответствовать границам по умолчанию, или если конфликт границ по умолчанию с другими требованиями, используйте systuneOptions
, чтобы изменить эти значения по умолчанию.
Когда вы настраиваете систему управления с помощью TuningGoal
, программное обеспечение преобразовывает настраивающуюся цель в нормированное скалярное значение f (x). x является вектором свободных (настраиваемых) параметров в системе управления. Программное обеспечение затем настраивает значения параметров, чтобы минимизировать f (x) или управлять f (x) ниже 1, если настраивающейся целью является трудное ограничение.
Для TuningGoal.LQG
f (x) дан функцией стоимости J:
J = E (z (t) ′ QZ z (t)).
Когда вы используете требование LQG в качестве трудной цели, программное обеспечение пытается управлять функцией стоимости J <1. Когда вы используете его в качестве мягкой цели, функция стоимости, J минимизирован подвергающийся любым трудным целям, и его значение внесено функции главной цели. Поэтому выберите значения QZ
, чтобы правильно масштабировать функцию стоимости так, чтобы управление ею ниже 1 или минимизация ее привели к производительности, которой вы требуете.
TuningGoal.Variance
| TuningGoal.WeightedVariance
| evalGoal
| slTuner
| systune
| systune (for slTuner)
| viewGoal