JointParticleFilter

Below is a browsable image of the model.

  • For an executable version,
  • To view or save the MoML file for this model, click here.
JointParticleFiltermodel <h2>DE Director</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>startTime</td><td>&nbsp;</td><td>null</td></tr><tr><td>stopTime</td><td>5</td><td>5.0</td></tr><tr><td>stopWhenQueueIsEmpty</td><td>true</td><td>true</td></tr><tr><td>synchronizeToRealTime</td><td>false</td><td>false</td></tr><tr><td>enforceMicrostepSemantics</td><td>false</td><td>false</td></tr></table> <h2>Robot2</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>initialPosition</td><td>{x=-10.0, y=0.0}</td><td>{x = -10.0, y = 0.0}</td></tr><tr><td>currentPosition</td><td>{x = 10.0, y = 0.0}</td><td>{x = 10.0, y = 0.0}</td></tr></table> <h2>Robot1</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>initialPosition</td><td>{x=10.0, y=0.0}</td><td>{x = 10.0, y = 0.0}</td></tr><tr><td>currentPosition</td><td>{x = 10.0, y = 0.0}</td><td>{x = 10.0, y = 0.0}</td></tr></table> <h2>Particle Visualization</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>Nparticles</td><td>1000</td><td>1000</td></tr><tr><td>target_pos</td><td>{x = 0.0, y = 5.0}</td><td>{x = 0.0, y = 5.0}</td></tr></table> <h2>Controller2</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>A</td><td>A</td><td>0</td></tr><tr><td>freq</td><td>freq</td><td>0.02</td></tr><tr><td>control_input</td><td>{x = 0.0, y = 0.0}</td><td>{x = 0.0, y = 0.0}</td></tr></table> <h2>Controller</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>A</td><td>A</td><td>0</td></tr><tr><td>freq</td><td>freq</td><td>0.02</td></tr><tr><td>control_input</td><td>{x = 0.0, y = 0.0}</td><td>{x = 0.0, y = 0.0}</td></tr></table> <h2>Robot2PF</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>stateVariableNames</td><td>{&quot;x&quot;,&quot;y&quot;}</td><td>{&quot;x&quot;, &quot;y&quot;}</td></tr><tr><td>bootstrap</td><td>true</td><td>true</td></tr><tr><td>lowVarianceSampler</td><td>true</td><td>true</td></tr><tr><td>particleCount</td><td>Nparticles</td><td>2000</td></tr><tr><td>outputParticleCount</td><td>100</td><td>100</td></tr><tr><td>processNoise</td><td>multivariateGaussian({0.0,0.0},[1.0,0.4;0.4,1.2])</td><td>{0.92624082673, 2.0205803954524}</td></tr><tr><td>prior</td><td>{random()*40-20,random()*40-20}</td><td>{6.0016571790906, -2.6372246307758}</td></tr><tr><td>measurementCovariance</td><td>[0.5]</td><td>[0.5]</td></tr><tr><td>x</td><td>-19.37805531190666</td><td>-19.3780553119067</td></tr><tr><td>y</td><td>-7.97912321478309</td><td>-7.9791232147831</td></tr><tr><td>z1</td><td>sqrt( (robot_position2.x-x)^2+(robot_position2.y- y)^2)</td><td>12.3131770355937</td></tr><tr><td>x_update</td><td>x</td><td>-19.3780553119067</td></tr><tr><td>y_update</td><td>y</td><td>-7.9791232147831</td></tr><tr><td>z1_m</td><td>11.1830228974539</td><td>11.1830228974539</td></tr><tr><td>robot_position2</td><td>{x = -10.0, y = 0.0}</td><td>{x = -10.0, y = 0.0}</td></tr></table> <h2>Robot1PF</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>stateVariableNames</td><td>{&quot;x&quot;,&quot;y&quot;}</td><td>{&quot;x&quot;, &quot;y&quot;}</td></tr><tr><td>bootstrap</td><td>true</td><td>true</td></tr><tr><td>lowVarianceSampler</td><td>true</td><td>true</td></tr><tr><td>particleCount</td><td>Nparticles</td><td>2000</td></tr><tr><td>outputParticleCount</td><td>100</td><td>100</td></tr><tr><td>processNoise</td><td>multivariateGaussian({0.0,0.0},[1.0,0.4;0.4,1.2])</td><td>{0.5739777373028, -2.7758952439943}</td></tr><tr><td>prior</td><td>{random()*40-20,random()*40-20}</td><td>{16.5957956518441, -5.927066173267}</td></tr><tr><td>measurementCovariance</td><td>[0.5]</td><td>[0.5]</td></tr><tr><td>x</td><td>1.5170043494322514</td><td>1.5170043494323</td></tr><tr><td>y</td><td>-4.80729265960219</td><td>-4.8072926596022</td></tr><tr><td>z1</td><td>sqrt( (robot_position1.x-x)^2+(robot_position1.y- y)^2)</td><td>9.7504501394867</td></tr><tr><td>x_update</td><td>x</td><td>1.5170043494323</td></tr><tr><td>y_update</td><td>y</td><td>-4.8072926596022</td></tr><tr><td>z1_m</td><td>11.1456880445923</td><td>11.1456880445923</td></tr><tr><td>robot_position1</td><td>{x = 10.0, y = 0.0}</td><td>{x = 10.0, y = 0.0}</td></tr></table> <h2>Joint PF</h2><table border="1"><tr><td><b>Parameter</b></td><td><b>Expression</b></td><td><b>Value</b></td></tr><tr><td>stateVariableNames</td><td>{&quot;x&quot;,&quot;y&quot;}</td><td>{&quot;x&quot;, &quot;y&quot;}</td></tr><tr><td>bootstrap</td><td>true</td><td>true</td></tr><tr><td>lowVarianceSampler</td><td>true</td><td>true</td></tr><tr><td>particleCount</td><td>Nparticles</td><td>2000</td></tr><tr><td>outputParticleCount</td><td>100</td><td>100</td></tr><tr><td>processNoise</td><td>multivariateGaussian({0.0,0.0},[1.0,0.4;0.4,1.2])</td><td>{0.6003072174588, -1.1060824236731}</td></tr><tr><td>prior</td><td>{random()*40-20,random()*40-20}</td><td>{1.9325224973388, 9.2471647938205}</td></tr><tr><td>measurementCovariance</td><td>[0.5]</td><td>[0.5]</td></tr><tr><td>x</td><td>0.13244436872929874</td><td>0.1324443687293</td></tr><tr><td>y</td><td>-2.5942856731415134</td><td>-2.5942856731415</td></tr><tr><td>z2</td><td>sqrt( (robot_position2.x-x)^2+(robot_position2.y- y)^2)</td><td>10.4592899873396</td></tr><tr><td>z1</td><td>sqrt( (robot_position1.x-x)^2+(robot_position1.y- y)^2)</td><td>10.2028903890069</td></tr><tr><td>x_update</td><td>x</td><td>0.1324443687293</td></tr><tr><td>y_update</td><td>y</td><td>-2.5942856731415</td></tr><tr><td>z1_m</td><td>11.1456880445923</td><td>11.1456880445923</td></tr><tr><td>z2_m</td><td>11.1830228974539</td><td>11.1830228974539</td></tr><tr><td>robot_position1</td><td>{x = 10.0, y = 0.0}</td><td>{x = 10.0, y = 0.0}</td></tr><tr><td>robot_position2</td><td>{x = -10.0, y = 0.0}</td><td>{x = -10.0, y = 0.0}</td></tr></table>