31 | | <a name="l00033"></a>00033 |
32 | | <a name="l00034"></a>00034 <span class="keyword">public</span>: |
33 | | <a name="l00036"></a>00036 ivec <a class="code" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19" title="Returns indexes of particles that should be resampled.">resample</a>(RESAMPLING_METHOD method = SYSTEMATIC); |
34 | | <a name="l00037"></a>00037 <span class="comment">//TODO get them on the web</span> |
35 | | <a name="l00038"></a>00038 }; |
36 | | <a name="l00039"></a>00039 |
37 | | <a name="l00046"></a><a class="code" href="classTrivialPF.html">00046</a> <span class="keyword">class </span><a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> : <span class="keyword">public</span> <a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> { |
38 | | <a name="l00047"></a>00047 Array<vec> ptcls; |
39 | | <a name="l00048"></a>00048 |
40 | | <a name="l00049"></a>00049 <span class="keywordtype">bool</span> is_proposal; |
41 | | <a name="l00050"></a>00050 <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *prop; |
42 | | <a name="l00051"></a>00051 <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *par; |
43 | | <a name="l00052"></a>00052 <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *obs; |
44 | | <a name="l00053"></a>00053 |
45 | | <a name="l00054"></a>00054 <span class="keyword">public</span>: |
46 | | <a name="l00055"></a>00055 <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &prop, <span class="keywordtype">int</span> n0); |
47 | | <a name="l00056"></a>00056 <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &obs, <span class="keywordtype">int</span> n0); |
48 | | <a name="l00057"></a>00057 <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(<span class="keyword">const</span> vec &dt, <span class="keywordtype">bool</span> evalll); |
49 | | <a name="l00058"></a>00058 }; |
50 | | <a name="l00059"></a>00059 |
51 | | <a name="l00060"></a>00060 <span class="keyword">class </span>MPF : <span class="keyword">public</span> <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> { |
52 | | <a name="l00061"></a>00061 Array<BM> Bms; |
53 | | <a name="l00062"></a>00062 <span class="keyword">public</span>: |
54 | | <a name="l00063"></a>00063 MPF(<a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> &B, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &prop, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &par); |
55 | | <a name="l00064"></a>00064 <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(vec &dt); |
56 | | <a name="l00065"></a>00065 }; |
57 | | <a name="l00066"></a>00066 |
58 | | <a name="l00067"></a>00067 <span class="preprocessor">#endif // KF_H</span> |
59 | | <a name="l00068"></a>00068 <span class="preprocessor"></span> |
| 31 | <a name="l00033"></a>00033 Uniform_RNG URNG; <span class="comment">//used for resampling</span> |
| 32 | <a name="l00034"></a>00034 |
| 33 | <a name="l00035"></a>00035 <span class="keyword">public</span>: |
| 34 | <a name="l00037"></a>00037 ivec <a class="code" href="classPF.html#a0e26b2f6a5884aca49122f3e4f0cf19" title="Returns indexes of particles that should be resampled. The ordering MUST guarantee...">resample</a>(RESAMPLING_METHOD method = SYSTEMATIC); |
| 35 | <a name="l00038"></a>00038 <a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> (vec w); |
| 36 | <a name="l00039"></a>00039 <span class="comment">//TODO remove or implement bayes()!</span> |
| 37 | <a name="l00040"></a><a class="code" href="classPF.html#eb06bd7d4325f22f54233967295793b9">00040</a> <span class="keywordtype">void</span> <a class="code" href="classPF.html#eb06bd7d4325f22f54233967295793b9" title="Incremental Bayes rule.">bayes</a>(<span class="keyword">const</span> vec &dt, <span class="keywordtype">bool</span> evell){}; |
| 38 | <a name="l00041"></a>00041 }; |
| 39 | <a name="l00042"></a>00042 |
| 40 | <a name="l00049"></a><a class="code" href="classTrivialPF.html">00049</a> <span class="keyword">class </span><a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> : <span class="keyword">public</span> <a class="code" href="classPF.html" title="A Particle Filter prototype.">PF</a> { |
| 41 | <a name="l00050"></a>00050 Array<vec> ptcls; |
| 42 | <a name="l00051"></a>00051 |
| 43 | <a name="l00052"></a>00052 <span class="keywordtype">bool</span> is_proposal; |
| 44 | <a name="l00053"></a>00053 <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *prop; |
| 45 | <a name="l00054"></a>00054 <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *par; |
| 46 | <a name="l00055"></a>00055 <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> *obs; |
| 47 | <a name="l00056"></a>00056 |
| 48 | <a name="l00057"></a>00057 <span class="keyword">public</span>: |
| 49 | <a name="l00058"></a>00058 <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &prop, <span class="keywordtype">int</span> n0); |
| 50 | <a name="l00059"></a>00059 <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a>(<a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &par, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &obs, <span class="keywordtype">int</span> n0); |
| 51 | <a name="l00060"></a>00060 <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(<span class="keyword">const</span> vec &dt, <span class="keywordtype">bool</span> evalll); |
| 52 | <a name="l00061"></a>00061 }; |
| 53 | <a name="l00062"></a>00062 |
| 54 | <a name="l00063"></a>00063 <span class="keyword">class </span>MPF : <span class="keyword">public</span> <a class="code" href="classTrivialPF.html" title="Trivial particle filter with proposal density that is not conditioned on the data...">TrivialPF</a> { |
| 55 | <a name="l00064"></a>00064 Array<BM> Bms; |
| 56 | <a name="l00065"></a>00065 <span class="keyword">public</span>: |
| 57 | <a name="l00066"></a>00066 MPF(<a class="code" href="classBM.html" title="Bayesian Model of the world, i.e. all uncertainty is modeled by probabilities.">BM</a> &B, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &prop, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &obs, <a class="code" href="classmpdf.html" title="Conditional probability density, e.g. modeling some dependencies.">mpdf</a> &par); |
| 58 | <a name="l00067"></a>00067 <span class="keywordtype">void</span> <a class="code" href="classTrivialPF.html#77a92bf054d763f806d27fc37a058389" title="Incremental Bayes rule.">bayes</a>(vec &dt); |
| 59 | <a name="l00068"></a>00068 }; |