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=lim TE(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. Используйте addPoint добавить аналитические точки и открытия цикла к slTuner интерфейс. Используйте getPoints получить список аналитических точек, доступных в 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