Esta página aún no se ha traducido para esta versión. Puede ver la versión más reciente de esta página en inglés.

Flujo de trabajo de filtro de partículas

Un filtro de partículas es un estimador de estado bayesiano recursivo que utiliza partículas discretas para aproximar la distribución posterior del estado estimado.

El algoritmo calcula la estimación de estado de forma recursiva e implica dos pasos:filtro de partículas

  • Predicción: el algoritmo utiliza el estado anterior para predecir el estado actual en función de un modelo de sistema determinado.

  • Corrección: el algoritmo utiliza la medición actual del sensor para corregir la estimación de estado.

El algoritmo también redistribuye periódicamente o remuestrea las partículas en el espacio de estado para que coincidan con la distribución posterior del estado estimado.

El estado estimado consta de todas las variables de estado. Cada partícula representa una hipótesis de estado discreto. El conjunto de todas las partículas se utiliza para ayudar a determinar la estimación final del estado.

Puede aplicar el filtro de partículas a modelos de sistema no lineales arbitrarios. El ruido de proceso y medición puede seguir distribuciones arbitrarias no gaussianas.

Para utilizar el filtro de partículas correctamente, debe especificar parámetros como el número de partículas, la ubicación inicial de las partículas y el método de estimación de estado. Además, si tiene un modelo de movimiento y sensor específico, especifique estos parámetros en la función de transición de estado y la función de probabilidad de medición, respectivamente. Para obtener más información, consulte .Parámetros de filtro de partículas

Siga este flujo de trabajo básico para crear y utilizar un filtro de partículas. Esta página detalla el flujo de trabajo de estimación y muestra un ejemplo de cómo ejecutar un filtro de partículas en un bucle para estimar continuamente el estado.

Flujo de trabajo de estimación

Cuando se utiliza un filtro de partículas, se requiere un conjunto de pasos necesariopara crear el filtro de partículas y el estado de estimación. Los pasos de predicción y corrección son los pasos principales de iteración para estimar continuamente el estado.

Crear filtro de partículas

Cree un objeto.stateEstimatorPF

Establecer parámetros del sistema no lineal

Modifique estos parámetros para que se ajusten a su sistema o aplicación específicos:stateEstimatorPF

  • StateTransitionFcn

  • MeasurementLikelihoodFcn

  • ResamplingPolicy

  • ResamplingMethod

  • StateEstimationMethod

Los valores predeterminados para estos parámetros se indican para la operación básica.

Las funciones y las definen el comportamiento del sistema y la integración de la medición.StateTransitionFcnMeasurementLikelihoodFcn Son vitales para que el filtro de partículas rastree con precisión. Para obtener más información, consulte .Parámetros de filtro de partículas

Inicializar partículas

Utilice la función para establecer el número de partículas y el estado inicial.initialize

Partículas de muestra de una distribución

Puede muestrear las ubicaciones iniciales de partículas de dos maneras:

  • Pose inicial y covarianza: si tiene una idea de su estado inicial, se recomienda especificar la pose inicial y la covarianza. Esta especificación ayuda a agrupar partículas más cercanas a su estimación, por lo que el seguimiento es más eficaz desde el principio.

  • Límites de estado: si no conoce el estado inicial, puede especificar los posibles límites de cada variable de estado. Las partículas se distribuyen uniformemente entre los límites de estado para cada variable. Las partículas ampliamente distribuidas no son tan eficaces en el seguimiento, porque menos partículas están cerca del estado real. El uso de límites de estado normalmente requiere más partículas, tiempo de cálculo e iteraciones para converger a la estimación de estado real.

Predecir

En función de una función de transición de estado especificada, las partículas evolucionan para estimar el siguiente estado. Se utiliza para ejecutar la función de transición de estado especificada en la propiedad.predictStateTransitionFcn

Obtener medición

Las mediciones recogidas de los sensores se utilizan en el siguiente paso para corregir el estado actual predicho.

Correcto

A continuación, las mediciones se utilizan para ajustar el estado predicho y corregir la estimación. Especifique las medidas mediante la función. utiliza el para calcular la probabilidad de mediciones del sensor para cada partícula.correctcorrectMeasurementLikelihoodFcn El remuestreo de partículas es necesario para actualizar la estimación a medida que cambia el estado en iteraciones posteriores. Este paso desencadena el remuestreo en función de las propiedades y.ResamplingMethodResamplingPolicy

Extraer mejor estimación del estado

Después de llamar a , la mejor estimación de estado se extrae automáticamente en función de cada partícula y la propiedad especificada en el objeto.correctWeightsStateEstimationMethod La función genera el estado y la covarianza mejor estimados.correct

Remuestrear partículas

Este paso no se llama por separado, sino que se ejecuta cuando se llama a .correct Una vez que su estado haya cambiado lo suficiente, vuelva a muestrear las partículas en función de la estimación más reciente. El método comprueba la activación del remuestreo de partículas de acuerdo con la distribución actual de las partículas y sus pesos.correctResamplingPolicy Si no se activa el remuestreo, se utilizan las mismas partículas para la siguiente estimación. Si su estado no varía por mucho o si el paso de tiempo es bajo, puede llamar a los métodos predecir y corregir sin remuestrear.

Predecir y corregir continuamente

Repita los pasos de predicción y corrección anteriores según sea necesario para estimar el estado. El paso de corrección determina si se requiere el remuestreo de las partículas. Múltiples llamadas para o pueden ser necesarias cuando:predictcorrect

  • No hay medición disponible, pero las entradas de control y las actualizaciones de tiempo se producen a una alta frecuencia. Utilice el método para evolucionar las partículas para obtener el estado predicho actualizado con más frecuencia.predict

  • Múltiples lecturas de medición están disponibles. Se utiliza para integrar múltiples lecturas de los mismos o múltiples sensores.correct La función corrige el estado en función de cada conjunto de información recopilada.

Consulte también

| | | |

Ejemplos relacionados

Más acerca de