Набор опций для findstates
создает набор опций по умолчанию для opt = findstatesOptionsfindstates. При необходимости используйте точечную нотацию для настройки набора опций.
создает набор опций с опциями, заданными одним или несколькими opt = findstatesOptions(Name,Value)Name,Value аргументы пары. Параметры, которые не указаны, сохраняют свое значение по умолчанию.
Создание набора опций для findstates путем настройки объекта спецификации для начальных состояний.
Определение модели пространства состояния четвертого порядка по данным.
load iddata8 z8; sys = ssest(z8,4);
z8 является iddata объект, содержащий данные ответа системы временной области. sys является четвертым порядком idss модель, которая идентифицируется из данных.
Настройте объект спецификации для начальных состояний модели.
x0obj = idpar([1;nan(3,1)]); x0obj.Free(1) = false; x0obj.Minimum(2) = 0; x0obj.Maximum(2) = 1;
x0obj определяет ограничения оценки для начальных условий. Значение первого состояния задается как 1, когда x0obj создается. x0obj.Free(1) = false задает первое начальное состояние в качестве фиксированного параметра оценки. Второе состояние неизвестно. Но, x0obj.Minimum(2) = 0 и x0obj.Maximum(2) = 1 укажите нижнюю и верхнюю границы второго состояния как 0 и 1соответственно.
Создание набора опций для findstates для определения начальных состояний модели.
opt = findstatesOptions; opt.InitialState = x0obj;
Определите начальные состояния модели.
x0_estimated = findstates(sys,z8,Inf,opt);
Создание набора опций для findstates где:
Начальные состояния оцениваются таким образом, что норма ошибки предсказания минимизируется. Также оцениваются начальные значения состояний, соответствующих ненулевым задержкам.
Для оценки используется адаптивный подпространственный поиск Гаусса-Ньютона.
opt = findstatesOptions('InitialState','d','SearchMethod','gna');
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
findstatesOptions('InitialState','d')'InitialState' - Оценка начальных состояний'e' (по умолчанию) | 'd' | вектор или матрица | idpar объект x0Obj Оценка начальных состояний, определяемых как разделенная запятыми пара, состоящая из 'InitialState' и одно из следующих:
'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', но поглощает ненулевые задержки в коэффициентах модели. Задержки сначала преобразуются в явные состояния модели, и начальные значения этих состояний также оцениваются и возвращаются.
Эта опция используется только для линейных моделей дискретного времени.
Vector or Matrix - начальное предположение для значений состояния при использовании нелинейных моделей. Укажите вектор столбца длиной, равной числу состояний. Для данных нескольких экспериментов используйте матрицу с Ne столбцы, где Ne - количество экспериментов.
Эта опция используется только для нелинейных моделей.
x0obj - объект спецификации, созданный с помощью idpar. Использовать x0obj наложение ограничений на начальные состояния путем фиксации их значения или указания минимальных или максимальных границ.
Использовать x0obj только для нелинейных серых моделей и линейных моделей состояния и пространства (idss или idgrey). Эта опция применима только для горизонта прогнозирования, равного 1 или Inf. Посмотрите findstates для получения более подробной информации о горизонте прогнозирования.
'InputOffset' - Удаление смещения из входных данных временной области при оценке[] (по умолчанию) | вектор положительных целых чисел | матрицаУдаление смещения из входных данных временной области во время оценки, указанной как разделенная запятыми пара, состоящая из 'InputOffset' и одно из следующих:
Вектор-столбец положительных целых чисел длины Nu, где Nu - количество входов.
[] - Указывает на отсутствие смещения.
Матрица Nu-by-Ne - для данных нескольких экспериментов укажите InputOffset в виде матрицы Nu-by-Ne. Nu - количество входов, а Ne - количество экспериментов.
Каждая запись, указанная InputOffset вычитается из соответствующих входных данных.
'OutputOffset' - Удаление смещения из выходных данных временной области при оценке[] (по умолчанию) | вектор | матрицаУдаление смещения из выходных данных временной области во время оценки, указанной как разделенная запятыми пара, состоящая из 'OutputOffset' и одно из следующих:
Вектор столбца длиной Ny, где Ny - количество выходов.
[] - Указывает на отсутствие смещения.
Матрица Ny-by-Ne - для данных нескольких экспериментов укажите OutputOffset в виде матрицы Ny-by-Ne. Ny - количество выходов, а Ne - количество экспериментов.
Каждая запись, указанная OutputOffset вычитается из соответствующих выходных данных.
'OutputWeight' - Взвешивание ошибок прогнозирования при использовании данных с несколькими выходами[] (по умолчанию) | 'noise' | матрицаВзвешивание ошибок прогнозирования при использовании данных с несколькими выходами, указанных как пара, разделенная запятыми, состоящая из 'OutputWeight' и одно из следующих:
[] - Взвешивание не используется. Указание как [] является таким же, как eye(Ny), где Ny - количество выходов.
'noise' - Для взвешивания при оценке начальных состояний используют обратную дисперсию шума, хранящуюся в модели.
Положительная полуопределённая матрица, W, размера Ny-by-Ny - это взвешивание минимизирует trace(E'*E*W) для оценки начальных состояний, где E - матрица ошибок прогнозирования.
'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' - адаптивный подпространственный поиск Гаусса-Ньютона. Собственные значения меньше gamma*max(sv) гессенцы игнорируются, где sv содержит сингулярные значения гессенца. Направление Гаусса - Ньютона вычисляется в оставшемся подпространстве. гамма имеет начальное значение InitialGnaTolerance (см. Advanced в 'SearchOptions' для получения дополнительной информации. Это значение увеличивается на коэффициент LMStep каждый раз при поиске не удается найти меньшее значение критерия менее чем за пять делений. Это значение уменьшается на коэффициент 2*LMStep каждый раз при успешном поиске без каких-либо делений.
'lm' - поиск наименьших квадратов Левенберга-Марквардта, где следующим значением параметра является -pinv(H+d*I)*grad из предыдущего. H - гессен, I - тождественная матрица, а grad - градиент. d - число, которое увеличивается до тех пор, пока не будет найдено меньшее значение критерия.
'grad' - Самый крутой спуск поиск наименьших квадратов.
'lsqnonlin' - Алгоритм отражения области доверия lsqnonlin(Панель инструментов оптимизации). Требуется программное обеспечение Optimization Toolbox™.
'fmincon' - Ограниченные нелинейные решатели. Можно использовать последовательное квадратичное программирование (SQP) и алгоритмы, отражающие область доверия fmincon(Панель инструментов оптимизации) решатель. При наличии программного обеспечения Optimization Toolbox можно также использовать внутренние и активные алгоритмы fmincon решатель. Укажите алгоритм в SearchOptions.Algorithm вариант. 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 Options) в разделе Опции оптимизации (Optimization Options) (Панель инструментов оптимизации). | Использовать optimset('lsqnonlin') для создания набора опций по умолчанию. |
SearchOptions Структура при SearchMethod указано как 'fmincon'
| Имя поля | Описание | Дефолт |
|---|---|---|
Algorithm |
Дополнительные сведения о алгоритмах см. в разделах Ограниченные нелинейные алгоритмы оптимизации (панель инструментов оптимизации) и Выбор алгоритма (панель инструментов оптимизации). | 'sqp' |
FunctionTolerance | Допуск окончания для функции потерь, которую программное обеспечение минимизирует для определения оцененных значений параметров, заданных как положительный скаляр. | 1e-6 |
StepTolerance | Допуск окончания для оцененных значений параметров, заданных как положительный скаляр. | 1e-6 |
MaxIterations | Максимальное число итераций при минимизации функции потерь, указанное как положительное целое число. Итерации останавливаются, когда | 100 |
Задание значений полей в SearchOptions , создайте значение по умолчанию findstatesOptions задайте и измените поля с помощью точечной нотации. Любые поля, которые не изменяются, сохраняют свои значения по умолчанию.
opt = findstatesOptions; opt.SearchOptions.Tolerance = 0.02; opt.SearchOptions.Advanced.MaxBisections = 30;
opt - Набор опций для findstatesfindstatesOptions набор опцийНабор опций для findstates, возвращено как findstatesOptions набор опций.
Названия некоторых вариантов оценки и анализа были изменены в R2018a году. Прежние имена все еще работают. Дополнительные сведения см. в примечании к версии R2018a Переименование параметров оценки и анализа.
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.