Monday 11 September 2017

Filtro Kalman Médio Móvel Exponencial


Este tópico pergunta quando um filtro de Kalman de tempo discreto é melhor diferente de uma média móvel simples das observações: não há resposta definitiva. Alguém pode dar um exemplo definitivo onde o filtro kalman, idealmente no caso 1D simples, faz algo diferente (e melhor) do que manter uma média móvel e indicar as condições quando o filtro kalman se reduziria para uma média móvel simples. O filtro de kalman não pesa todos os pontos de dados igualmente porque sua variação é inicialmente menor e melhora com o tempo. Mas parece que isso só interessa perto de observações iniciais e que, uma vez que a variância convergiu, o filtro kalman pesaria cada observação igualmente, assim como uma média móvel, então não veja quando as duas são diferentes e porque quando o filtro faria melhor. Perguntou 17 de fevereiro 15 às 23:52 como a primeira resposta (com a maioria dos votos) diz, o filtro kalman é melhor em qualquer caso quando o sinal está mudando. Observe a declaração do problema Estes usam o algoritmo para estimar alguma tensão constante. Como poderia usar um filtro de Kalman para isso, seja melhor do que apenas manter uma média em execução. Esses exemplos, apenas os casos de uso simplificados do filtro, usando um filtro kalman para estimar uma tensão constante é definitivamente, o excesso de velocidade. Nesse problema particular, é melhor usar a média de corrida, que sabemos ser o melhor estimador para distribuições Gaussianas. Neste exemplo, a tensão medida é a tensão real V, mas com algum ruído tipicamente modelado como 0 Gaussiano médio (ruído branco). Para que nossas medidas sejam gaussianas com meanV e sigmasigma noise. O filtro kalman é mais adequado para estimar coisas que mudam ao longo do tempo. O exemplo mais tangível é o rastreamento de objetos em movimento. Vamos imaginar lançar uma bola, sabemos que vai fazer um arco parabólico, mas o que nossos estimadores mostrarão Um filtro de Kalman será muito próximo da trajetória atual porque diz que a medida mais recente é mais importante do que as mais velhas (quando a covariância É baixo, isso é). A média de corrida leva todas as medidas igualmente a trajetória da bola azul, a média de corrida vermelha (desculpe, não kalman, se eu tiver tempo de jogá-lo lá, se eu tiver tempo, mas eu me aproximaria muito da linha azul assumindo que você modelou o sistema bem ) O filtro kalman, por outro lado, diz que, se nossa convarição e residual fossem pequenos (o que significa que nós tínhamos uma boa estimativa), então vamos ficar com a estimativa anterior e ajustá-lo um pouco com base no residual (ou nossa estimativa erro). Agora, como nosso xhat kk é muito próximo ao estado atual, quando fazemos a próxima atualização, usaremos um estado do sistema que corresponda ao estado atual. No x30, a média de corrida diz, a condição inicial y (0) é tão importante como y (29), é isso e você comete um enorme erro. O filtro kalman respondeu por isso. Ele disse que desde o nosso erro a última vez foi enorme, vamos fazer uma mudança drástica na nossa estimativa (o nosso xhat), então, quando a usaremos para a próxima atualização, estará mais perto do que realmente está acontecendo. Espero que isso faça algum sentido. Eu apenas notei Sua pergunta pergunta sobre uma média móvel vs kalman. Eu respondi executando avg vs kalman (esse é o tópico do link que você forneceu) Apenas para adicionar um pouco mais de informações especificamente para a média móvel (com janelas). A média móvel é um melhor estimador da mudança de valores. Uma vez que só leva em consideração amostras mais recentes. Infelizmente, tem um atraso associado a ele, especialmente em torno da mudança de derivativos (Apenas olhe perto de t30, onde a derivada vai de positivo para negativo). Isso ocorre porque a média é lenta para ver a flutuação. O que normalmente é o motivo pelo qual a usamos, para remover a flutuação (ruído). O tamanho da janela também desempenha um papel. Uma janela menor geralmente está mais próxima dos valores medidos, o que faz sentido e soa bem, certo. A desvantagem disso é se você tiver medições barulhentas, uma pequena janela significa que mais ruído aparece mais na saída. Vamos ver a outra questão novamente, medições com média .5, sigma .1 z 0.3708435, 0.4985331, 0.4652121. A média das primeiras 3 amostras é 0.4448629, não exatamente perto do valor esperado .5. Isso mostra novamente que, com a janela menor, o ruído tem um efeito mais profundo na saída. Então, logicamente, nosso próximo passo é levar janelas maiores, para melhorar nossa imunidade ao ruído. Bem, as janelas maiores são ainda mais lentas para refletir as mudanças reais (novamente, ver o t30 no meu gráfico) e o caso mais extremo de janelas é basicamente a média de corrida (o que já sabemos é ruim para a mudança de dados) Agora, de volta ao mágico Filtro kalman. Se você pensa sobre isso, é semelhante a uma média de janela de amostra de 2 amostras (similar não o mesmo). Olhe para X kk na etapa de atualização, ele leva o valor anterior e adiciona uma versão ponderada da amostra atual. Você pode pensar, bem, o que diz respeito ao ruído? Por que não é suscetível ao mesmo problema que a média de janelas com um pequeno tamanho de amostragem Como o filtro kalman leva em consideração a incerteza de cada medida. O valor de ponderação K (ganho de kalman) pode ser, no entanto, como uma relação entre a covariância (incerteza) de sua estimativa e a covariância (incerteza) da estimativa atual (na verdade, é o residual, mas é mais fácil pensar nisso assim) . Então, se a última medida tiver muita incerteza, K diminui e, portanto, a amostra mais recente desempenha um rolo menor. Se a última medida tiver menos incerteza do que a previsão, k aumenta, e agora a nova informação desempenha um rolo maior na próxima estimativa. Então, mesmo com um pequeno tamanho de amostra, o filtro kalman ainda está bloqueando muito o ruído. De qualquer forma, espero que responda a pergunta de avg vs kalman com janelas agora respondidas 18 de fevereiro 15 às 3:34 Outra tomada: O Filtro Kalman permite que você adicione mais informações sobre como funciona o sistema que você está filtrando. Em outras palavras, você pode usar um modelo de sinal para melhorar a saída do filtro. Claro, um filtro de média móvel pode dar resultados muito bons quando você espera uma saída próxima a constante. Mas assim que o sinal que você está modelando é dinâmico (pense em medições de fala ou posição), então o filtro de média móvel simples não mudará rapidamente (ou em tudo) em comparação com o que o Filtro de Kalman fará. O filtro de Kalman usa o modelo de sinal, que captura seu conhecimento de como o sinal muda, para melhorar sua saída em termos da variância da verdade. Respondeu 18 de fevereiro 15 às 13: 11 Estava pensando, quais são as vantagens e desvantagens do Filtro Kalman e do Filtro Exponencial. Eu tenho um problema de fusão multi-sensor e estou tentando decidir qual método escolher. Penso que o filtro Kalman é mais complexo computacionalmente, mas possui um modelo mais detalhado do sistema, por isso é mais preciso () na fusão multi-sensor. Considerando que o filtro Exponencial é uma equação simples, mas é limitado pela escolha de alfa (Alfa maior memória menor do filtro e, portanto, menor alisamento, mas mais pesa em medidas, enquanto que o alfa inferior tem maior grau de suavização, mas as mudanças repentinas não são refletidas adequadamente . O filtro Exponencial é mais útil no cancelamento de ruído, quando há jitter, etc. Considerando que o filtro Kalman é útil para a fusão multi-sensor real. Isso é correto. Além disso, é útil o Algoritmo Genético para a fusão de sensores Estou tentando combinar Uma bússola magnética e um giroscópio para estimar a orientação verdadeira. Quais são as vantagens e desvantagens do Filtro Kalman e do Filtro Exponencial. Penso que o filtro Kalman é mais complicado computacionalmente, mas possui um modelo mais detalhado do sistema por isso é mais preciso () em multi - a fusão do sensor. Isso é basicamente, em geral, quanto melhor for o seu modelo, melhor será o seu filtro, independentemente de você estar usando um Kalman fi Lter. O filtro Exponencial é mais útil no cancelamento de ruído, quando existe jitter etc. Considerando que o filtro Kalman é útil para a fusão multi-sensor real. Isso é correto, eu não concordaria com essa afirmação. O filtro Kalman está sendo inteligente sobre o cancelamento do ruído. É muito mais esperto do que um filtro de passagem baixa, porque é o máximo de todas as informações armazenadas na matriz de covariância. Se a medida de desempenho que você está procurando é Quão íntimo o valor filtrado corresponde ao valor verdadeiro, eu acho que o melhor filtro de passagem simples pode esperar fazer coincidir seu desempenho, e isso é apenas no caso mais simples de uma caminhada aleatória. Assim que você tiver uma interessante matriz de transição do estado, acho que o filtro de passagem baixa não tem chance, porque não consegue ver como a incerteza de velocidade entra na incerteza da posição, por exemplo. Estou tentando combinar uma bússola magnética e um giroscópio para estimar a orientação verdadeira. Este é exatamente o tipo de coisa para o qual um filtro Kalman foi projetado. Mas se você está preocupado com a complexidade de implementar um filtro kalman, comece implementando a versão do filtro passa-baixa: 1) Comece com uma simulação simples 2) Atualize o estado da simulação com base em suas medidas. É basicamente a estrutura para o kalman (o mais simples) Filtro para este sistema. Tudo o que está faltando é: Escrever tudo no formato da matriz Adicionar ruído do processo durante a etapa de simulação Adicionar uma etapa para Calcular os ganhos melhores do kalman em vez de usar valores fixos para o alfa. Adicionar uma etapa para atualizar a covariância dos filtros. Além disso, quão útil é o Algoritmo Genético para a fusão do sensor Eu não vejo onde eles iriam caber. Você pode elaborar O filtro exponencial é um caso especial do filtro de Kalman que restringe a consideração aos Sistemas com dinâmica trivial (constante) e uma relação fixa Do ruído de planta para planta (isto é o que determina o parâmetro alfa). Assim, nos casos em que essas premissas se aplicam, elas são equivalentes. Em outros casos, você pode obter melhores resultados usando o filtro Kalman (se você modelar adequadamente o sistema). A outra decisão principal é se você inclui a velocidade no espaço de estado se você fizer isso, então o filtro de Kalman é o caminho a seguir. Respondeu 26 de fevereiro às 18:43 Sua resposta 2017 Stack Exchange, IncKalman Filter - New Moving Average Registrado em maio de 2008 Status: Membro 58 Posts Anexado é a versão cumprida tanto para o quadro de tempo múltiplo quanto para o quadro de tempo único Kalman Filter. Basta pensar nisso como um tipo diferente de média móvel exponencial. As configurações são diretas. Para AppliedPrice, use o seguinte: 0 - Open Price 1 - Low Price 2 - High Price 3 - Close Price Eu não tenho outros tipos de preços adicionados, e devido à natureza do filtro, não vou adicionar mais nenhum. Gostaria de mencionar que o período é um pouco diferente do que você está acostumado nas MAs. Ainda é tecnicamente o mesmo que o período em uma EMA, mas devido à natureza do filtro de Kalman, o período não tem o mesmo efeito que em outras médias móveis. Você pode brincar com isso, mas uma sugestão pessoal é manter o período em 20,50,100 ou superior. O Kalman está configurado para algumas configurações genéricas no momento, mas se alguém tiver a ambição de mexer com as matrizes que usa para os cálculos, avise-me e vou atirar o código no seu caminho. Uma vez que, como você vai notar, o Kalman normal realmente não pode ser um indicador de tendência de longo prazo como 200 SMA, você pode usar a versão múltipla do tempo para executar o Kalman em intervalos de tempo mais longos e usá-lo como um indicador de Quotstra. Pessoalmente Eu prefiro isso, pois cria menos lag e simula o quotlooking no gráfico mais longo para garantir que os sinais correspondam à teoria. Uma idéia é traçar um Daily ou H4 Kalman em um gráfico de 15 ou 30 min, e usá-lo para jogar fora a tendência de longo prazo para esse dia. Eu acabei de depurar o indicador hoje e, embora altamente útil, esta versão do indicador não é realmente o meu foco agora. Eu trabalho em otimizar isso para minhas necessidades específicas, o que envolve algum trabalho de matemática pesado, mas esta versão é configurada para ser um manequim quotmiddle na batalha do tempo de resposta e suavidade que os MAs sempre experimentam. Além disso, desde que acabei de terminar hoje, não tenho uma estratégia que esteja sendo aplicada atualmente, e não tenho uma estrada dourada para riquezas apenas usando um filtro mais suave. Use o filtro como quiser, talvez, se você brincar com ele e se tornar criativo, talvez possa encontrar seu caminho para sua próxima estratégia de negociação. Diferentes períodos de Kalman - Blue: 500 Kalman - Light Blue: 200 Kalman - Green: 100 Kalman - Red: 50 Kalman - Orange: 20 Kalman i295.photobucketalbumsm. Manperiods. gif Kissn até o topo Os membros devem ter no mínimo 0 comprovantes para postar neste tópico. 2 comerciantes que visualizam agora Forex Factoryreg é uma marca registrada.

No comments:

Post a Comment