TuningGoal.LQG class

Пакет: 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 может также писаться как среднее значение в зависимости от времени:

J=limTE(1T0Tz(t)'QZz(t)dt).

После того, как вы создадите настраивающуюся цель, можно далее сконфигурировать ее установкой Properties объекта.

Конструкция

Req = TuningGoal.LQG(wname,zname,QW,QZ) создает требование LQG. wname и zname задайте сигналы, составляющие w (t) и z (t). Матрицы QW и QZ задайте шумовую ковариацию и вес эффективности. Эти матрицы должны быть симметричны неотрицательный определенный. Используйте скалярные значения для QW и QZ задавать множители единичной матрицы.

Входные параметры

wname

Шумовые входные параметры, w (t) в виде вектора символов или массива ячеек из символьных векторов, которые определяют сигналы, составляющие w (t) по наименованию, такие как 'w' или {'w','v'}. Сигналы, доступные, чтобы определять как шумовые входные параметры для настраивающейся цели, следующие.

  • Если вы используете настраивающуюся цель настроить Simulink® модель системы управления, затем wname может включать:

    • Любой вход модели

    • Любая точка ввода линеаризации в модели

    • Любой сигнал, идентифицированный как Controls, Measurements, Switches, или IOs сигнал в slTuner интерфейс сопоставлен с моделью Simulink

  • Если вы используете настраивающуюся цель настроить обобщенную модель в пространстве состояний (genss) из системы управления с помощью systune, затем wname может включать:

    • Любой вход модели системы управления

    • Любой канал AnalysisPoint блокируйтесь в модели системы управления

    Например, если вы настраиваете модель системы управления, T, затем wname может быть входное имя, содержавшееся в T.InputName. Кроме того, если T содержит AnalysisPoint блокируйтесь с местоположением под названием X, затем wname может включать X.

  • Если вы используете настраивающуюся цель настроить модели контроллеров, C0 для объекта G0, использование looptune, затем wname может включать:

    • Любой вход C0 или G0

    • Любой канал AnalysisPoint блокируйтесь в C0 или G0

Если wname канал AnalysisPoint блок обобщенной модели, шумовой вход для настраивающейся цели является подразумеваемым входом, сопоставленным с переключателем:

zname

Выходные параметры эффективности, z (t) в виде вектора символов или массива ячеек из символьных векторов, которые определяют сигналы, составляющие z (t) по наименованию, такие как 'y' или {'y','u'}. Сигналы, доступные, чтобы определять как эффективность выходные параметры для настраивающейся цели, следующие.

  • Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то zname может включать:

    • Любой выход модели

    • Любая выходная точка линеаризации в модели

    • Любой сигнал, идентифицированный как Controls, Measurements, Switches, или IOs сигнал в slTuner интерфейс сопоставлен с моделью Simulink

  • Если вы используете настраивающуюся цель настроить обобщенную модель в пространстве состояний (genss) из системы управления с помощью systune, затем zname может включать:

    • Любой выход модели системы управления

    • Любой канал AnalysisPoint блокируйтесь в модели системы управления

    Например, если вы настраиваете модель системы управления, T, затем zname может быть выходное имя, содержавшееся в T.OutputName. Кроме того, если T содержит AnalysisPoint блокируйтесь с каналом под названием X, затем zname может включать X.

  • Если вы используете настраивающуюся цель настроить модели контроллеров, C0 для объекта G0, использование looptune, затем zname может включать:

    • Любой вход C0 или G0

    • Любой канал AnalysisPoint блокируйтесь в C0 или G0

Если zname канал AnalysisPoint блок обобщенной модели, эффективность выходом для настраивающейся цели является подразумеваемый выход, сопоставленный с переключателем:

QW

Ковариация входного вектора белого шума 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 для QW значение при создании цели LQG.

Значение по умолчанию: I

QZ

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

Веса эффективности способствуют функции стоимости согласно:

J = E (z (t) ′ QZ z (t)).

Когда вы используете LQG настраивающаяся цель в качестве трудной цели, программное обеспечение пытается управлять функцией стоимости J <1. Когда вы используете его в качестве мягкой цели, функция стоимости, J минимизирован удовлетворяющий любым трудным целям, и его значение внесено функции главной цели. Поэтому выберите QZ значения, чтобы правильно масштабировать функцию стоимости так, чтобы управление им ниже 1 или минимизация его дали к эффективности, которой вы требуете.

Значение по умолчанию: I

Свойства

NoiseCovariance

Ковариационная матрица шума вводит w (t) в виде матрицы. Значение NoiseCovariance свойство установлено входным параметром WZ, когда вы создаете LQG настраивающаяся цель.

PerformanceWeight

Веса для эффективности сигнализируют о z (t) в виде матрицы. Значение PerformanceWeight свойство установлено входным параметром QZ, когда вы создаете LQG настраивающаяся цель.

Input

Шумовой входной сигнал называет в виде массива ячеек из символьных векторов. Имена входного сигнала задают входные параметры передаточной функции, которую ограничивает настраивающаяся цель. Начальное значение Input свойство установлено wname входной параметр, когда вы создаете настраивающуюся цель.

Output

Выходной сигнал эффективности называет в виде массива ячеек из символьных векторов. Имена выходного сигнала задают выходные параметры передаточной функции, которую ограничивает настраивающаяся цель. Начальное значение Output свойство установлено zname входной параметр, когда вы создаете настраивающуюся цель.

Models

Модели, к которым настраивающаяся цель применяется в виде вектора из индексов.

Используйте Models свойство при настройке массива моделей системы управления с systune, осуществлять настраивающуюся цель для подмножества моделей в массиве. Например, предположите, что вы хотите применить настраивающуюся цель, Req, к вторым, третьим, и четвертым моделям в массиве моделей передал systune. Чтобы ограничить осуществление настраивающейся цели, используйте следующую команду:

Req.Models = 2:4;

Когда Models = NaN, настраивающаяся цель применяется ко всем моделям.

Значение по умолчанию: NaN

Openings

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

Если вы используете настраивающуюся цель настроить модель Simulink системы управления, то Openings может включать любую линейную аналитическую точку, отмеченную в модель или любую линейную аналитическую точку в slTuner Интерфейс (Simulink Control Design) сопоставлен с моделью Simulink. Использование addPoint (Simulink Control Design), чтобы добавить аналитические точки и открытия цикла к slTuner интерфейс. Использование getPoints (Simulink Control Design), чтобы получить список аналитических точек, доступных в slTuner взаимодействуйте через интерфейс к своей модели.

Если вы используете настраивающуюся цель настроить обобщенное пространство состояний (genss) модель системы управления, затем Openings может включать любого AnalysisPoint местоположение в модели системы управления. Использование getPoints получить список аналитических точек, доступных в genss модель.

Например, если Openings = {'u1','u2'}, затем настраивающаяся цель оценена с циклами, открытыми в аналитических точках u1 и u2.

Значение по умолчанию: {}

Name

Имя настраивающейся цели в виде вектора символов.

Например, если Req настраивающаяся цель:

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 или минимизация его дали к эффективности, которой вы требуете.

Вопросы совместимости

развернуть все

Поведение изменяется в R2016a

Введенный в R2016a