predictOptions

Набор опций для predict

Описание

пример

opt = predictOptions создает набор опций по умолчанию для predict. Используйте запись через точку, чтобы изменить этот набор опций. Все опции, которые вы не изменяете, сохраняют значения по умолчанию.

пример

opt = predictOptions(Name,Value) создает набор опций с опциями, заданными одним или несколькими Name,Value аргументы в виде пар.

Примеры

свернуть все

Создайте набор опций по умолчанию для предсказания модели.

opt = predictOptions;

Задайте выходные смещения для модели с двумя выходами как 2 и 5, соответственно.

opt.OutputOffset = [2;5];

Программа вычитает значение смещения OutputOffset(i) из i-го выходного сигнала перед использованием выхода для предсказания отклика модели. Затем программное обеспечение добавляет эти смещения к предсказанному ответу, чтобы дать окончательный ответ.

Создайте набор опций для predict использование нулевых начальных условий.

opt = predictOptions('InitialCondition','z');

Загрузите набор данных с двумя входами и одним выходом.

load iddata7 z7

Идентифицируйте модель пространства состояний пятого порядка с помощью данных.

sys = n4sid(z7,5);

Разделите набор данных на две части.

zA = z7(1:15);
zB = z7(16:end);

Предположим, что вы хотите вычислить 10-ступенчатое предсказание отклика идентифицированной системы на данные zB. Для начальных условий используйте значения сигналов в zA как историческая запись. То есть входные и выходные значения для времени, непосредственно предшествующего данным в zB.

IO = struct('Input',zA.InputData,'Output',zA.OutputData);
opt = predictOptions('InitialCondition',IO);

Сгенерируйте 10-ступенчатое предсказание для zB данных использование заданных начальных условий.

[yp,x0,Predictor] = predict(sys,zB,10,opt);

yp - предсказанная реакция модели, x0 являются ли начальные состояния, соответствующие модели предиктора Predictor. Можно симулировать Predictor использование x0 как начальные условия для воспроизведения yp.OutputData.

Чтобы понять, как прошлые данные отображаются в начальные состояния модели, см. «Понимание использования исторических данных для предсказания модели».

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

свернуть все

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: predictOptions('InitialCondition','z') задает нулевые начальные условия для измеренных входно-выходных данных.

Обработка начальных условий, заданных как разделенная запятыми пара, состоящая из 'InitialCondition' и одно из следующих значений:

  • 'z' - Нулевые начальные условия.

  • 'e' - Оценить начальные условия так, чтобы ошибка предсказания для наблюдаемого выхода была сведена к минимуму.

    Для нелинейных серых серых ящиков только эти начальные состояния i которые обозначены как свободные в модели (sys.InitialStates(i).Fixed = false) оценены. Чтобы оценить все состояния модели, сначала задайте все Nx состояний idnlgrey модели sys как бесплатно.

    for i = 1:Nx
    sys.InitialStates(i).Fixed = false;
    end 

    Точно так же, чтобы исправить все начальные состояния к значениям, заданным в sys.InitialStatesсначала задайте все состояния как фиксированные в sys.InitialStates свойство нелинейной модели серого ящика.

  • 'd' - Подобно 'e', но поглощает ненулевые задержки в коэффициенты модели. Задержки сначала преобразуются в явные состояния модели, и начальные значения этих состояний также оцениваются и возвращаются.

    Используйте эту опцию только для линейных моделей.

  • Вектор или Матрица - Начальное предположение для значений состояния, заданных как числовой вектор-столбец длины, равная количеству состояний. Для данных нескольких экспериментов задайте матрицу с Ne столбцами, где Ne количество экспериментов. В противном случае используйте вектор-столбец, чтобы задать одинаковые начальные условия для всех экспериментов. Используйте эту опцию для пространства состояний (idss и idgrey) и нелинейные модели (idnlarx, idnlhw, и idnlgrey) только.

  • initialCondition объект - initialCondition объект, который представляет модель свободной реакции системы на начальные условия. Для мультиэксперентных данных задайте 1-байт- Ne массив объектов, где Ne количество экспериментов.

    Используйте эту опцию только для линейных моделей.

  • Структура со следующими полями, которые содержат исторические входные и выходные значения для временного интервала непосредственно перед временем запуска данных, используемых в предсказании:

    ОбластьОписание
    InputИстория входов, заданная как матрица с Nu столбцами, где Nu - количество входных каналов. Для моделей временных рядов используйте []. Количество строк должно быть больше или равно порядку модели.
    OutputВыход, заданная как матрица с Ny столбцами, где Ny - количество выходных каналов. Количество строк должно быть больше или равно порядку модели.

    Для получения примера смотрите Использование исторических данных для определения начальных условий для предсказания модели.

    Для данных нескольких экспериментов сконфигурируйте начальные условия отдельно для каждого эксперимента, задав InitialCondition как массив структур с Ne элементами. Чтобы задать одинаковые начальные условия для всех экспериментов, используйте одну структуру.

    Программное обеспечение использует data2state для сопоставления исторических данных с состояниями. Если ваша модель не idss, idgrey, idnlgrey, или idnlarxпрограммное обеспечение сначала преобразует модель в представление пространства состояний, а затем преобразует данные в состояния. Если преобразование вашей модели в idss невозможно, предполагаемые состояния возвращаются пустыми.

  • x0obj - Объект спецификации, созданный с помощью idpar. Используйте этот объект для дискретного пространства состояний (idss и idgrey) и нелинейный серый ящик (idnlgrey) только модели. Использование x0obj наложение ограничений на начальные состояния путем фиксации их значения или определения минимальных или максимальных границ.

Смещение входного сигнала для данных временной области, заданное как разделенная разделенными запятой парами, состоящая из 'InputOffset' и одно из следующих значений:

  • [] - Никаких входных смещений.

  • Вектор-столбец длины Nu, где Nu - количество входов. Программа вычитает значение смещения InputOffset(i) от i-го входного сигнала перед использованием входа для предсказания отклика модели.

  • Nu -by- Ne матрица - Для данных нескольких экспериментов задайте InputOffset как Nu -by - Ne матрица, где Ne - количество экспериментов. Программа вычитает значение смещения InputOffset(i,j) из i-го входного сигнала j-го эксперимента перед предсказанием.

    Если вы задаете вектор-столбец длины Nu, то значение смещения InputOffset(i) вычитается из i-го входного сигнала всех экспериментов.

Смещение выходного сигнала для данных временной области, заданное как разделенная разделенными запятой парами, состоящая из 'OutputOffset' и одно из следующих значений:

  • [] - Нет выходных смещений.

  • Вектор-столбец длины Ny, где Ny количество выходов. Программа вычитает значение смещения OutputOffset(i) от i-го выходного сигнала перед использованием выхода для предсказания отклика модели. После предсказания программное обеспечение добавляет смещения к предсказанному ответу, чтобы дать окончательный предсказанный ответ.

  • Ny -by- Ne матрица - Для данных нескольких экспериментов задайте OutputOffset как Ny -by - Ne матрица, где Ne - количество экспериментов. Программа вычитает значение смещения OutputOffset(i,j) из i-го выходного сигнала j-го эксперимента перед предсказанием.

    Если вы задаете вектор-столбец длины Ny, то значение смещения OutputOffset(i) вычитается из i-го выходного сигнала всех экспериментов.

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

Вес выхода для оценки начального условия, заданный как разделенная разделенными запятой парами, состоящая из 'OutputWeight' и одно из следующих значений:

  • [] - Утяжеление не используется программным обеспечением для оценки начальных условий. Эта опция аналогична использованию eye(Ny) для выходного веса, где Ny количество выходов.

  • 'noise' - Программное обеспечение использует обратную сторону NoiseVariance свойство модели как веса.

  • Положительная, полуопределенная матрица размерности Ny -by - Ny, где Ny - количество выходов.

OutputWeight релевантно только для мультивыходов.

Выходные аргументы

свернуть все

Набор опций для predict, перенастроенный как predictOptions набор опций.

См. также

| |

Введенный в R2012a