From af44f82a658a393f43a694ab0a3bb4ccda4e49bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Karam=C3=A9?=
 <frederic.karame@univ-lemans.fr>
Date: Sat, 9 Jun 2018 14:59:20 +0200
Subject: [PATCH] Correct the calculation of the incremental weights.

(cherry picked from commit 1f08164b05b6276f82cb48ca27ccde54e9f634c7)
---
 src/gaussian_mixture_densities.m | 15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/gaussian_mixture_densities.m b/src/gaussian_mixture_densities.m
index c826059..cd4f6b5 100644
--- a/src/gaussian_mixture_densities.m
+++ b/src/gaussian_mixture_densities.m
@@ -46,11 +46,12 @@ prior = prior' ;
 proposal = proposal' ;
 % Compute the density of the current observation conditionally to each particle
 yt_t_1_i = measurement_equations(StateParticles,ReducedForm,ThreadsOptions) ;
-eta_t_i = bsxfun(@minus,obs,yt_t_1_i)' ;
-yt_t_1 = sum(yt_t_1_i*weigths1,2) ;
-tmp = bsxfun(@minus,yt_t_1_i,yt_t_1) ;
-Pyy = bsxfun(@times,weigths2',tmp)*tmp' + H ;
-sqr_det = sqrt(det(Pyy)) ;
-foo = (eta_t_i/Pyy).*eta_t_i ;
-likelihood = exp(-0.5*sum(foo,2))/(normconst*sqr_det) + 1e-99 ;
+%eta_t_i = bsxfun(@minus,obs,yt_t_1_i)' ;
+%yt_t_1 = sum(yt_t_1_i*weigths1,2) ;
+%tmp = bsxfun(@minus,yt_t_1_i,yt_t_1) ;
+%Pyy = bsxfun(@times,weigths2',tmp)*tmp' + H ;
+%sqr_det = sqrt(det(Pyy)) ;
+%foo = (eta_t_i/Pyy).*eta_t_i ;
+%likelihood = exp(-0.5*sum(foo,2))/(normconst*sqr_det) + 1e-99 ;
+likelihood = probability2(obs,sqrt(H),yt_t_1_i) ;
 IncrementalWeights = likelihood.*prior./proposal ;
-- 
GitLab