Оцените состояния дискретного времени нелинейная система с помощью фильтра частиц
Control System Toolbox / Оценка состояния
System Identification Toolbox / средства оценки
Блок Particle Filter оценивает состояния дискретного времени нелинейная система с помощью алгоритма фильтра частиц дискретного времени.
Считайте объект с состояниями x, входом u, выходом m, шум процесса w и измерение y. Примите, что можно представлять объект как нелинейную систему.
Алгоритм вычисляет оценки состояния из нелинейной системы с помощью функций правдоподобия изменения состояния и измерения вы задаете.
Вы создаете нелинейную функцию изменения состояния и функции правдоподобия измерения для системы и задаете эти функции в блоке. Блок поддерживает оценку состояния системы с несколькими датчиками, которые действуют на различных частотах дискретизации. Можно задать до пяти функций правдоподобия измерения, каждый соответствующий датчику в системе.
y1,y2,y3,y4,y5
— Измеренная система выходные параметрыИзмеренные системные выходные параметры, соответствующие каждой функции правдоподобия измерения, которую вы задаете в блоке. Количество портов равняется количеству функций правдоподобия измерения в вашей системе. Можно задать до пяти функций правдоподобия измерения. Например, если ваша система имеет два датчика, вы задаете две функции правдоподобия измерения в блоке. Первый порт y1 доступен по умолчанию. Нажмите Add Measurement, чтобы сгенерировать порт y2, соответствующий второй функции правдоподобия измерения.
Задайте порты как N - размерные векторы, где N является количеством количеств, измеренных соответствующим датчиком. Например, если ваша система имеет один датчик, который измеряет положение и скорость объекта, затем существует только один порт y1. Порт задан как двумерный вектор со значениями, соответствующими положению и скорости.
Первый порт y1 доступен по умолчанию. Порты y2 к y5 сгенерированы, когда вы нажимаете Add Measurement.
StateTransitionFcnInputs
— Дополнительный входной параметр к функции изменения состоянияДополнительный входной параметр к изменению состояния функционирует f
кроме x
состояния.
Если вы создаете f
использование MATLAB® функция (.m
файл), программное обеспечение генерирует порт StateTransitionFcnInputs, когда вы вводите имя своей функции и нажимаете Apply.
Если ваша функция изменения состояния имеет больше чем один дополнительный вход, используйте блок Simulink Function (Simulink), чтобы задать функцию. Когда вы используете блок Simulink Function, вы предоставляете дополнительные входные параметры непосредственно блоку Simulink Function с помощью Inport (Simulink) блоки. Никакие входные порты не сгенерированы для дополнительных входных параметров в блоке Particle Filter.
Этот порт сгенерирован, только если обоим из следующих условий удовлетворяют:
Вы задаете f
в Function с помощью функции MATLAB и f
находится на пути MATLAB.
f
требует только одного дополнительного входного параметра кроме частиц.
MeasurementLikelihoodFcn1Inputs,...,MeasurementLikelihoodFcn5Inputs
— Дополнительный входной параметр к каждой функции правдоподобия измеренияДополнительные входные параметры к функциям правдоподобия измерения кроме x
состояния и измерение
y
.
MeasurementLikelihoodFcn1Inputs соответствует первой функции правдоподобия измерения, которую вы задаете и так далее.
Если вы задаете два входных параметров измерения с помощью функций MATLAB (.m
файлы) в Function, программное обеспечение генерирует порты MeasurementLikelihoodFcn1Inputs и MeasurementLikelihoodFcn2Inputs, когда вы нажимаете Apply. Можно задать входные параметры к этим портам как скаляры, векторы или матрицы.
Если ваши функции правдоподобия измерения имеют больше чем один дополнительный вход, используйте Simulink Function (Simulink) блоки, чтобы задать функции. Когда вы используете блок Simulink Function, вы предоставляете дополнительные входные параметры непосредственно блоку Simulink Function с помощью Inport (Simulink) блоки. Никакие входные порты не сгенерированы для дополнительных входных параметров в блоке Particle Filter.
Порт, соответствующий функции правдоподобия измерения h
сгенерирован, только если обоим из следующих условий удовлетворяют:
Вы задаете вход h
измерения в Function с помощью функции MATLAB и
h
находится на пути MATLAB.
h
требует только одного дополнительного входного параметра кроме частиц и измерения.
Enable1,Enable2,Enable3,Enable4,Enable5
— Включите коррекцию предполагаемых состояний, когда результаты измерений будут доступныВключите коррекцию предполагаемых состояний, когда результаты измерений будут доступны.
Например, полагайте, что измеренные выходные данные не доступны во всех моментах времени в порте y1, который соответствует первой функции правдоподобия измерения. Затем используйте значение сигналов кроме 0
в порте Enable1, чтобы включить коррекцию предполагаемых состояний, когда результаты измерений доступно. Задайте значение порта как 0
когда результаты измерений не доступны. Точно так же, если измеренные выходные данные не доступны во всех моментах времени в порте yi
для ith функция правдоподобия измерения, задайте соответствующий порт Enablei
как значение кроме 0
.
Если вы выбираете Add Enable port для функции правдоподобия измерения, порт, соответствующий той функции правдоподобия измерения, сгенерирован. Порт появляется, когда вы нажимаете Apply.
xhat
— Предполагаемые состоянияПредполагаемые состояния, возвращенные как вектор из размера Ns, где Ns является количеством состояний системы. Чтобы получить доступ к отдельным государствам, используйте блок Selector (Simulink).
Когда параметр Use the current measurements to improve state estimates выбран, блок выводит откорректированную оценку состояния на временном шаге k
, предполагаемое использование измеряло выходные параметры до времени k
. Если вы очищаете этот параметр, блок возвращает предсказанную оценку состояния в течение времени k
, предполагаемое использование измеряло выход до предыдущего раза k-1
. Очистите этот параметр, если ваш фильтр находится в обратной связи и в вашем Simulink существует алгебраический цикл® модель.
P
— Ошибочная ковариация оценки состоянияОшибочная ковариация оценки состояния, возвращенная как Ns-by-Ns матрица, где Ns является количеством состояний системы. Чтобы получить доступ к отдельным ковариациям, используйте блок Selector (Simulink).
Можно вывести ошибочную ковариацию, только если вы выбираете Output state estimation error covariance во вкладке Block outputs, Multirate и нажимаете Apply.
Этот параметр доступен, если во вкладке Block outputs, Multirate, параметр State estimation method устанавливается на 'Mean'
.
Particles
— Значения частицы используются для оценки состоянияЗначения частицы используются для оценки состояния, возвращенной как Ns-by-Np или Np-by-Ns массив. Ns является количеством состояний системы, и Np является количеством частиц.
Если StateOrientation
параметр задан как 'column'
, затем Particles возвращен как Ns-by-Np массив.
Если StateOrientation
параметр задан как 'row'
, затем Particles возвращен как Np-by-Ns массив.
Этот порт сгенерирован, если вы выбираете Output all particles во вкладке Block outputs, Multirate и нажимаете Apply.
Weights
— Веса частицы используются для оценки состоянияВеса частицы использовали для оценки состояния, возвращенной как 1 Np или Np-by-1 вектор, где Np является количеством частиц, используемых для оценки состояния.
Если StateOrientation
параметр задан как 'column'
, затем Weights возвращен как 1 Np вектором, где каждый вес сопоставлен с частицей в том же столбце в Particles
массив.
Если StateOrientation
параметр задан как 'row'
, затем Weights возвращен как Np-by-1 вектор, где каждый вес сопоставлен с частицей в той же строке в Particles
массив.
Этот порт сгенерирован, если вы выбираете Output weights во вкладке Block outputs, Multirate и нажимаете Apply.
Function
— Имя функции изменения состояния'vdpParticleFilterStateFcn'
(значение по умолчанию) | имя функцииФункция изменения состояния фильтра частиц вычисляет частицы на временном шаге k+1, учитывая частицы на временном шаге k на динамику вашей системы и шума процесса. Эта функция имеет синтаксис:
particlesNext = f(particles, param1, param2, ...)
где, particles и particlesNext имеют размерности Ns-by-Np, если State Orientation задан как 'column'
, или Np-by-Ns, если State Orientation задан как 'row'
. Кроме того, param_i
представляет дополнительные входные параметры, которые можно задать. Для получения дополнительной информации о дополнительных входных параметрах смотрите StateTransitionFcnInputs.
Вы создаете функцию изменения состояния и задаете имя функции в Function. Например, если vdpParticleFilterStateFcn.m
функция изменения состояния, которую вы создали и сохраненный, задайте Function как 'vdpParticleFilterStateFcn'
.
Можно создать Function с помощью блока Simulink Function (Simulink) или как функции MATLAB (.m
файл).
Параметры блоков: StateTransitionFcn |
Ввод: вектор символов, строка |
Значение по умолчанию: 'vdpParticleFilterStateFcn' |
Number of Particles
— Количество частиц используется в фильтреКоличество частиц используется в фильтре в виде положительного скалярного целого числа. Каждая частица представляет гипотезу состояния в системе. Более высокое количество частиц увеличивает точность оценки состояния, но также и увеличивает вычислительное усилие, требуемое запускать фильтр.
Параметры блоков: NumberOfParticles |
Ввод: положительное скалярное целое число |
Значение по умолчанию: 1000 |
Distribution
— Начальное распределение частиц'Gaussian'
(значение по умолчанию) | 'Uniform'
| 'Custom'
Начальное распределение частиц в виде 'Gaussian'
, 'Uniform'
, или 'Custom'
.
Если вы выбираете 'Gaussian'
, начальный набор частиц или гипотез состояния распределяется на многомерное Распределение Гаусса, где вы задаете Mean и Covariance. Начальный вес всех частиц принят, чтобы быть равным.
Если вы выбираете 'Uniform'
, начальный набор частиц распределяется на равномерное распределение, где вы задаете верхний и более низкий State bounds. Начальный вес всех частиц принят, чтобы быть равным.
'Custom'
позволяет вам задавать свой собственный набор начальных частиц и их весов. Можно использовать произвольные вероятностные распределения для Particles и Weights, чтобы инициализировать фильтр.
Параметры блоков: InitialDistribution |
Ввод: символьный вектор |
Значения: 'Gaussian' , 'Uniform' , 'Custom' |
Значение по умолчанию: 'Gaussian' |
Mean
— Начальное среднее значение частицНачальное среднее значение частиц в виде вектора. Количество состояний, которые будут оценены, задает длину вектора.
Этот параметр доступен, если во вкладке System model, параметр Distribution устанавливается на Gaussian
.
Параметры блоков: InitialMean |
Ввод: массив |
Значение по умолчанию: [0,0] |
Covariance
— Начальная ковариация частицНачальная ковариация частиц в виде скаляра, вектора или матрицы.
Если Covariance задан как:
Скаляр, затем это должно быть положительно. Ковариация принята, чтобы быть [Ns Ns] матрицей с этим скаляром на диагоналях. Здесь, Ns является количеством состояний.
Вектор, затем каждый элемент должен быть положительным. Ковариация принята, чтобы быть [Ns Ns] матрицей с элементами вектора на диагоналях.
Матрица A, затем это должно быть положительно полуопределенный.
Этот параметр доступен, если во вкладке System model, параметр Distribution устанавливается на Gaussian
.
Параметры блоков: InitialCovariance |
Ввод: скаляр, вектор или матрица |
Значение по умолчанию: 1 |
Circular Variables
— Круговые переменные используются для оценки состоянияКруговые переменные использовали для оценки состояния в виде скаляра или Ns - вектор элемента, где Ns является количеством состояний.
Если Circular Variables задан как скаляр, программное обеспечение расширяет его к вектору, где каждый элемент равен этому скаляру. Проспект (или угловой) распределения использует функцию плотности вероятности с областью значений [-π
π
]. Используйте круговые переменные, если некоторые состояния в вашей системе представляют угловые количества как ориентация объекта.
Параметры блоков: CircularVariables |
Ввод: скаляр, вектор |
Значение по умолчанию: 0 |
State Orientation
— Ориентация входных системных состояний'column'
(значение по умолчанию) | 'row'
Ориентация системы утверждает в виде 'column'
или 'row'
.
Если State Orientation задан как:
'column'
, затем первый входной параметр к функции правдоподобия изменения состояния и измерения [Ns
Np]. В этом случае, ith столбец этой матрицы является ith частица (утверждают гипотезу). Кроме того, состояния оценивает, что xhat выводится как [Ns 1] вектор. Здесь, Ns является количеством состояний, и Np является количеством частиц.
'row'
, затем первый входной параметр к функции правдоподобия изменения состояния и измерения [Np
Ns], и каждая строка этой матрицы содержит частицу. Кроме того, состояния оценивает, что xhat выводится как [1 Ns] вектор.
Параметры блоков: StateOrientation |
Ввод: символьный вектор |
Значения: 'column' , 'row' |
Значение по умолчанию: 'column' |
State bounds
— Начальные границы на системных состоянияхНачальные границы в системе утверждают в виде Ns-by-2 массив, где Ns является количеством состояний.
Ith списки строк нижняя и верхняя граница равномерного распределения для начального распределения частиц ith состояние.
Этот параметр доступен, если во вкладке System model, параметр Distribution устанавливается на Uniform
.
Параметры блоков: InitialStateBounds |
Ввод: массив |
Значение по умолчанию: [-3 3;-3 3] |
Particles
— Пользовательское распределение частицы для оценки состоянияПользовательское распределение частицы для оценки состояния в виде Ns-by-Np или Np-by-Ns массив. Ns является количеством состояний системы, и Np является количеством частиц.
Если StateOrientation
параметр задан как 'column'
, затем Particles является Ns-by-Np массив.
Если StateOrientation
параметр задан как 'row'
, затем Particles является Np-by-Ns массив.
Этот параметр доступен, если во вкладке System model, параметр Distribution устанавливается на Custom
.
Параметры блоков: InitialParticles |
Ввод: массив |
Значение по умолчанию: [] |
Weights
— Пользовательские значения веса частицы для оценки состоянияПользовательские значения веса частицы для оценки состояния в виде 1 Np или Np-by-1 положительный вектор, где Np является количеством частиц, используемых для оценки состояния.
Если StateOrientation
параметр задан как 'column'
, затем Weights является 1 Np вектором. Каждый вес в векторе сопоставлен с частицей в том же столбце в Particles
массив.
Если StateOrientation
параметр задан как 'row'
, затем Weights является Np-by-1 вектор. Каждый вес в векторе сопоставлен с частицей в той же строке в Particles
массив.
Этот параметр доступен, если во вкладке System model, параметр Distribution устанавливается на Custom
.
Параметры блоков: InitialWeights |
Ввод: положительный вектор |
Значение по умолчанию: [] |
Function
— Имя функции правдоподобия измерения'vdpMeasurementLikelihoodFcn'
(значение по умолчанию) | имя функцииФункция правдоподобия измерения вычисляет вероятность частиц (гипотезы состояния) использование измерений датчика. Для каждой гипотезы состояния (частица) функция сначала вычисляет Nm - вектор гипотезы измерения элемента. Затем вероятность каждой гипотезы измерения вычисляется на основе измерения датчика и вероятностного распределения шума измерения. эта функция имеет синтаксис:
likelihood = h(particles, measurement, param1, param2, ...)
'column'
, или Np-by-Ns, если State Orientation задан как 'row'
. measurement является Nm - вектор элемента, где, Nm является количеством измерений, ваш датчик обеспечивает. param_i представляет дополнительные входные параметры, которые можно задать. Для получения дополнительной информации о дополнительных входных параметрах см. MeasurementLikelihoodFcn1Inputs..., MeasurementLikelihoodFcn5Inputs.
Вы создаете функцию правдоподобия измерения и задаете имя функции в Function. Например, если vdpMeasurementLikelihoodFcn.m
функция правдоподобия измерения, которую вы создали и сохраненный, задайте Function как 'vdpMeasurementLikelihoodFcn'
.
Можно создать Function с помощью блока Simulink Function (Simulink) или как функции MATLAB (.m
файл).
Можно использовать функцию MATLAB, только если h имеет нуль или один дополнительный входной параметр param_i
кроме Particles и Measurement.
Программное обеспечение генерирует дополнительный входной порт MeasurementLikelihoodFcni
Входные параметры, чтобы задать этот аргумент для ith функция правдоподобия измерения, и нажимает Apply.
Если вы используете блок Simulink Function, задаете x
и y
использование Argument Inport (Simulink) блокируется и дополнительные входные параметры param_i
использование Inport (Simulink) блокируется в блоке Simulink Function. Вы не обеспечиваете param_i
с блоком Particle Filter.
Если у вас есть несколько датчиков в вашей системе, можно задать несколько функций правдоподобия измерения. Можно задать до пяти функций правдоподобия измерения с помощью кнопки Add Measurement. Чтобы удалить функции правдоподобия измерения, используйте Remove Measurement.
Параметры блоков: MeasurementLikelihoodFcn1 , MeasurementLikelihoodFcn2 , MeasurementLikelihoodFcn3 , MeasurementLikelihoodFcn4 , MeasurementLikelihoodFcn5 |
Ввод: вектор символов, строка |
Значение по умолчанию: 'vdpMeasurementLikelihoodFcn' |
Add Enable Port
— Включите коррекцию предполагаемых состояний только, когда результаты измерений будут доступныoff
(значение по умолчанию) | on
Предположим, что измеренные выходные данные не доступны во всех моментах времени в порте y1, который соответствует первой функции правдоподобия измерения. Чтобы сгенерировать входной порт Enable1, выберите Add Enable port. Используйте сигнал в этом порте, чтобы включить коррекцию предполагаемых состояний только, когда результаты измерений будут доступны. Точно так же, если измеренные выходные данные не доступны во всех моментах времени в порте yi
для ith функция правдоподобия измерения, выберите соответствующий Add Enable port.
Параметры блоков: HasMeasurementEnablePort1 , HasMeasurementEnablePort2 , HasMeasurementEnablePort3 , HasMeasurementEnablePort4 , HasMeasurementEnablePort5 |
Ввод: символьный вектор |
Значения: 'off' on |
Значение по умолчанию: 'off' |
Resampling method
— Метод используется для передискретизации частицы'Multinomial'
(значение по умолчанию) | 'Systemic'
| 'Stratified'
Метод использовал для передискретизации частицы в виде одного из следующего:
'Multinomial'
— Передискретизация многочлена, также названная, упростила случайную выборку, генерирует N
случайные числа независимо от равномерного распределения в открытом интервале (0,1)
и использует их, чтобы выбрать частицы, пропорциональные их весу.
'Stratified'
— Стратифицированная передискретизация делится, целое население частиц в подмножества вызвало слои. Это предварительно делит (0,1)
интервал в N
непересекающиеся подынтервалы размера 1/N
. Случайные числа чертятся независимо в каждом из этих подынтервалов и демонстрационных индексов, выбранных в слоях.
'Systematic'
— Систематическая передискретизация похожа на стратифицированную передискретизацию, когда это также использует слои. Одно различие - то, что это только чертит одно случайное число от открытого интервала (0,1/N)
и остающиеся точки выборки вычисляются детерминировано в фиксированном 1/N
неродной размер.
Параметры блоков: ResamplingMethod |
Ввод: символьный вектор |
Значения: 'Multinomial' , 'Systemic' , 'Stratified' |
Значение по умолчанию: 'Multinomial' |
Trigger method
— Метод, чтобы определить, когда передискретизация происходит'Ratio'
(значение по умолчанию) | 'Interval'
Метод, чтобы определить, когда передискретизация происходит в виде любого 'Ratio'
или 'Interval'
. 'Ratio'
триггерная передискретизация значения на основе отношения эффективных общих частиц. 'Interval'
триггерная передискретизация значения на шагах постоянного времени операции фильтра частиц.
Параметры блоков: TriggerMethod |
Ввод: символьный вектор |
Значения: 'Ratio' Интервал |
Значение по умолчанию: 'Ratio' |
Minimum effective particle ratio
— Минимальное желаемое отношение эффективного количества частиц к общему количеству частиц Минимальное желаемое отношение эффективного количества частиц к общему количеству частиц в виде положительной скалярной величины. Эффективное количество частиц является мерой того, как хорошо текущий набор частиц аппроксимирует апостериорное распределение. Более низкое эффективное отношение частицы подразумевает, что более низкое количество частиц способствует оценке, и передискретизация требуется.
Если отношение эффективного количества частиц к общему количеству падений частиц ниже минимального эффективного отношения частицы, шаг передискретизации инициирован.
Задайте минимальное эффективное отношение частицы как любое значение от 0 до 1.
Этот параметр доступен, если во вкладке System model, параметр Trigger method устанавливается на Ratio
.
Параметры блоков: MinEffectiveParticleRatio |
Ввод: скаляр |
Значения: область значений [0,1] |
Значение по умолчанию: 0.5 |
Sampling Interval
— Фиксированный интервал между передискретизациейФиксированный интервал между передискретизацией в виде положительного скалярного целого числа. Интервал выборки определяет, во время которых шагов коррекции выполняется передискретизация. Например, значение двух средних значений передискретизация выполняется каждый второй шаг коррекции. Значение inf
средние значения, что передискретизация никогда не выполняется.
Этот параметр доступен, если во вкладке System model, параметр Trigger method устанавливается на Interval
.
Параметры блоков: SamplingInterval |
Ввод: положительное скалярное целое число |
Значение по умолчанию: 1 |
Randomness
— Повторяемы ли случайные числа'Repeatable'
(значение по умолчанию) | 'Not repeatable'
Повторяемы ли случайные числа в виде любого 'Repeatable'
или 'Not repeatable'
. Если вы хотите смочь привести к тому же результату несколько раз, установите Randomness на 'Repeatable'
, и задайте то же значение начального значения генератора случайных чисел в Seed.
Параметры блоков: Randomness |
Ввод: символьный вектор |
Значения:
'Repeatable' , 'Not repeatable' |
Значение по умолчанию: 'Repeatable' |
Seed
— Начальное значение для повторяемых случайных чиселНачальное значение для повторяемых случайных чисел в виде скаляра.
Этот параметр доступен, если во вкладке System model, параметр Randomness устанавливается на 'Repeatable'
.
Параметры блоков: Seed |
Ввод: скаляр |
Значение по умолчанию: 0 |
Data type
— Тип данных для параметров блоковdouble
(значение по умолчанию) | single
Используйте этот параметр, чтобы задать тип данных для всех параметров блоков.
Параметры блоков: DataType |
Ввод: символьный вектор |
Значения: 'single' 'double' |
Значение по умолчанию: 'double' |
Sample time
— Блокируйте шаг расчета
(значение по умолчанию) | положительная скалярная величинаБлокируйте шаг расчета в виде положительной скалярной величины.
Используйте параметр Sample time, если ваше изменение состояния и все функции правдоподобия измерения имеют тот же шаг расчета. В противном случае выберите опцию Enable multirate operation во вкладке Multirate и задайте шаги расчета в той же вкладке.
Этот параметр доступен, если во вкладке Block output, Multirate, параметром Enable multirate operation является off
.
Параметры блоков: SampleTime |
Ввод: вектор символов, строка |
Значение по умолчанию: '1' |
State Estimation Method
— Метод, используемый для извлечения оценки состояния от частиц'Mean'
(значение по умолчанию) | 'MaxWeight'
| 'None'
Метод, используемый для извлечения оценки состояния от частиц в виде одного из следующего:
'Mean'
— Блок Particle Filter выводит взвешенное среднее частиц, в зависимости от параметров Weights и Particles как оценка состояния.
'Maxweight'
— Блок Particle Filter выводит частицу с самым высоким весом как оценка состояния.
'None'
— Используйте эту опцию, чтобы реализовать пользовательский метод оценки состояния путем доступа ко всем частицам с помощью параметра Output all particles от вкладки Block outputs, Multirate.
Параметры блоков: StateEstimationMethod |
Ввод: вектор символов, строка |
Значения:
'Mean' , 'MaxWeight' 'none' |
Значение по умолчанию: 'Mean' |
Output all particles
— Выведите все частицы'off'
(значение по умолчанию) | 'on'
Если вы выбираете этот параметр, выходной порт для частиц, используемых по оценке, Particles сгенерирован в блоке.
Если StateOrientation
параметр задан как 'column'
, затем частицы выводятся как Ns-by-Np массив. Ns является количеством состояний системы, и Np является количеством частиц.
Если StateOrientation
параметр задан как 'row'
, затем частицы выводятся как Np-by-Ns массив.
Параметры блоков: OutputParticles |
Ввод: символьный вектор |
Значения: 'off' on |
Значение по умолчанию: 'off' |
Output weights
— Выведите веса частицы'off'
(значение по умолчанию) | 'on'
Если вы выбираете этот параметр, выходной порт для весов частицы, используемых по оценке, Weights сгенерирован в блоке.
Если StateOrientation
параметр задан как 'column'
, затем веса частицы выводятся как 1 Np вектором. Здесь, где каждый вес сопоставлен с частицей в том же столбце в Particles
массив. Np является количеством частиц, используемых для оценки состояния.
Если StateOrientation
параметр задан как 'row'
, затем веса частицы выводятся как Np-by-1 вектор.
Параметры блоков: OutputWeights |
Ввод: символьный вектор |
Значения: 'off' on |
Значение по умолчанию: 'off' |
Output state estimation error covariance
— Ковариация ошибки расчета состояния вывода'off'
(значение по умолчанию) | 'on'
Если вы выбираете этот параметр, ошибочный выходной порт ковариации оценки состояния, P сгенерирован в блоке.
Этот параметр доступен, если во вкладке Block outputs, Multirate, параметр State estimation method устанавливается на 'Mean'
.
Параметры блоков: OutputStateCovariance |
Ввод: символьный вектор |
Значения: 'off' on |
Значение по умолчанию: 'off' |
Use the current measurements to improve state estimates
— Опция, чтобы использовать текущие измерения для оценки состояния'on'
(значение по умолчанию) | 'off'
Когда этот параметр выбран, блок выводит откорректированную оценку состояния на временном шаге k
, предполагаемое использование измеряло выходные параметры до времени k
. Если вы очищаете этот параметр, блок возвращает предсказанную оценку состояния в течение времени k
, предполагаемое использование измеряло выход до предыдущего раза k-1
. Очистите этот параметр, если ваш фильтр находится в обратной связи и в вашей модели Simulink существует алгебраический цикл.
Параметры блоков: UseCurrentEstimator |
Ввод: символьный вектор |
Значения: 'on' off |
Значение по умолчанию: 'on' |
Enable multirate operation
— Включите спецификацию различных шагов расчета для функций правдоподобия изменения состояния и измерения'off'
(значение по умолчанию) | 'on'
Выберите этот параметр, если шаги расчета изменения состояния или какая-либо из функций правдоподобия измерения отличаются от остальных. Вы задаете шаги расчета во вкладке Multirate в Sample time.
Параметры блоков: EnableMultirate |
Ввод: символьный вектор |
Значения: 'off' on |
Значение по умолчанию: 'off' |
Sample times
— Изменение состояния и шаги расчета функции правдоподобия измеренияЕсли шаги расчета для функций правдоподобия изменения состояния и измерения отличаются, задают Sample time. Задайте шаги расчета для функций измерения как положительные целочисленные множители шага расчета изменения состояния. Шаги расчета, которые вы задаете, соответствуют следующим входным портам:
Порты, соответствующие функции изменения состояния — вход Additional к изменению состояния, функционируют StateTransitionFcnInputs. Шаги расчета этих портов должны всегда равняться шагу расчета функции изменения состояния, но могут отличаться от шага расчета функций правдоподобия измерения.
Порты, соответствующие ith функция правдоподобия измерения — Measured выход yi
, дополнительный вход к функции правдоподобия измерения MeasurementLikelihoodFcni
Входные параметры, включите сигнал в порте Enablei
. Шаги расчета этих портов для той же функции правдоподобия измерения должны всегда быть тем же самым, но могут отличаться от шага расчета для функции изменения состояния и других функций правдоподобия измерения.
Этот параметр доступен, если во вкладке Block outputs, Multirate, параметром Enable multirate operation является on
.
Параметры блоков: StateTransitionFcnSampleTime , MeasurementLikelihoodFcn1SampleTime1 , MeasurementLikelihoodFcn1SampleTime2 , MeasurementLikelihoodFcn1SampleTime3 , MeasurementLikelihoodFcn1SampleTime4 , MeasurementLikelihoodFcn1SampleTime5 |
Ввод: вектор символов, строка |
Значение по умолчанию: '1' |
[1] Т. Ли, М. Болик, пополудни Djuric, "Передискретизируя Методы для Фильтрации Частицы: Классификация, реализация и стратегии", Журнал Обработки сигналов IEEE, издание 32, № 3, стр 70-86, май 2015.
Функции правдоподобия изменения состояния и измерения, которые вы задаете, должны использовать только команды MATLAB и блоки Simulink та генерация кода поддержки. Для списка блоков, которые поддерживают генерацию кода, смотрите Simulink Встроенные Блоки Та Генерация кода Поддержки (Simulink Coder). Для списка команд, которые поддерживают генерацию кода, смотрите Функции и Объекты, Поддержанные для Генерации кода C/C++ (MATLAB Coder).
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.