Набор опций для procest
opt = procestOptions
opt = procestOptions(Name,Value)
создает набор опций по умолчанию для opt
= procestOptionsprocest
.
создает набор опций с параметрами, заданными одним или несколькими opt
= procestOptions(Name,Value
)Name,Value
аргументы в виде пар.
Задайте необязательные разделенные разделенными запятой парами Name,Value
аргументы. Name
- имя аргумента и Value
- соответствующее значение. Name
должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN
.
'InitialCondition'
- Обработка начальных условий'auto'
(по умолчанию) | 'zero'
| 'estimate'
| 'backcast'
Обработка начальных условий во время оценки, заданная как одно из следующих значений:
'zero'
- Начальное условие устанавливается в нуль.
'estimate'
- Начальное условие рассматривается как параметр независимой оценки.
'backcast'
- Начальное условие оценивается с использованием наилучшей аппроксимации методом наименьших квадратов.
'auto'
- программное обеспечение выбирает метод для обработки начального условия на основе данных оценки.
'DisturbanceModel'
- Обращение с аддитивным шумом'estimate'
(по умолчанию) | 'none'
| 'ARMA1'
| 'ARMA2'
| 'fixed'
Обращение с аддитивным шумом (H) во время оценки для модели
e - белый шум, u - вход, а y - выход.
H(s) хранится в NoiseTF
свойство числителя и знаменателя idproc
модели.
DisturbanceModel
задается как одно из следующих значений:
'none'
- H фиксируется к единице.
'estimate'
- H рассматривается как параметр оценки. Программное обеспечение использует значение NoiseTF
свойство как начальное предположение.
'ARMA1'
- Программное обеспечение оценивает H как модель ARMA первого порядка
'ARMA2'
- Программное обеспечение оценивает H как модель ARMA второго порядка
'fixed'
- Программное обеспечение фиксирует значение NoiseTF
свойство idproc
модель как значение H.
Примечание
Шумовая модель не может быть оценена с помощью данных частотного диапазона.
'Focus'
- Ошибка, которая будет минимизирована'prediction'
(по умолчанию) | 'simulation'
Ошибка, которая будет минимизирована в функции потерь во время оценки, заданная как разделенная разделенными запятой парами, состоящая из 'Focus'
и одно из следующих значений:
'prediction'
- Ошибка предсказания на один шаг вперед между измеренным и предсказанным выходами минимизируется во время оценки. В результате оценка фокусируется на создании хорошей модели предиктора.
'simulation'
- Ошибка симуляции между измеренным и моделируемым выходами минимизируется во время оценки. В результате оценка фокусируется на том, чтобы сделать хорошую подгонку для симуляции отклика модели с текущими входами.
The Focus
опция может быть интерпретирована как фильтр взвешивания в функции потерь. Для получения дополнительной информации см. «Функция потерь» и «Метрики качества модели».
'WeightingFilter'
- Взвешивающий предфильтр[]
(по умолчанию) | вектор | матрица | массив ячеек | линейная системаПредварительный фильтр взвешивания, примененный к функции потерь, которая будет минимизирована во время оценки. Чтобы понять эффект WeightingFilter
о функции потерь см. «Функция потерь» и «Метрики качества модели».
Задайте WeightingFilter
как одно из следующих значений:
[]
- Утяжеляющий предварительный фильтр не используется.
Полосы пропускания - Задайте вектор-строку или матрицу, содержащую значения частоты, которые определяют желаемые полосы пропускания. Вы выбираете полосу частот, где оптимизировано соответствие между оценочной моделью и данными оценки. Для примера, [wl,wh]
где wl
и wh
представляют собой нижний и верхний пределы полосы пропускания. Для матрицы с несколькими строками, определяющими полосы пропускания частоты, [w1l,w1h;w2l,w2h;w3l,w3h;...]
алгоритм оценки использует объединение частотных областей значений, чтобы задать полосу пропускания оценки.
Полосы пропускания выражены в rad/TimeUnit
для данных во временной области и в FrequencyUnit
для данных частотного диапазона, где TimeUnit
и FrequencyUnit
являются временными и частотными модулями данных оценки.
SISO-фильтр - Задает линейный фильтр с одним входом и одним выходом (SISO) одним из следующих способов:
Модель SISO LTI
{A,B,C,D}
формат, который задает матрицы пространства состояний фильтра с тем же шагом расчета, что и данные оценки.
{numerator,denominator}
формат, который задает числитель и знаменатель фильтра как передаточную функцию с тем же шагом расчета, что и данные оценки.
Эта опция вычисляет функцию взвешивания как продукт фильтра и входа спектра, чтобы оценить передаточную функцию.
Вектор взвешивания - применим только для данных частотного диапазона. Задайте вектор-столбец весов. Этот вектор должен иметь ту же длину, что и вектор частоты набора данных, Data.Frequency
. Каждый входной и выходной отклик в данных умножается на соответствующий вес на этой частоте.
'EstimateCovariance'
- Контролировать, генерировать ли параметрические ковариационные данныеtrue
(по умолчанию) | false
Управляет, генерируются ли ковариационные данные параметра, задается как true
или false
.
Если EstimateCovariance
является true
, затем используйте getcov
чтобы извлечь ковариационную матрицу из предполагаемой модели.
'Display'
- Укажите, отображать ли прогресс оценки'off'
(по умолчанию) | 'on'
Укажите, отображать ли прогресс оценки, заданный как одно из следующих значений:
'on'
- Информация о структуре модели и результатах оценки отображаются в окне progress-viewer.
'off'
- Информация о прогрессе или результатах не отображается.
'InputOffset'
- Удаление смещения от входных данных во временной области 'auto'
(по умолчанию) | 'estimate'
| вектор | матрица | объект | []
Удаление смещения от входных данных во временной области во время оценки, заданное как одно из следующих значений:
'estimate'
- Программа рассматривает входные смещения как параметр оценки.
'auto'
- Программное обеспечение выбирает метод для обработки входных смещений на основе данных оценки и структуры модели. Оценка либо принимает нулевой вход сигнала, либо оценивает входное смещение.
Для примера программное обеспечение оценивает смещение входа для модели, которая содержит интегратора.
Вектор-столбец длины Nu, где Nu - количество входов.
Использование []
чтобы не задавать смещения.
В случае мультиэкспериментальных данных задайте InputOffset
как матрица Nu -by Ne. Nu - количество входов, а Ne - количество экспериментов.
Каждая запись, заданная InputOffset
вычитается из соответствующих входных данных.
Объект параметра, созданный с использованием param.Continuous
, что накладывает ограничения на то, как программное обеспечение оценивает смещение входа.
Для примера создайте объект параметра для оценки модели с 2 входами. Задайте первое входное смещение как фиксированное к нулю, а второе входное смещение как параметр оценки.
opt = procestOptions; u0 = param.Continuous('u0',[0;NaN]); u0.Free(1) = false; opt.Inputoffset = u0;
'OutputOffset'
- Удаление смещения от выходных данных во временной области во время оценки[]
(по умолчанию) | вектор | матрицаУдаление смещения из выходных данных временной области во время оценки, заданное как разделенная разделенными запятой парами, состоящая из 'OutputOffset'
и одно из следующих:
Вектор-столбец длины Ny, где Ny количество выходов.
[]
- Отсутствие смещения.
Ny -by- Ne матрица - Для данных нескольких экспериментов задайте OutputOffset
как матрица Ny -by Ne. Ny - количество выходов, а Ne - количество экспериментов.
Каждая запись, заданная OutputOffset
вычитается из соответствующих выходных данных.
'OutputWeight'
- Взвешивание ошибок предсказания в многозначных оценках[]
(по умолчанию) | 'noise'
| положительную полуопределенную симметричную матрицуВзвешивание ошибок предсказания в многозначных оценках, заданное как одно из следующих значений:
'noise'
- Минимизировать , где E представляет ошибку предсказания и N
количество выборок данных. Этот выбор оптимален в статистическом смысле и приводит к максимальным оценкам правдоподобия, если ничего не известно о отклонении шума. В качестве функции взвешивания используется обратная оценка отклонения шума.
Примечание
OutputWeight
не должен быть 'noise'
если SearchMethod
является 'lsqnonlin'
.
Положительная полуопределённая симметричная матрица (W
) - Минимизируйте трассировку взвешенной матрицы ошибок предсказания trace(E'*E*W/N)
где:
E - матрица ошибок предсказания с одним столбцом для каждого вывода, а W - положительная полуопределенная симметричная матрица размера, равная количеству выходов. Используйте W, чтобы определить относительную важность выходов в нескольких-выходных моделях или надежность соответствующих данных.
N
количество выборок данных.
[]
- Программное обеспечение выбирает между 'noise'
или использование матрицы тождеств для W
.
Эта опция актуальна только для мультивыходов.
'Regularization'
- Опции для регулярной оценки параметров моделиОпции для регулярной оценки параметров модели. Для получения дополнительной информации о регуляризации см. «Регуляризованные оценки параметров модели».
Regularization
- структура со следующими полями:
Lambda
- Константа, которая определяет смещение от компромисса отклонений.
Задайте положительную скалярную величину, чтобы добавить срок регуляризации к оценочной стоимости.
Это значение , равное нулю не подразумевает никакой регуляризации.
По умолчанию: 0
R
- Матрица взвешивания.
Задайте вектор неотрицательных чисел или квадратную положительную полуопределенную матрицу. Длина должна быть равна количеству свободных параметров модели.
Для моделей черного ящика рекомендуется использовать значение по умолчанию. Для структурированных и серых ящиков можно также задать вектор np
положительные числа, такие что каждая запись обозначает доверие в значении связанного параметра.
Значение по умолчанию 1 подразумевает значение eye(npfree)
, где npfree
количество свободных параметров.
По умолчанию: 1
Nominal
- номинальное значение, к которому свободные параметры тянутся во время оценки.
Из значения , равного нулю следует, что значения параметров тянутся к нулю. Если вы уточняете модель, можно задать значение 'model'
чтобы потянуть параметры к значениям параметров начальной модели. Начальные значения параметров должны быть конечными, чтобы эта настройка работала.
По умолчанию: 0
'SearchMethod'
- Численный метод поиска, используемый для итерационной оценки параметра'auto'
(по умолчанию) | 'gn'
| 'gna'
| 'lm'
| 'grad'
| 'lsqnonlin'
| 'fmincon'
Численный метод поиска, используемый для итерационной оценки параметра, заданный как разделенная разделенными запятой парами, состоящая из 'SearchMethod'
и одно из следующих:
'auto'
- комбинация алгоритмов поиска по линии, 'gn'
, 'lm'
, 'gna'
, и 'grad'
методы пробуются последовательно при каждой итерации. Используется первое направление спуска, ведущее к снижению стоимости оценки.
'gn'
- Подпространство Гаусса-Ньютона поиск наименьших квадратов. Сингулярные значения якобиевой матрицы менее GnPinvConstant*eps*max(size(J))*norm(J)
отбрасываются при вычислении направления поиска. J - якобианская матрица. Матрица Гессия аппроксимируется как JTJ. Если улучшения в этом направлении нет, функция пробует градиентное направление.
'gna'
- Адаптивный подпространство Gauss-Newton search. Собственные значения меньше gamma*max(sv)
Гессиан игнорируются, где sv содержат сингулярные значения Гессиана. Направление Гаусса-Ньютона вычисляется в оставшемся подпространстве. gamma имеет начальное значение InitialGnaTolerance
(см. Advanced
в 'SearchOptions'
для получения дополнительной информации. Это значение увеличивается на множитель LMStep
каждый раз, когда поиск не находит меньшее значение критерия менее чем за пять бисекций. Это значение уменьшается на множитель 2*LMStep
каждый раз, когда поиск успешен без каких-либо бисекций.
'lm'
- поиск Левенберга-Марквардта методом наименьших квадратов, где следующее значение параметров -pinv(H+d*I)*grad
от предыдущего. H - Гессиан, I - тождества матрица, а grad - градиент. d - это число, которое увеличивается до тех пор, пока не будет найдено более низкое значение критерия.
'grad'
- Наискорейший спуск поиска методом наименьших квадратов.
'lsqnonlin'
- Алгоритм, отражающий доверительную область lsqnonlin
(Optimization Toolbox). Требуется программное обеспечение Optimization Toolbox™.
'fmincon'
- Нелинейные решатели с ограничениями. Можно использовать последовательные квадратичные алгоритмы программирования (SQP) и отражения доверительной области fmincon
(Optimization Toolbox) решатель. Если у вас есть программное обеспечение Optimization Toolbox, можно также использовать алгоритмы interior-point и active-set fmincon
решатель. Задайте алгоритм в SearchOptions.Algorithm
опция. The fmincon
алгоритмы могут привести к улучшению результатов оценки в следующих сценариях:
Ограниченные задачи минимизации, когда существуют ограничения, накладываемые на параметры модели.
Моделируйте структуры, где функция потерь является нелинейной или не сглаженной функцией параметров.
Оценка модели с мультивыходами. Функция определяющих минимизируется по умолчанию для оценки мультивыхода. fmincon
алгоритмы способны минимизировать такие функции потерь непосредственно. Другие методы поиска, такие как 'lm'
и 'gn'
минимизировать функцию определяющих путем поочередной оценки отклонения шума и уменьшения значения потерь для заданного значения отклонения шума. Следовательно, fmincon
алгоритмы могут предложить лучшую эффективность и точность для оценок мультивыхода.
'SearchOptions'
- Набор опций для алгоритма поискаНабор опций для алгоритма поиска, заданный как разделенная разделенными запятой парами, состоящая из 'SearchOptions'
и набор опций поиска с полями, которые зависят от значения SearchMethod
.
SearchOptions
Структура при SearchMethod
Задается как 'gn'
, 'gna'
, 'lm'
, 'grad'
, или 'auto'
Имя поля | Описание | Дефолт | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Tolerance | Минимальный процент различия между текущим значением функции потерь и ее ожидаемым улучшением после следующей итерации, заданным как положительная скалярная величина. Когда процент ожидаемого улучшения меньше | 0.01 | ||||||||||||||||||||||||||||||
MaxIterations | Максимальное количество итераций во время минимизации функции потерь, заданное как положительное целое число. Итерации останавливаются, когда Настройка Использование | 20 | ||||||||||||||||||||||||||||||
Advanced | Дополнительные параметры поиска, заданные как структура со следующими полями:
|
SearchOptions
Структура при SearchMethod
Задается как 'lsqnonlin'
Имя поля | Описание | Дефолт |
---|---|---|
FunctionTolerance | Допуск на разрыв функции потерь, которую программное обеспечение минимизирует, чтобы определить оцененные значения параметров, заданные как положительная скалярная величина. Значение | 1e-5 |
StepTolerance | Допуск на разрыв для предполагаемых значений параметров, заданный как положительная скалярная величина. Значение | 1e-6 |
MaxIterations | Максимальное количество итераций во время минимизации функции потерь, заданное как положительное целое число. Итерации останавливаются, когда Значение | 20 |
Advanced | Расширенные настройки поиска, заданные как набор опций для Для получения дополнительной информации смотрите таблицу Опции Оптимизации в Опциях Оптимизации (Optimization Toolbox). | Использование optimset('lsqnonlin') чтобы создать набор опций по умолчанию. |
SearchOptions
Структура при SearchMethod
Задается как 'fmincon'
Имя поля | Описание | Дефолт |
---|---|---|
Algorithm |
Для получения дополнительной информации об алгоритмах смотрите Ограниченные алгоритмы нелинейной оптимизации (Optimization Toolbox) и Выбор алгоритма (Optimization Toolbox). | 'sqp' |
FunctionTolerance | Допуск на разрыв функции потерь, которую программное обеспечение минимизирует, чтобы определить оцененные значения параметров, заданные как положительная скалярная величина. | 1e-6 |
StepTolerance | Допуск на разрыв для предполагаемых значений параметров, заданный как положительная скалярная величина. | 1e-6 |
MaxIterations | Максимальное количество итераций во время минимизации функции потерь, заданное как положительное целое число. Итерации останавливаются, когда | 100 |
'Advanced'
- Дополнительные расширенные опцииAdvanced
- структура со следующими полями:
ErrorThreshold
- Задает, когда настроить вес больших ошибок от квадратичного до линейного.
Ошибки больше ErrorThreshold
умножение предполагаемого стандартного отклонения на линейный вес в функции потерь. Стандартное отклонение оценивается робастно как медиана абсолютных отклонений от медианы ошибок предсказания, деленная на 0.7
. Для получения дополнительной информации о выборе устойчивых норм смотрите раздел 15.2 [1].
ErrorThreshold = 0
отключает робустификацию и приводит к чисто квадратичной функции потерь. При оценке данными частотному диапазону программное обеспечение устанавливает ErrorThreshold
в нуль. Для данных временной области, которые содержат выбросы, попробуйте задать ErrorThreshold
на 1.6
.
По умолчанию: 0
MaxSize
- Задает максимальное количество элементов в сегменте, когда входно-выходные данные разделены на сегменты.
MaxSize
должно быть положительным целым числом.
По умолчанию: 250000
StabilityThreshold
- Задает пороги для тестов устойчивости.
StabilityThreshold
- структура со следующими полями:
s
- Определяет местоположение крайнего правого полюса для проверки устойчивости моделей в непрерывном времени. Модель считается стабильной, когда ее самый правый полюс находится слева от s
.
По умолчанию: 0
z
- Задает максимальное расстояние между всеми полюсами от источника до устойчивости тестирования моделей в дискретном времени. Модель считается стабильной, если все полюсы находятся в пределах расстояния z
от источника.
По умолчанию: 1+sqrt(eps)
AutoInitThreshold
- Определяет, когда автоматически оценить начальное условие.
Начальное условие оценивается когда
ymeas - измеренный выход.
yp,z - предсказанный выход модели, оцененный с использованием нулевых начальных состояний.
yp,e - предсказанный выход модели, оцененный с использованием предполагаемых начальных состояний.
Применяется при InitialCondition
является 'auto'
.
По умолчанию: 1.05
opt
- Набор опций для procest
procestOptions
набор опцийНабор опций для procest
, возвращается как procestOptions
набор опций.
opt = procestOptions;
Создайте набор опций для procest
установка Focus
на 'simulation'
и включение Display
.
opt = procestOptions('Focus','simulation','Display','on');
Кроме того, используйте запись через точку, чтобы задать значения opt
.
opt = procestOptions; opt.Focus = 'simulation'; opt.Display = 'on';
В имена году были изменены опции анализа некоторых оценок и R2018a. Прежние имена все еще работают. Для получения дополнительной информации смотрите R2018a релиза примечание Переименование оценки и Опции анализа.
[1] Ljung, L. System Identification: Теория для пользователя. Upper Saddle River, NJ: Prentice-Hall PTR, 1999.
[2] Уиллс, Эдриан, Б. Найнесс и С. Гибсон. «On Gradient-Based Search for Multivariable System Estimes (неопр.) (недоступная ссылка)». Материалы 16-го Всемирного конгресса ИФАК, Прага, Чешская Республика, 3-8 июля 2005 года. Оксфорд, Великобритания: Elsevier Ltd., 2005.
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.