Word smithing.

Just trimming the flab.
This commit is contained in:
Roger Labbe committed 2016-01-12 20:57:13 -08:00
1 parent ffaee9b080
commit 5921b20f87
2 files changed
+117 -125

No files matched your search

+39 -39
View File
@@ -298,9 +298,9 @@
"outputs": [
{
"data": {
"image/png": "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 truncated
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtgAAAFfCAYAAAB0jrv4AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlYVGX/P/D3OcO+OIACimyi4L4DIoZbYuG+pJaaP/Mp\n20zLtqdF08rM0qey0na3stRyTzRLBRcUQSXFDUVF2WTf15nz+8Ovk9OACsxwZob367q4gvs+y/s4\nNHy4uc+5BUmSJBARERERkV6IcgcgIiIiIjInLLCJiIiIiPSIBTYRERERkR6xwCYiIiIi0iMW2ERE\nREREesQCm4iIiIhIj1hgExERERHpEQtsMiqiKEKhUMgd475Nnz4doigiOjpa7ihERERkJFhgEzWA\nIAgQBEHuGERERGREWGATNQAXQiUiIqJ/Y4FNRu/atWsQRRGDBw9GTk4OZs6cCQ8PD9jY2KBLly5Y\nvXq1zj5RUVEQRREzZszAuXPnMGrUKDRv3hwODg7o378//vrrL519FixYcNfpHrcz3NamTRusXbsW\nADBw4ECIomhyU1yIiIhI/yzkDkB0v/Lz89GvXz9YW1tjwoQJqKiowKZNmzBjxgwoFAo8/vjjOvsk\nJycjNDQUPXr0wDPPPIPU1FRs3LgRDz30EDZt2oSxY8dqtq3rdI+XXnoJq1atwt9//43p06fD19dX\ncxwiIiJqulhgk8lISEjAk08+ia+++kpTxM6ZMwfdunXDkiVLaiywDx48iFdffRUffvihpu35559H\naGgoZs6ciYceegh2dnb1yjN79mycPHlSU2D379+/fhdGREREZoVTRMhk2NnZYdmyZVojxB07dkS/\nfv1w7tw5lJaW6uyjVCoxb948rbagoCBMnDgRubm52LZtm8FzExERUdPCAptMhr+/PxwcHHTavby8\nAAB5eXk6fb169YK9vb1O+4ABAyBJEk6ePKn/oERERNSkscAmk+Hk5FRju4XFrZlOKpVKp8/d3b3G\nfW63FxQU6CkdERER0S0ssMmsZWZm3rVdqVRq2kTx1v8O1dXVOtuzECciIqL7xQKbzNqJEydQUlKi\n037gwAEIgoCePXtq2pydnQEA169f19k+Nja2xuPffiRfTaPnRERE1DSxwCazVlBQgIULF2q1HTt2\nDJs2bYKLiwtGjx6tae/Tpw8kScL333+vNYqdnZ2N1157rcbH7zVv3hwAkJKSYqArICIiIlPDx/SR\n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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x73b6e10>"
"<matplotlib.figure.Figure at 0x7f4f4e0>"
]
},
"metadata": {},
@@ -361,7 +361,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x73b6ac8>"
"<matplotlib.figure.Figure at 0x7798a20>"
]
},
"metadata": {},
@@ -409,14 +409,14 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Difference in mean x=0.043, y=42.877\n"
"Difference in mean x=0.005, y=43.645\n"
]
},
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x86e9f60>"
"<matplotlib.figure.Figure at 0x8aceb00>"
]
},
"metadata": {},
@@ -484,7 +484,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x4e22358>"
"<matplotlib.figure.Figure at 0x4c01198>"
]
},
"metadata": {},
@@ -535,7 +535,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x87783c8>"
"<matplotlib.figure.Figure at 0x8bc79b0>"
]
},
"metadata": {},
@@ -587,7 +587,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x87a2550>"
"<matplotlib.figure.Figure at 0x8bf1ac8>"
]
},
"metadata": {},
@@ -643,7 +643,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x89c51d0>"
"<matplotlib.figure.Figure at 0x9bf3208>"
]
},
"metadata": {},
@@ -871,7 +871,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x89987b8>"
"<matplotlib.figure.Figure at 0x9bc7128>"
]
},
"metadata": {},
@@ -1002,7 +1002,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a73a58>"
"<matplotlib.figure.Figure at 0xa0bceb8>"
]
},
"metadata": {},
@@ -1127,7 +1127,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a75f60>"
"<matplotlib.figure.Figure at 0xa9bf0f0>"
]
},
"metadata": {},
@@ -1197,7 +1197,7 @@
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAr8AAADVCAYAAABe6Zj7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmczXX///HnOWOYjTGILGPLRXYyxiAmCVmzX0WWUSJF\nV5KERFf1ra4rS3W1yJq6+IWUb4SrfBlCxjqV7TKTJUW2mbKM2T6/P97NHMc5wwwzc2bmPO6329zM\neX+29zncmmfveb/eb5tlWZYAAAAAL2D3dAcAAACA/EL4BQAAgNcg/AIAAMBrEH4BAADgNQi/AAAA\n8BqEXwAAAHgNwi+AImfq1Kmy2+2Kjo72dFcKjbCwMNntdp07d+6G5168eFF2u109evTIh54BQO4i\n/ALIVXa73enLx8dHISEhat26td555x2lpqbmeR9sNptsNlueP8eddu3auXwG1/saNmyYR/p5rZx+\nZp78jAHgVhTzdAcAFD02m01Tp06VZVlKTU3V0aNH9dlnn2nr1q365ptvtGLFCk93Mc9ERUWpXbt2\nTm0bNmzQxo0bFRkZqXvuucfpWJMmTfKxd7kjMDBQ+/fvV1BQkKe7AgA5RvgFkCdeeOEFl9dNmzbV\nypUrtWnTJrVp08ZDPctbgwcPdmmzLEsbNmzQPffcoylTpnigV7mvdu3anu4CANwUpj0AyBe1atVS\nZGSkJCkmJsbl+IIFC9S3b1/dcccdCggIUHBwsO6++24tWrQoy3vu3LlT999/v0qVKqXg4GB16NBB\n27Zty/L8zz//XIMGDVKdOnUUFBSkoKAgNWvWTLNmzVJ6errL+UOHDs2cO7xo0SKFh4crKChId911\n1018Atc3btw42e12ffbZZ1qxYoXuvvtulSpVSlWrVs08Z/bs2erZs6dq1qypgIAAlS5dWpGRkfr0\n00+zvO+ZM2c0YcIE1a9fX4GBgSpdurSaNGmi559/XpcuXbphv3bt2qWKFSsqJCRE69evl5T1nN+r\n38OaNWvUpk0blSxZUqVLl1avXr0UFxfn9hn79u1Tjx49FBISopIlS6pt27b65ptv9M4772TeDwBy\nCyO/APKNZVmSJF9fX5djo0aNUoMGDRQZGamKFSvq7NmzWr16tYYMGaKDBw/q5Zdfdjp/y5Yt6tCh\ng5KTk9WnTx/VqlVLsbGxuueee3Tvvfe6ff7zzz8vHx8fRUREqHLlykpMTNT69ev19NNPKyYmRh9/\n/LHT+RnzWv/xj39o/fr16tGjh+677z4lJyfn0ifi+qz58+dr3bp16t69u9q2bavz589LktLS0jRy\n5Ei1aNFC9957rypUqKDTp0/ryy+/1IMPPqj4+HhNmDDB6Z4HDhxQ+/btdfLkSTVv3lxPPPGE0tLS\ndOjQIc2cOVPDhw9XzZo1s+zTmjVr1L9/f5UuXVr/+c9/1KBBg2y9hyVLlujzzz9X9+7dNWrUKO3d\nu1dffPGFdu7cqX379jlNl9i7d6/atGmjS5cuqUePHqpXr54OHTqkLl26qHPnzswrBpD7LADIRTab\nzbLb7S7t+/btswIDAy273W7t2rXL5Xh8fLxLW0pKitW+fXvL19fXOnHihNOxOnXqWHa73VqxYoVT\n+7vvvpvZh40bN97wGZZlWUOGDLHsdrv13XffObUPHTrUstlsVlBQkBUbG+v+DWfD1KlTLZvNZk2b\nNi3Lc8aNG2fZbDbL19fX2rx5s9tzfvrpJ5e2pKQkq1WrVpa/v7919uxZp2ONGze27Ha7NXPmTJfr\nzp07ZyUlJWW+DgsLs+x2e+Y95s6da/n6+lqNGjVy+ewvXLhg2Ww2q3v37m7fg5+fn7Vt2zanY6NH\nj7bsdrv13nvvObWHh4dbdrvdWrhwoVP78uXLM/8ely9f7vbzAICbwbQHAHli2rRpmjZtml544QUN\nGjRIYWFhunz5sp599lk1bdrU5fwaNWq4tBUrVixztDLjV+6SGfU9dOiQWrdurZ49ezpdM3LkSNWq\nVcttn9w9Q5LGjBkjy7K0bt06l2M2m00jRoxQw4YNr/t+c8uAAQPUunVrt8eqV6/u0laiRAmNHDlS\nV65ccVraLTo6WrGxsYqIiNBTTz3lcl1ISIhKlCjh9jlTp07Vo48+qrZt22rTpk2qVKlSjt7DsGHD\n1KJFC6e2xx57TJZlafv27ZltBw8eVExMjOrXr+8yV7p3794u9wCA3MC0BwB54qWXXnJpe/nll/X8\n88+7Pf/48eN67bXXtH79eh07dkyXL1/OPGaz2XTixInM17t27ZIktW3b1uU+NptNd999t9v5pefO\nndMbb7yhr776SvHx8bp48WKWz7ha8+bNs3iXuctms133WfHx8Xr99de1YcMG/fzzz9f9jDLmPnfq\n1ClHfRg+fLhWrFihgQMHav78+SpWLGc/Jmw2m5o1a+bSHhoaKkmZ0zgkaffu3ZKkVq1aub1XmzZt\nnMIyAOQGwi+APJGWliZJSkpKUkxMjEaMGKHJkyerRo0aevDBB53O/emnn9S8eXMlJiaqTZs26tSp\nk4KDg+Xj46MjR45o4cKFunLlSub5iYmJstlsqlChgttnu2tPTExUWFiYjh49qvDwcA0ZMkRlypRR\nsWLFlJCQoJkzZzo942q33377zX4MOZbVs/bv36+WLVvq0qVLuueee9SlSxeVKlVKPj4+OnTokBYv\nXuzU/4SEBNlsNlWuXDlHz4+OjpbNZlO3bt1yHHwzlC5d2qUt414Z/y4k83ciuf/7ul47ANwKwi+A\nPOXn56c2bdroq6++Uv369TVixAi1a9fOKdi8+eabOn/+vBYsWKBBgwY5Xb9kyRItWLDAqS04OFiW\nZenUqVNun+mu/cMPP9SRI0cyp2Jcbdu2bZo5c2aW7yE/i66yetbrr7+uP/74Q8uWLVOvXr2cjs2Z\nM0f//ve/ndpKly4ty7KyHM3OyurVq9W/f389/PDDunLlitul23JLqVKlJLn/+7peOwDcCub8AsgX\n1apV03PPPac//vjDZa3bjCkKvXv3drluw4YNLoEwY6mxjRs3upxvWZY2b97s0h4XFyebzZblMwq6\nuLg42e12PfDAAy7H3H1GERERksyKDTlxxx13KDo6WjVr1lRUVJRmz559852+gYy531u2bHF7fNOm\nTXn2bADei/ALIN88/fTTKleunBYsWKDDhw9ntmcUcl0bQteuXau5c+e63KdVq1aqU6eOtmzZ4rIG\n7Lvvvut076ufYf252cTVdu/erddeey3PR3dv9f7Vq1dXenq6SyBcsWKFFi9e7HJ+27Zt1bhxY333\n3XduR7XPnz+vpKQkt88KDQ1VdHS06tWrp5EjR+rtt9++pb5n5c4771RYWJh+/PFHl9H9ZcuW6bvv\nvsuT5wLwboRfAPkmKChIEyZMUEpKitPUg1GjRsnX11d9+/bVoEGD9Nxzz6lr167q2rWr+vXrl7k+\n8NXmzp0rf39/9e/fX/3799ekSZPUvXt3jRs3Tp07d3Y5f/DgwSpTpoyeeuop9enTRxMmTFCfPn0U\nERGhLl26uH1GbsrO/a93zujRo+Xj46MuXbpo6NChGj9+vDp16qR+/fqpf//+bq9dsmSJKlasqGee\neUYREREaP368xo0bpwceeEBVqlTRL7/8kuXzKlSooI0bN6pp06Z66qmn9Nprr+Xa+7zaBx98oKCg\nID3yyCPq1auXJk+enDntImMTDbudH1UAcg//RQGQ6643yjlq1ChVqlRJy5Yt0969eyVJDRs21IYN\nG9S6dWutXr1a77//vv744w+tWLFCI0aMyNw84WqtWrXSpk2b1LFjR61du1bvvPOOkpOTtWHDBoWH\nh7s8t2LFitq8ebO6deumb7/9Vv/617907Ngxvf/++/qf//kft8/ITdm5//WOh4eH6+uvv1bz5s21\ncuVKzZ49W8nJyVq9erUefvhht9fWqVNHe/bs0TPPPKOEhAS98847mjdvno4fP66xY8e6FNdde48y\nZcpo/fr1ioiI0KRJkzR16tQbvp/rvQd31zRt2lRbtmxRt27dtGHDBr311ls6deqUVq9enTktImNu\nMADkBpuV18MdAADchAceeEBffvmljh8/nuO1hgEgK4z8AgA8Ji0tTWfOnHFp/9///V99+eWXCg8P\nJ/gCyFUsdQYA8JgLFy6ocuXKat++verUqSObzabY2FitX79eQUFBeVZsB8B7Me0BAOAxKSkpGjt2\nrNavX68TJ07o8uXLKl++vNq1a6fnn39edevW9XQXARQxWYbfjJ13AAAAgMIoODjYpY05vwAAAPAa\nhF8AAAB4jWwVvLkbMgYAAAAKmhtN3WXkFwAAAF6D8AsAAACvQfgFAACA1yD8AgAAwGsQfgEAAOA1\nCL8AAADwGoRfAAAAeA3CLwAAALwG4RcAAABeg/ALAAAAr0H4BQAAgNcg/AIAAMBrEH4BAADgNQi/\nAAAA8BqEXwAAAHgNwi8AAAC8BuEXAAAAXoPwCwAAAK9B+AUAAIDXIPwCAADAaxB+AQAA4DUIvwAA\nAPAahF8AAAB4DcIvAAAAvAbhFwAAAF6D8AsAAACvQfgFAACA1yD8AgAAwGsQfgEAAOA1CL8AAADw\nGoRfAAAAeA3CLwAAXsBulz77zHPP/+ILqXZtqXhxadgwz/UDIPwCAFBE7N4tFSsmtWnjeuzkSal7\n9/zvU4ZHH5X69ZOOHZNmzZIWLpRKlvRcf+C9CL8AABQRc+ZITzwh/fCDdPCg87Hy5SVf36yvTU3N\n+fNSUrJ3XkKCdPas1LGjdPvtJvRalmSz5fyZwK0i/AIAUAQkJUn//rf02GNSnz4mCF/t6mkPR4+a\n10uWSO3bS4GB0uzZ5ti2baYtKEgqXVq67z4zaixJ7dpJo0ZJzz5rwvTdd5v2GTOkxLine truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x89b8160>"
"<matplotlib.figure.Figure at 0xa0a2e80>"
]
},
"metadata": {},
@@ -1374,7 +1374,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x89c5278>"
"<matplotlib.figure.Figure at 0x9bf3128>"
]
},
"metadata": {},
@@ -1384,7 +1384,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8396f28>"
"<matplotlib.figure.Figure at 0x9ba0240>"
]
},
"metadata": {},
@@ -1394,7 +1394,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x83ae4e0>"
"<matplotlib.figure.Figure at 0x9bd58d0>"
]
},
"metadata": {},
@@ -1481,7 +1481,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x856f208>"
"<matplotlib.figure.Figure at 0x87f3908>"
]
},
"metadata": {},
@@ -1584,7 +1584,7 @@
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAwsAAADxCAYAAACERytYAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlcVNf5+PHPAAPINoiCqChuKIi7iCBuKKCAitk1RpKG\nX6qtscTY2qZtNGmbxTZtQkyTaL+1QRKXrBojLhBFoiMouCOiqIioLKKAyD5zf39YbzIFF5QRTJ73\n65VXnHPPPfe5RxLmufcsGkVRFIQQQgghhBDif1i0dgBCCCGEEEKItkmSBSGEEEIIIUSTJFkQQggh\nhBBCNEmSBSGEEEIIIUSTJFkQQgghhBBCNEmSBSGEEEIIIUSTJFkQQgghhBBCNKlVk4U33ngDf39/\ndDodbm5uTJs2jaysrEb1Tpw4wSOPPEL79u2xt7fHz8+PnJwc9XhdXR3z58/H1dUVBwcHoqKiOH/+\nvEkbZWVlzJ49G2dnZ5ydnYmOjqa8vNzs9yiEEEIIIcSDqlWThdTUVJ5//nn27NnDjh07sLKyIiQk\nhLKyMrVOXl4eo0ePpnfv3qSkpJCVlcVf/vIXHBwc1DqxsbF89dVXrFu3jl27dlFRUcGUKVP44X5z\nM2fO5ODBg2zbto2tW7eyf/9+oqOj7+v9CiGEEEII8SDRtKUdnK9du4ZOp2PDhg1ERkYCMGvWLCws\nLEhISGjynIqKClxdXYmPj2fGjBkAFBQU4OnpyZYtWwgNDSU7OxtfX1/0ej0BAQEA7N69mzFjxpCT\nk4OXl9f9uUEhhBBCCCEeIG1qzkJFRQVGo5H27dsDoCgKGzdupH///oSHh+Pm5oa/vz+ffvqpek5m\nZiYNDQ2EhoaqZR4eHvj4+KDX6wFIS0vD0dFRTRQAgoKCsLe3V+sIIYQQQgghTLWpZCE2NpZhw4YR\nGBgIQHFxMZWVlbz++utMnjyZ5ORkZs6cyaxZs9i8eTMAhYWFWFpa0qFDB5O2OnXqRGFhoVrH1dW1\n0fXc3NzUOkIIIYQQQghTVq0dwA0vvvgier2e3bt3o9FoADAajQBMnz6d2NhYAAYNGkRGRgbvvfce\n4eHhZolFJj4LIYQQQogHmU6na5F22sSbhQULFrBu3Tp27NiBp6enWt6xY0esrKzw8fExqe/j40N+\nfj4A7u7uGAwGSktLTeoUFRXh7u6u1ikpKWl03eLiYrWOEEIIIYQQwlSrJwuxsbFqovC/E421Wi0j\nRowwWSYVri+leiOpGD58OFZWViQlJanHCwoKyM7OJigoCIDAwEAqKytJS0tT6+j1eqqqqhg1apS5\nbk0IIYQQQogHWqsOQ5o3bx4ff/wxGzZsQKfTUVRUBICDgwP29vYALFq0iCeeeILRo0czYcIEtm/f\nzrp169iwYQMATk5OxMTEsGjRIlxdXXFxcWHhwoUMGTKEiRMnAuDt7c2kSZOYM2cOy5cvR1EU5s6d\ny9SpU2+7ElJLvcIRkJGRAYCfn18rR/LjIv1qHtKv5iH9ah7Sr+Yh/Wo+99K3ly9fZtu2bXTu3Jlx\n48a1dGgPNHMMpW/VZOGDDz5Ao9GoX+pvWLJkCYsXLwYgKiqKFStW8Nprr/HCCy/g5eVFQkICkydP\nVuvHxcWh1WqZMWMG1dXVhISEkJCQoM59AFizZg3z589Xz4uKimLZsmX34S6FEEIIIcTdUhSFw4cP\nk5iYSGJiInq9HqPRyMMPPyzJwn3QqsnCjQnMtxMdHX3LDdS0Wi1xcXHExcXdtI5Op2PVqlXNjlEI\nIYQQQrSe5ORkwsLC1M9WVlaMHz+ekJCQVozqp6PNrIYkhBBCCCF+mhRFIS8vj549ezY6Nnr0aHr3\n7s348eOJiIggJCQEJyenVojyp0mSBSGEEEIIcd9VV1fzzTffqMOLzp07R0lJCS4uLib12rVrR25u\nbitFKSRZEEIIIYQQ99Urr7xCUlISdXV1apmrqysnTpwgICCgFSMT/0uSBSGEEEIIcV9ZWFhQX1+P\nv78/ERERREREMHz4cCwsWn1Vf/E/JFkQQgghhBAtJi8vj82bN5OYmMi0adN47rnnGtV57rnneP75\n500mLou2SZIFIYQQQgihqm+o48Kls3R17YGVpfaOzjl58iTLly8nMTGR7Ozs79uqr28yWejcuXOL\nxSvMS5IFIYQQQggBwOFTaXye8i/KKktx1XXmmYjf0M2t123Pu3jxIn//+98BcHR0JCwsjIiICJN9\nscSDSZIFIYQQQoifuCtXS/g85V8cOb1XLSspv8g/Pl3EQ2OeJbB/KOnp6WRmZhIbG9vo/MDAQF56\n6SXCwsIICgpCq72zNxKi7ZNkQQghhBDiJ8pgNJB6cBOb0lZTV19jcqzqag1ns4v55t/PceHkZaqu\nXT/+2GOP0aVLF5O6Wq2W119//b7FLe6fVp1y/sYbb+Dv749Op8PNzY1p06aRlZV10/pz5szBwsKC\nf/zjHybldXV1zJ8/H1dXVxwcHIiKiuL8+fMmdcrKypg9ezbOzs44OzsTHR1NeXm5We5LCCGEEKKt\nO1t4kr+v/Q1ffbfSJFEI9A1l4RN/Zf176SSvPkDuwQtUXauhQycdzz73NEajsRWjvs6oGDEYGlo7\njJ+EVn2zkJqayvPPP4+fnx+KovDyyy8TEhJCdnY2zs7OJnU///xz9u3bR9euXRu1Exsby8aNG1m3\nbh0uLi4sWLCAKVOmsH//fjQaDQAzZ86koKCAbdu2oSgKMTExREdHs2HDhvtyr0IIIYQQbUF1bRWb\n9nzCd4cSqaqsAY2GdvbWuLt044kJv6B31/4APP3Us+zYtQ1HDw09fDqh62iPhcVVThRn0KVrFyw0\nrfPMOSf/EOt3fcQwr9GEjnikVWL4KWnVZGHz5s0mnxMSEtDpdOzevZvIyEi1/OzZsyxYsIDk5ORG\nE2UqKipYuXIl8fHxTJgwQW3H09OT5ORkQkNDyc7OZuvWrej1evz9/QFYvnw5Y8aM4eTJk3h5eZn5\nToUQQgghWpeiKOzP2cU/V/2VrP0nycsuovhcGaOnDOTllxczYViUyepHf3/r+oTlQ7l7WJ20jOq6\nKoxGA+u/+4iT544yK+xXOLRzum/xX7h0lq93xXPs7H4ASsuLCPANwdFOd99i+ClqUztfVFRUYDQa\nad++vVpmMBh48sknefnll+nXr1+jczIzM2loaCA0NFQt8/DwwMfHB71eD0BaWhqOjo4mOwIGBQVh\nb2+v1hFCCCGE+LEqrSjiF7+fxWi/EP7zxjfs3ZpDcX4ZVlaWDPIMImzEozddJnVwn0AWPfk2np2+\nf7ialZfB0tULOHX+5sPHW0p55WVWJ7/H0tUL1EQBwGBsIL/opNmv/1PXpiY4x8bGMmzYMAIDA9Wy\nxYsX4+bmxs9//vMmzyksLMTS0pIOHTqYlHfq1InCwkK1jqura6Nz3dzc1Do3k5GR0dzbELchfWoe\n0q/mIf1qHtKv5iH9ah4Pcr8ajQayL+7lUH4qV+qKqblWh5OLHb0GdGVScCQREx7Czs7uju5xdK9H\nsbfcwbELaQCUV5by7ud/ZHD3cQzwGHVXw5Judd16Qx1Z5/dw7HwaDcZ6tVyDht5ugxnSfRzVpZBR\n+uD+/bQ0c4yWaTPJwosvvoher2f37t3qPIOUlBTi4+M5dOhQK0cnhBBCCNF2lZWVkZ6ejl6v5+LF\ni6xYsYKSqwWk5SZypaoYADcPZ2a9NIGRg8YyvMdErK1sm3UNSwtL/HqG4K7zZNfJr6lrqEZB4WB+\nCkXlZxndN4p21g73fC9GxUhu0QEO5qdSU3/N5FgX594M7zGR9vZu93wdcWfaRLKwYMECPv30U1JS\nUvD09FTLd+7cSWFhIe7u7mqZwWBg0aJFvPPOO+Tn5+Pu7o7BYKC0tNTk7UJRURFjx44FwN3dnZKS\nkkbXLS4uNmm7KX5+fvd6e+K/bjw9kD5tWdKv5iH9ah7Sr+Yh/Woebb1fjUYjb7zxBomJiaSlpZms\nUpSWs4WTlzJRUNSyrq49eHHGL+jZ2fueruuHH+MCQ4nf8ndOX7i+W/PF8jNsyfqI6EkL6Nd98G3b\naKpvFUXh6Jl9fL17FUWXC0zqd3XtyfTRz9xR2z9l5ljps9WThdjYWD777DNSUlIavTqZN28ejz32\nmElZWFgYTz75pLp1+PDhw7GysiIpKYkZM2YAUFBQQHZ2NkFBQcD1jUIqKytJS0tT5y3o9XqqqqoY\nNWqUuW9RCCGEEKLFWVhYsHbtWo4ePYpWq2X8+PEMGuFDVbvz5JTsU0dqaK2sCR85g+Ch07C0bJmv\nfu0dOzL/kb+wOW0tSfs+R0HhalUZ73/1CmH+jzJ55AwsLSzvuL38olzWf/cfcv9nDoSzQwemjHoK\nP+9xrbb60k9dqyYL8+bN4+OPP2bDhg3odDqKiooAcHBwwN7eno4dO9KxY0eTc7RaLe7u7mpi4eTk\nRExMDIsWLcLV1RUXFxcWLlzIkCFDmDhxIgDe3t5MmjSJOXPmsHz5chRFYe7cuUydOlVWQhJCCCFE\nm3XixAkSExMJDQ3F19e30fFXX30VCwsLhvgNZHPGJ2Sf3Y8NANcThf49hvPY+J/TQdepxWOztLBk\nyqhZ9OnqS8LWt7laXY6Cwta9n5F7/hhPT34RZ4cOt2yjtKKIb/SfkJmTalJuY92OUL9HGD90KtZW\nNi0eu7hzrZosfPDBB2g0GvVL/Q1Llixh8eLFTZ5zI0v+obi4OLRaLTNmzKC6upqQkBASEhJM6q5Z\ns4b58+erS69GRUWxbNmyFrwbIYQQQoh7U1tbS2pqKps2bWLTpk3k5uYC8Mc//pE///nPjepHTY9i\n+/4NLNvwEvUNdWq5k317Hhn3HEP6BDb53akleXsO4bez3mHVln9wouAIAKfOZ7H0kLine truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x88de710>"
"<matplotlib.figure.Figure at 0x87f3d68>"
]
},
"metadata": {},
@@ -1650,7 +1650,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x87bd978>"
"<matplotlib.figure.Figure at 0xce58828>"
]
},
"metadata": {},
@@ -1733,7 +1733,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a2ca58>"
"<matplotlib.figure.Figure at 0xcea9a90>"
]
},
"metadata": {},
@@ -1815,7 +1815,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8b8a7b8>"
"<matplotlib.figure.Figure at 0x8a78780>"
]
},
"metadata": {},
@@ -1931,7 +1931,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x837f160>"
"<matplotlib.figure.Figure at 0xce5e908>"
]
},
"metadata": {},
@@ -2003,7 +2003,7 @@
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAusAAADaCAYAAAAfQAwcAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl81FWe7/9XpVLZN7JWSEIWCISEPUHWBgkEBUKD0trg\njDhK23P719qgdDNXexpxWi9tTzvcOCNO376DF1FbGruZFlQEbEEwbmHPwp6FBKpC9n2rqt8f2OVk\nghCkshDez8cjD8n3e76nPuc8Cnznm1Pna3A4HA5ERERERKTfcevrAkRERERE5OoU1kVERERE+imF\ndRERERGRfkphXURERESkn1JYFxERERHppxTWRURERET6KYV1EREREZF+6rphfePGjYwdO5bAwEAC\nAwOZOnUq7733nvP8ww8/jJubW6evqVOnduqjra2Nxx9/nLCwMPz8/Fi0aBFlZWWuH42IiIiIyABy\n3bAeExPDr3/9a44cOcKhQ4dIT09n8eLF5ObmOttkZGRgtVqxWCxYLJZOYR5g5cqVbN++na1bt3Lw\n4EHq6urIzMxEz2MSEREREflmhm/zBNOQkBB+9atf8eijj/Lwww9TWVnJO++8c9W2dXV1hIWFsXnz\nZpYuXQpAaWkpsbGx7Nq1i4yMjJsbgYiIiIjIAHVDa9btdjtvvfUWjY2NTJs2zXn84MGDREREMGLE\nCH74wx9y+fJl57lDhw7R0dHRKZRHR0czcuRIsrOzXTAEEREREZGByb07jXJzc5kyZQotLS34+/uz\nfft2kpOTAZg3bx5LliwhPj6eoqIifv7zn5Oens7hw4cxmUxYLBaMRiMhISGd+oyIiMBisbh+RCIi\nIiIiA0S3wnpSUhLHjh2jtraWt99+m+XLl7N//36Sk5O5//77ne1SUlKYMGECsbGxvPvuuyxevPhb\nFVVbW/utrhMRERER6Q8CAwNd0k+3lsG4u7uTkJDA+PHjef755xk3bhwbNmy4atvIyEiio6M5c+YM\nAGazGZvNRmVlZad2VqsVs9l8k+WLiIiIiAxc32qfdbvdTmtr61XPXb58mbKyMiIjIwFITU3F3d2d\nPXv2ONuUlpZSUFDQad27iIiIiIh0dt1lME899RQLFiwgJiaG+vp63njjDfbv3897771HY2Mj69at\nY8mSJURGRlJYWMjTTz+N2WzmnnvuASAgIIAVK1awZs0awsLCCA4OZvXq1YwbN47Zs2dft0BX/QpB\n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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8b8ad68>"
"<matplotlib.figure.Figure at 0xcf416a0>"
]
},
"metadata": {},
@@ -2049,7 +2049,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8bcbc18>"
"<matplotlib.figure.Figure at 0x8c47208>"
]
},
"metadata": {},
@@ -2102,7 +2102,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8922390>"
"<matplotlib.figure.Figure at 0x8ae4240>"
]
},
"metadata": {},
@@ -2143,7 +2143,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x887b5c0>"
"<matplotlib.figure.Figure at 0xce50a58>"
]
},
"metadata": {},
@@ -2581,7 +2581,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a98358>"
"<matplotlib.figure.Figure at 0xcea9d30>"
]
},
"metadata": {},
@@ -2591,7 +2591,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8b27048>"
"<matplotlib.figure.Figure at 0x8b76fd0>"
]
},
"metadata": {},
@@ -2601,7 +2601,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8b21fd0>"
"<matplotlib.figure.Figure at 0x8bb65f8>"
]
},
"metadata": {},
@@ -2687,7 +2687,7 @@
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAvkAAADxCAYAAABRcKg8AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlYVPfZPvB72BcRRGURUEEBBRQVZBFkHzZFQJRE22hN\nfknftzWJyZXXNknj0pha0+S1aV9jWttGGpcIKiqKCKLsIJsiuKICLgjuKOiwzfn9YYOOuKEDZxjv\nz3V5XXC+3zncPD2xjzNnnpEIgiCAiIiIiIjUhobYAYiIiIiISLnY5BMRERERqRk2+UREREREaoZN\nPhERERGRmmGTT0RERESkZtjkExERERGpGTb5RERERERqRqWa/JUrV0JDQwPvvfeewvFly5bBysoK\nBgYGCAwMxPHjx0VKSERERESk+lSmyS8qKsK6devg6uqqcHzVqlVYvXo11qxZg9LSUpiZmUEqlaKl\npUWkpEREREREqk0lmvympib8/Oc/x/fffw8TExOFtW+++QYff/wxYmJi4OTkhISEBNy5cwebNm0S\nKS0RERERkWpTiSb/nXfeQXx8PPz9/RWO19TUoKGhAVKptOuYnp4e/Pz8UFBQ0NcxiYiIiIj6BS2x\nA6xbtw7nzp3D5s2bu601NDRAIpHA3Nxc4bi5uTnq6+v7KiIRERERUb8iapN/+vRpfPrpp8jPz4eG\nxsu/qNDU1KSEVERERERE4jA2NlbKeUS9XaewsBDXr1+Hk5MTtLW1oa2tjezsbKxZswY6OjoYPHgw\nBEFAY2OjwuMaGxthYWEhUmoiIiIiItUmapMfGxuLyspKVFRUdP1xd3fHnDlzUFFRAQcHB1hYWCAj\nI6PrMTKZDLm5ufDx8RExORERERGR6hL1dp2BAwfCyclJ4ZihoSFMTU0xduxYAMCiRYuwcuVKODo6\nwt7eHitWrICRkRHmzJnz1HMr66UOAkpLSwEA7u7uIidRL6xr72Bdewfr2ntY297BuvYO1rV39MYt\n56K/8fZREolE4fvFixdDJpNh4cKFuHnzJjw9PZGeng5DQ0OREhIRERERqTaVa/IPHDjQ7diSJUuw\nZMkSEdIQEREREfU/KjEnn4iIiIiIlIdNPhERERGRmmGTT0RERESkZtjkExERERGpGTb5RERERERq\nhk0+EREREZGaYZNPRERERL3qQn0d/nfNSoTFBGD4aEu0t7eJHUntqdycfCIiIiLq32413cTWXZuR\n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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a7f390>"
"<matplotlib.figure.Figure at 0x9b866a0>"
]
},
"metadata": {},
@@ -2697,7 +2697,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a50630>"
"<matplotlib.figure.Figure at 0xcf6edd8>"
]
},
"metadata": {},
@@ -2707,7 +2707,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x88b07b8>"
"<matplotlib.figure.Figure at 0x9c59ba8>"
]
},
"metadata": {},
@@ -2869,9 +2869,9 @@
"source": [
"It is time to undertake a significant problem. Most books choose simple, textbook problems with simple answers, and you are left wondering how to implement a real world problem. This example will not teach you how to tackle any problem, but illustrates the type of things you will have to consider as you design and implement a filter. \n",
"\n",
"We will consider the problem of robot localization. In this scenario we have a robot that is moving through a landscape with sensors that give range and bearings to various landmarks. This could be a self driving car using computer vision to identify trees, buildings, and other landmarks. It might be one of those small robots that vacuum your house, or a robot in a warehouse.\n",
"We will consider the problem of robot localization. In this scenario we have a robot that is moving through a landscape using a sensor to detect landmarks. This could be a self driving car using computer vision to identify trees, buildings, and other landmarks. It might be one of those small robots that vacuum your house, or a robot in a warehouse.\n",
"\n",
"Our robot has 4 wheels with the same configuration as an automobile. It maneuvers by pivoting the front wheels. This causes the robot to pivot around the rear axle while moving forward. This is nonlinear behavior which we will have to model. \n",
"The robot has 4 wheels in the same configuration used by automobiles. It maneuvers by pivoting the front wheels. This causes the robot to pivot around the rear axle while moving forward. This is nonlinear behavior which we will have to model. \n",
"\n",
"The robot has a sensor that gives it approximate range and bearing to known targets in the landscape. This is nonlinear because computing a position from a range and bearing requires square roots and trigonometry. \n",
"\n",
@@ -2905,7 +2905,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8a81668>"
"<matplotlib.figure.Figure at 0xa9a38d0>"
]
},
"metadata": {},
@@ -3340,7 +3340,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x88d66d8>"
"<matplotlib.figure.Figure at 0xce96668>"
]
},
"metadata": {},
@@ -3430,7 +3430,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x8744d30>"
"<matplotlib.figure.Figure at 0xce231d0>"
]
},
"metadata": {},
@@ -3471,7 +3471,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x89a3b70>"
"<matplotlib.figure.Figure at 0xa9bb3c8>"
]
},
"metadata": {},
+78 -86
View File
@@ -279,7 +279,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"At this point in the book we have developed the theory for the linear Kalman filter. Then, in the last two chapters we broached the topic of using Kalman filters for nonlinear problems. In this chapter we will learn the Extended Kalman filter (EKF). The EKF handles nonlinearity by linearizing the system at the point of the current estimate, and then the linear Kalman filter is used to filter this linearized system. It was one of the very first techniques used for nonlinear problems, and it remains the most common technique. \n",
"We have developed the theory for the linear Kalman filter. Then, in the last two chapters we broached the topic of using Kalman filters for nonlinear problems. In this chapter we will learn the Extended Kalman filter (EKF). The EKF handles nonlinearity by linearizing the system at the point of the current estimate, and then the linear Kalman filter is used to filter this linearized system. It was one of the very first techniques used for nonlinear problems, and it remains the most common technique. \n",
"\n",
"The EKF provides significant mathematical challenges to the designer of the filter; this is the most challenging chapter of the book. To be honest, I do everything I can to avoid the EKF in favor of other techniques that have been developed to filter nonlinear problems. However, the topic is unavoidable; all classic papers and a majority of current papers in the field use the EKF. Even if you do not use the EKF in your own work you will need to be familiar with the topic to be able to read the literature. "
]
@@ -324,7 +324,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x4b42710>"
"<matplotlib.figure.Figure at 0x7b6c860>"
]
},
"metadata": {},
@@ -428,7 +428,7 @@
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAr8AAADVCAYAAABe6Zj7AAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzt3XmczXX///HnOWOYjTGILGPLRXYyxiAmCVmzX0WWUSJF\nV5KERFf1ra4rS3W1yJq6+IWUb4SrfBlCxjqV7TKTJUW2mbKM2T6/P97NHMc5wwwzc2bmPO6329zM\neX+29zncmmfveb/eb5tlWZYAAAAAL2D3dAcAAACA/EL4BQAAgNcg/AIAAMBrEH4BAADgNQi/AAAA\n8BqEXwAAAHgNwi+AImfq1Kmy2+2Kjo72dFcKjbCwMNntdp07d+6G5168eFF2u109evTIh54BQO4i\n/ALIVXa73enLx8dHISEhat26td555x2lpqbmeR9sNptsNlueP8eddu3auXwG1/saNmyYR/p5rZx+\nZp78jAHgVhTzdAcAFD02m01Tp06VZVlKTU3V0aNH9dlnn2nr1q365ptvtGLFCk93Mc9ERUWpXbt2\nTm0bNmzQxo0bFRkZqXvuucfpWJMmTfKxd7kjMDBQ+/fvV1BQkKe7AgA5RvgFkCdeeOEFl9dNmzbV\nypUrtWnTJrVp08ZDPctbgwcPdmmzLEsbNmzQPffcoylTpnigV7mvdu3anu4CANwUpj0AyBe1atVS\nZGSkJCkmJsbl+IIFC9S3b1/dcccdCggIUHBwsO6++24tWrQoy3vu3LlT999/v0qVKqXg4GB16NBB\n27Zty/L8zz//XIMGDVKdOnUUFBSkoKAgNWvWTLNmzVJ6errL+UOHDs2cO7xo0SKFh4crKChId911\n1018Atc3btw42e12ffbZZ1qxYoXuvvtulSpVSlWrVs08Z/bs2erZs6dq1qypgIAAlS5dWpGRkfr0\n00+zvO+ZM2c0YcIE1a9fX4GBgSpdurSaNGmi559/XpcuXbphv3bt2qWKFSsqJCRE69evl5T1nN+r\n38OaNWvUpk0blSxZUqVLl1avXr0UFxfn9hn79u1Tjx49FBISopIlS6pt27b65ptv9M4772TeDwBy\nCyO/APKNZVmSJF9fX5djo0aNUoMGDRQZGamKFSvq7NmzWr16tYYMGaKDBw/q5Zdfdjp/y5Yt6tCh\ng5KTk9WnTx/VqlVLsbGxuueee3Tvvfe6ff7zzz8vHx8fRUREqHLlykpMTNT69ev19NNPKyYmRh9/\n/LHT+RnzWv/xj39o/fr16tGjh+677z4lJyfn0ifi+qz58+dr3bp16t69u9q2bavz589LktLS0jRy\n5Ei1aNFC9957rypUqKDTp0/ryy+/1IMPPqj4+HhNmDDB6Z4HDhxQ+/btdfLkSTVv3lxPPPGE0tLS\ndOjQIc2cOVPDhw9XzZo1s+zTmjVr1L9/f5UuXVr/+c9/1KBBg2y9hyVLlujzzz9X9+7dNWrUKO3d\nu1dffPGFdu7cqX379jlNl9i7d6/atGmjS5cuqUePHqpXr54OHTqkLl26qHPnzswrBpD7LADIRTab\nzbLb7S7t+/btswIDAy273W7t2rXL5Xh8fLxLW0pKitW+fXvL19fXOnHihNOxOnXqWHa73VqxYoVT\n+7vvvpvZh40bN97wGZZlWUOGDLHsdrv13XffObUPHTrUstlsVlBQkBUbG+v+DWfD1KlTLZvNZk2b\nNi3Lc8aNG2fZbDbL19fX2rx5s9tzfvrpJ5e2pKQkq1WrVpa/v7919uxZp2ONGze27Ha7NXPmTJfr\nzp07ZyUlJWW+DgsLs+x2e+Y95s6da/n6+lqNGjVy+ewvXLhg2Ww2q3v37m7fg5+fn7Vt2zanY6NH\nj7bsdrv13nvvObWHh4dbdrvdWrhwoVP78uXLM/8ely9f7vbzAICbwbQHAHli2rRpmjZtml544QUN\nGjRIYWFhunz5sp599lk1bdrU5fwaNWq4tBUrVixztDLjV+6SGfU9dOiQWrdurZ49ezpdM3LkSNWq\nVcttn9w9Q5LGjBkjy7K0bt06l2M2m00jRoxQw4YNr/t+c8uAAQPUunVrt8eqV6/u0laiRAmNHDlS\nV65ccVraLTo6WrGxsYqIiNBTTz3lcl1ISIhKlCjh9jlTp07Vo48+qrZt22rTpk2qVKlSjt7DsGHD\n1KJFC6e2xx57TJZlafv27ZltBw8eVExMjOrXr+8yV7p3794u9wCA3MC0BwB54qWXXnJpe/nll/X8\n88+7Pf/48eN67bXXtH79eh07dkyXL1/OPGaz2XTixInM17t27ZIktW3b1uU+NptNd999t9v5pefO\nndMbb7yhr776SvHx8bp48WKWz7ha8+bNs3iXuctms133WfHx8Xr99de1YcMG/fzzz9f9jDLmPnfq\n1ClHfRg+fLhWrFihgQMHav78+SpWLGc/Jmw2m5o1a+bSHhoaKkmZ0zgkaffu3ZKkVq1aub1XmzZt\nnMIyAOQGwi+APJGWliZJSkpKUkxMjEaMGKHJkyerRo0aevDBB53O/emnn9S8eXMlJiaqTZs26tSp\nk4KDg+Xj46MjR45o4cKFunLlSub5iYmJstlsqlChgttnu2tPTExUWFiYjh49qvDwcA0ZMkRlypRR\nsWLFlJCQoJkzZzo942q33377zX4MOZbVs/bv36+WLVvq0qVLuueee9SlSxeVKlVKPj4+OnTokBYv\nXuzU/4SEBNlsNlWuXDlHz4+OjpbNZlO3bt1yHHwzlC5d2qUt414Z/y4k83ciuf/7ul47ANwKwi+A\nPOXn56c2bdroq6++Uv369TVixAi1a9fOKdi8+eabOn/+vBYsWKBBgwY5Xb9kyRItWLDAqS04OFiW\nZenUqVNun+mu/cMPP9SRI0cyp2Jcbdu2bZo5c2aW7yE/i66yetbrr7+uP/74Q8uWLVOvXr2cjs2Z\nM0f//ve/ndpKly4ty7KyHM3OyurVq9W/f389/PDDunLlitul23JLqVKlJLn/+7peOwDcCub8AsgX\n1apV03PPPac//vjDZa3bjCkKvXv3drluw4YNLoEwY6mxjRs3upxvWZY2b97s0h4XFyebzZblMwq6\nuLg42e12PfDAAy7H3H1GERERksyKDTlxxx13KDo6WjVr1lRUVJRmz559852+gYy531u2bHF7fNOm\nTXn2bADei/ALIN88/fTTKleunBYsWKDDhw9ntmcUcl0bQteuXau5c+e63KdVq1aqU6eOtmzZ4rIG\n7Lvvvut076ufYf252cTVdu/erddeey3PR3dv9f7Vq1dXenq6SyBcsWKFFi9e7HJ+27Zt1bhxY333\n3XduR7XPnz+vpKQkt88KDQ1VdHS06tWrp5EjR+rtt9++pb5n5c4771RYWJh+/PFHl9H9ZcuW6bvv\nvsuT5wLwboRfAPkmKChIEyZMUEpKitPUg1GjRsnX11d9+/bVoEGD9Nxzz6lr167q2rWr+vXrl7k+\n8NXmzp0rf39/9e/fX/3799ekSZPUvXt3jRs3Tp07d3Y5f/DgwSpTpoyeeuop9enTRxMmTFCfPn0U\nERGhLl26uH1GbsrO/a93zujRo+Xj46MuXbpo6NChGj9+vDp16qR+/fqpf//+bq9dsmSJKlasqGee\neUYREREaP368xo0bpwceeEBVqlTRL7/8kuXzKlSooI0bN6pp06Z66qmn9Nprr+Xa+7zaBx98oKCg\nID3yyCPq1auXJk+enDntImMTDbudH1UAcg//RQGQ6643yjlq1ChVqlRJy5Yt0969eyVJDRs21IYN\nG9S6dWutXr1a77//vv744w+tWLFCI0aMyNw84WqtWrXSpk2b1LFjR61du1bvvPOOkpOTtWHDBoWH\nh7s8t2LFitq8ebO6deumb7/9Vv/617907Ngxvf/++/qf//kft8/ITdm5//WOh4eH6+uvv1bz5s21\ncuVKzZ49W8nJyVq9erUefvhht9fWqVNHe/bs0TPPPKOEhAS98847mjdvno4fP66xY8e6FNdde48y\nZcpo/fr1ioiI0KRJkzR16tQbvp/rvQd31zRt2lRbtmxRt27dtGHDBr311ls6deqUVq9enTktImNu\nMADkBpuV18MdAADchAceeEBffvmljh8/nuO1hgEgK4z8AgA8Ji0tTWfOnHFp/9///V99+eWXCg8P\nJ/gCyFUsdQYA8JgLFy6ocuXKat++verUqSObzabY2FitX79eQUFBeVZsB8B7Me0BAOAxKSkpGjt2\nrNavX68TJ07o8uXLKl++vNq1a6fnn39edevW9XQXARQxWYbfjJ13AAAAgMIoODjYpY05vwAAAPAa\nhF8AAAB4jWwVvLkbMgYAAAAKmhtN3WXkFwAAAF6D8AsAAACvQfgFAACA1yD8AgAAwGsQfgEAAOA1\nCL8AAADwGoRfAAAAeA3CLwAAALwG4RcAAABeg/ALAAAAr0H4BQAAgNcg/AIAAMBrEH4BAADgNQi/\nAAAA8BqEXwAAAHgNwi8AAAC8BuEXAAAAXoPwCwAAAK9B+AUAAIDXIPwCAADAaxB+AQAA4DUIvwAA\nAPAahF8AAAB4DcIvAAAAvAbhFwAAAF6D8AsAAACvQfgFAACA1yD8AgAAwGsQfgEAAOA1CL8AAADw\nGoRfAAAAeA3CLwAAXsBulz77zHPP/+ILqXZtqXhxadgwz/UDIPwCAFBE7N4tFSsmtWnjeuzkSal7\n9/zvU4ZHH5X69ZOOHZNmzZIWLpRKlvRcf+C9CL8AABQRc+ZITzwh/fCDdPCg87Hy5SVf36yvTU3N\n+fNSUrJ3XkKCdPas1LGjdPvtJvRalmSz5fyZwK0i/AIAUAQkJUn//rf02GNSnz4mCF/t6mkPR4+a\n10uWSO3bS4GB0uzZ5ti2baYtKEgqXVq67z4zaixJ7dpJo0ZJzz5rwvTdd5v2GTOkxLine truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x7ebb748>"
"<matplotlib.figure.Figure at 0x8226320>"
]
},
"metadata": {},
@@ -502,16 +502,9 @@
"\n",
"$$\n",
"\\begin{aligned}\n",
"\\mathbf F(\\Delta t) &=\\mathbf{I} + \\mathbf At + \\mathbf{0} \\\\\n",
"\\mathbf F &=\\mathbf{I} + \\mathbf At + \\mathbf{0} \\\\\n",
"&= \\begin{bmatrix}1&0\\\\0&1\\end{bmatrix} + \\begin{bmatrix}0&1\\\\0&0\\end{bmatrix}\\Delta t\\\\\n",
"&= \\begin{bmatrix}1&\\Delta t\\\\0&1\\end{bmatrix}\n",
"\\end{aligned}$$\n",
"\n",
"This give us\n",
"$$\n",
"\\begin{aligned}\n",
"\\mathbf{\\overline x} &=\\mathbf{Fx} \\\\\n",
"\\mathbf{\\overline x} &=\\begin{bmatrix}1&\\Delta t\\\\0&1\\end{bmatrix}\\mathbf x\n",
"\\mathbf F &= \\begin{bmatrix}1&\\Delta t\\\\0&1\\end{bmatrix}\n",
"\\end{aligned}$$\n",
"\n",
"This is the same result used by the kinematic equations! This exercise was unnecessary other than to illustrate finding the state transition matrix from linear differential equations. We will conclude the chapter with an example that will require the use of this technique."
@@ -742,9 +735,9 @@
"outputs": [
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x88c5e10>"
"<matplotlib.figure.Figure at 0x7fab048>"
]
},
"metadata": {},
@@ -752,9 +745,9 @@
},
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x995d748>"
"<matplotlib.figure.Figure at 0x9a733c8>"
]
},
"metadata": {},
@@ -762,9 +755,9 @@
},
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAwYAAADxCAYAAABxuaDoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XtcVHX+P/DXGa5yBxkYFCUzVDIUxUwlzBsprYZtN9CE\nTbe0LdY1f1+77BbdW3fbLSzbqNZCK9dty7KyUCsNHEkBxRte8MZN7vfrwMz5/fGRI4ebg4KAvp6P\nxzzgPeczZz4zcxg+78/ncz5HkmVZBhERERERXdc0vV0BIiIiIiLqfUwMiIiIiIiIiQERERERETEx\nICIiIiIiMDEgIiIiIiIwMSAiIiIiIjAxICIiIiIi9IHEIDExEWFhYfD29oZGo8H69evblDlx4gTu\nvfdeuLq6wt7eHhMmTMDx48eV7QaDAdHR0dBqtXBwcEBYWBhyc3NV+ygvL8eiRYvg4uICFxcXREZG\noqKiosdfHxERERFRf9DriUF1dTX8/f2xZs0a2NnZtdl+9uxZ3H777Rg+fDh27tyJI0eO4JVXXoGD\ng4NSZvny5di8eTM2bdqEpKQkVFZWYu7cuWh57baIiAgcOHAA27ZtQ0JCAtLS0hAZGXlVXiMRERER\nUV8n9aUrHzs6OmLt2rWqBvvChQuh0WiwYcOGdh9TWVkJrVaL+Ph4hIeHAwBycnLg4+ODH374ASEh\nIcjIyMDo0aOh1+sxadIkAMDu3bsRHByM48ePw9fXt+dfHBERERFRH9brIwadkWUZ33zzDW6++WaE\nhobCw8MDEydOxH//+1+lTGpqKpqamhASEqLc5+3tDT8/P+j1egBAcnIyHB0dlaQAAIKCgmBvb6+U\nISIiIiK6nvXpxKCwsBDV1dV47bXXMGfOHOzYsQMRERFYuHAhvv/+ewBAfn4+LCwsMHDgQNVjPT09\nkZ+fr5TRarVt9u/h4aGUISIiIiK6nln2dgU6YzKZAADz58/H8uXLAQBjxoxBSkoK3nnnHYSGhvbI\n8/KkZCIiIiLqz5ydnbv8mD49YuDu7g5LS0v4+fmp7vfz80NWVhYAQKfTwWg0oqSkRFWmoKAAOp1O\nKVNUVNRm/4WFhUoZIiIiIqLrWZ9ODKysrHDrrbeqliYFxPKlPj4+AIDAwEBYWlpi+/btyvacnBxk\nZGQgKCgIADB58mRUV1cjOTlZKaPX61FbW4spU6ZchVdCRERERNS39fpUopqaGmRmZkKWZZhMJmRl\nZSE9PR1ubm4YMmQIVq1ahQcffBC33347ZsyYgZ9++gmbNm3C119/DQBwcnLCkiVLsGrVKmi1Wri5\nuWHlypUICAjAzJkzAQCjRo3C7NmzsXTpUsTFxUGWZSxbtgzz5s275IpElzMMQ3Q1paSkAAAmTJjQ\nyzUhujQer9Sf8Hil/uZKp8P3+ohBSkoKxo0bh8DAQNTX1yMmJgbjx49HTEwMACAsLAzvv/8+3njj\nDYwZMwZr167Fhg0bMGfOHGUfsbGxuOeeexAeHo7g4GA4OTlhy5YtkCRJKbNx40aMHTsWc+bMQWho\nKMaNG9fuxdSIiIiIiK5Hfeo6Bn1Fy2yLIwbU17FHi/oTHq/Un/B4pf7mStuwvT5iQEREREREvY+J\nARERERERMTEgIiIiIiImBkREREREBCYGREREREQEJgZERERERAQmBkREREREBCYGREREREQEJgZE\nRERERAQmBkREREREBCYGREREREQEJgZERERERAQmBkREREREBCYGREREREQEJgZERERERIQ+kBgk\nJiYiLCwM3t7e0Gg0WL9+vWr7ww8/DI1Go7pNmTJFVcZgMCA6OhparRYODg4ICwtDbm6uqkx5eTkW\nLVoEFxcXuLi4IDIyEhUVFT3++oiIiIiI+oNeTwyqq6vh7++PNWvWwM7Ort0yISEhKCgoQH5+PvLz\n87F161bV9uXLl2Pz5s3YtGkTkpKSUFlZiblz50KWZaVMREQEDhw4gG3btiEhIQFpaWmIjIzs0ddG\nRERERNRfWPZ2BUJDQxEaGgoAiIqKareMjY0NtFptu9sqKyuxbt06xMfHY8aMGQCADRs2wMfHBzt2\n7EBISAgyMjKQkJAAvV6PiRMnAgDi4uIQHByMkydPwtfXtwdeGRERERFR/9HrIwbmSEpKgqenJ0aO\nHIlHH30URUVFyrbU1FQ0NTUhJCREuc/b2xt+fn7Q6/UAgOTkZDg6OmLSpElKmaCgINjb2ytliIiI\niIiuZ70+YnApoaGhuPfeezFs2DCcPXsWf/7znzFjxgykpaXBysoK+fn5sLCwwMCBA1WP8/T0RH5+\nPgAgPz+/3REHDw8PpUxHUlJSuu/FEPUgHqvUn/B4pf6Exyv1F1c6C6bPJwYPPPCA8vvo0aMxfvx4\n+Pj44LvvvsP8+fN7sWZERERERNeOPp8YtObl5QVvb2+cPHkSAKDT6WA0GlFSUqIaNSgoKMDUqVOV\nMi2nHzUrLCyETqfr9PkmTJjQjbUn6n7NPVk8Vqk/4PFK/QmPV+pvrnTFzX5xjkFLRUVFyM3NhZeX\nFwAgMDAQlpaW2L59u1ImJycHGRkZCAoKAgBMnjwZ1dXVSE5OVsro9XrU1ta2WfqUiIiIiOh61Osj\nBjU1NcjMzIQsyzCZTMjKykJ6ejrc3Nzg5uaGF154Affeey+8vLxw5swZPPvss9DpdLjnnnsAAE5O\nTliyZAlWrVoFrVYLNzc3rFy5EgEBAZg5cyYAYNSoUZg9ezaWLl2KuLg4yLKMZcuWYd68eVyRiIiI\niIgIfWDEICUlBePGjUNgYCDq6+sRExOD8ePHIyYmBhYWFjh06BDmz5+PkSNH4uGHH1ZWG7K3t1f2\nERsbi3vuuQfh4eEIDg6Gk5MTtmzZAkmSlDIbN27E2LFjMWfOHISGhmLcuHFtLqZGRERERHS9kuSW\nVwEjAOr5Wc7Ozr1YE6JL4xxY6k94vFJ/wuOV+psrbcP2+ogBERERERH1PiYGRERERETExICIiIiI\niJgYEBERERERmBgQERERERGYGBAREREREZgYEBERERERmBgQERERERGYGBAREREREZgYEBERERER\nmBgQEREREREAS3MLFhcXQ6/X4+jRoyguLoYkSXB3d4efnx+mTJkCd3f3nqwnERERERH1oE4TA4PB\ngE8//RQfffQRdu/eDVmW2y0nSRImT56MxYsXY+HChbCxsemRyhIRERERUc/ocCrRe++9hxtvvBGP\nPfYYXFxc8NZbbyEpKQl5eXmoq6tDbW0tcnNzkZSUhDfffBNubm74wx/+gOHDhyMuLu5qvgYiIiIi\nIrpCHSYGr776KlauXImCggJs2bIF0dHRmDJlCnQ6HWxsbGBrawsvLy9MmTIFf/zjH7FlyxYUFBTg\nySefxKuvvmp2BRITExEWFgZvb29oNBqsX7++w7JLly6FRqPBP//5T9X9BoMB0dHR0Gq1cHBwQFhY\nGHJzc1VlysvLsWjRIri4uMDFxQWRkZGoqKgwu55ERERERNeyDhOD06dPY8WKFXB2djZ7Z87Oznjy\nySdx6tQpsx9TXV0Nf39/rFmzBnZ2dh2W+9///od9+/Zh8ODBbbYtX74cmzdvxqZNm5CUlITKykrM\nnTtXNfUpIiICBw4cwLZt25CQkIC0tDRERkaaXU8iIiIiomtZh+cYWFlZXfZOu/LY0NBQhIaGAgCi\noqLaLXPu3DmsWLECO3bswJw5c1TbKisrsW7dOsTHx2PGjBkAgA0bNsDHxwc7duxASEgIMjIykJCQ\nAL1ej4kTJwIA4uLiEBwcjJMnT8LX1/dyXiYRERER0TXjspYrbWxsRFFREQoLC9vcupvRaMSCBQvw\n3HPPYeTIkW22p6amoqmpCSEhIcp93t7e8PPzg16vBwAkJyfD0dERkyZNUsoEBQXB3t5eKUNERERE\ndD0ze7nShoYGvP7661i3bh3y8vI6XKHIaDR2W+UA4Pnnn4eHhwceffTRdrfn5+fDwsICAwcOVN3v\n6emJ/Px8pYxWq23zWA8PD6UMEREREdH1zOzEYOnSpVi/fj0mT56M++67r0vnHlyunTt3Ij4+Hunp\n6T3+XB1JSUnptecm6goeq9Sf8Hil/oTHK/UXVzo93uzE4IsvvkBUVBQ++uijK3rCrti1axfy8/Oh\n0+mU+4xGI1atWoW33noLWVlZ0Ol0MBqNKCkpUY0aFBQUYOrUqQAAnU6HoqKiNvsvLCxU7ZuIiIiI\n6HpldmJgb2+P2267rSfr0sbjjz+O+++/X3XfnXfeiQULFuCRRx4BAAQGBsLS0hLbt29HeHg4ACAn\nJwcZGRkICgoCAEyePBnV1dVITk5WzjPQ6/Wora3FlClTOq3DhAkTuvtlEXWr5p4sHqvUH/B4pf6E\nxyv1N1e6FL/ZicGCBQuwZcsWLFu27IqesLWamhpkZmZClmWYTCZkZWUhPT0dbm5uGDJkCNzd3VXl\nraysoNPplKESJycnLFmyBKtWrYJWq4WbmxtWrlyJgIAAzJw5EwAwatQozJ49G0uXLkVcXBxkWcay\nZcswb948rkhERERERIQuJAarV6/GI488gtDQUCxevBje3t6wsLBoU655OVBzpaSkYPr06ZAkCQAQ\nExODmJgYREVFYd26dW3KN5drKTY2FlZWVggPD0ddXR1mzZqFDRs2qMpu3LgR0dHRynKnYWFhePvt\nt7tUVyIiIiKia5Ukd7S8UCsVFRV45JFH8MUXX7S7XZZlSJLU7asS9YaWwzBX4yRroivBoW7qT3i8\nUn/C45X6myttw5o9YrB48WJ8/fXXCA8Px2233cYGMxERERHRNcTsxGDbtm2Ijo7Gm2++2ZP1ISIi\nIiKiXmD2lY+dnZ1x00039WRdiIiIiIiol5idGDzyyCP49NNP0dTU1JP1ISIiIiKiXLine truncated
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAwYAAADxCAYAAABxuaDoAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XlcVPX+P/DXGfZ9kWFRlNRcyEwUM5Uol0jparQHLlh6\nXbpF3vL7te6936K9vLdbadkNuz+LrLzeW5m4haiZ6MhNICkVF9wQdNhkH2CYmfP74yMHZtgGBQF9\nPR+PecBnzmfOfM7MZ2Y+789yjiTLsgwiIiIiIrqhqbq7AERERERE1P0YGBAREREREQMDIiIiIiJi\nYEBERERERGBgQEREREREYGBARERERERgYEBEREREROgBgUFqaiqioqIQGBgIlUqFL774olmeEydO\n4OGHH4aXlxdcXFwwduxYHD9+XNmu1+sRFxcHtVoNV1dXREVFIT8/32wfZWVlmDt3Ljw9PeHp6YnY\n2FiUl5d3+fEREREREfUG3R4YVFVVYeTIkVi1ahWcnZ2bbT979izuvPNODB48GHv27MGRI0fwxhtv\nwNXVVcmzdOlSbNy4ERs2bMC+fftQUVGBGTNmoOm122JiYnDo0CHs2LEDycnJyMzMRGxs7DU5RiIi\nIiKink7qSVc+dnNzw+rVq80a7LNnz4ZKpcK6detafExFRQXUajUSExMRHR0NAMjLy0NQUBB++OEH\nREREIDs7GyNGjIBGo8H48eMBAPv370d4eDiOHz+OIUOGdP3BERERERH1YN0+YtAWWZaxefNm3HLL\nLYiMjISvry/GjRuHf//730qejIwMGAwGREREKPcFBgYiODgYGo0GAJCWlgY3NzclKACAsLAwuLi4\nKHmIiIiIiG5kPTowKCwsRFVVFd566y1Mnz4dO3fuRExMDGbPno3t27cDALRaLWxsbNCnTx+zx/r5\n+UGr1Sp51Gp1s/37+voqeYiIiIiIbmS23V2AtphMJgDAAw88gKVLlwIAbrvtNqSnp+Ojjz5CZGRk\nlzwvFyUTERERUW/m4eHR4cf06BEDHx8f2NraIjg42Oz+4OBg5ObmAgD8/f1hNBpRUlJilqegoAD+\n/v5KnqKiomb7LywsVPIQEREREd3IenRgYGdnh9tvv93s1KSAOH1pUFAQACA0NBS2trZISUlRtufl\n5SE7OxthYWEAgAkTJqCqqgppaWlKHo1GA51Oh4kTJ16DIyEiIiIi6tm6fSpRdXU1cnJyIMsyTCYT\n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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x99ab940>"
"<matplotlib.figure.Figure at 0x9ac09e8>"
]
},
"metadata": {},
@@ -872,13 +865,13 @@
"source": [
"## Robot Localization\n",
"\n",
"Time to try a real problem. I warn you that this section is difficult. However, most books choose simple, textbook problems with simple answers, and you are left wondering how to implement a solution for a real world problem. \n",
"It's time to try a real problem. I warn you that this section is difficult. However, most books choose simple, textbook problems with simple answers, and you are left wondering how to solve a real world problem. \n",
"\n",
"We will consider the problem of robot localization. We already implemented this in the **Unscented Kalman Filter** chapter, and I recommend you read it now if you haven't already. We have a robot that is moving through a landscape, equipped with a sensor that give the range and bearing to landmarks. This could be a self driving car using computer vision to identify trees, buildings, and other landmarks. It might be one of those small robots that vacuum your house, or a robot in a warehouse.\n",
"We will consider the problem of robot localization. We already implemented this in the **Unscented Kalman Filter** chapter, and I recommend you read it now if you haven't already. In this scenario we have a robot that is moving through a landscape using a sensor to detect landmarks. This could be a self driving car using computer vision to identify trees, buildings, and other landmarks. It might be one of those small robots that vacuum your house, or a robot in a warehouse.\n",
"\n",
"Our robot has 4 wheels configured the same as an automobile's. It maneuvers by pivoting the front wheels. This causes the robot to pivot around the rear axle while moving forward. This is nonlinear behavior which we will have to model. \n",
"The robot has 4 wheels in the same configuration used by automobiles. It maneuvers by pivoting the front wheels. This causes the robot to pivot around the rear axle while moving forward. This is nonlinear behavior which we will have to model. \n",
"\n",
"The robot has a sensor that measures the range and bearing to known targets in the landscape. This is nonlinear because computing a position from a range and bearing requires square roots and trigonometry. \n",
"The robot has a sensor that measures the range and bearing to known targets in the landscape. This is nonlinear because computing a position from a range and bearing requires square roots and trigonometry. \n",
"\n",
"Both the process model and measurement models are nonlinear. The EKF accommodates both, so we provisionally conclude that the EKF is a viable choice for this problem."
]
@@ -891,7 +884,7 @@
"\n",
"At a first approximation an automobile steers by pivoting the front tires while moving forward. The front of the car moves in the direction that the wheels are pointing while pivoting around the rear tires. This simple description is complicated by issues such as slippage due to friction, the differing behavior of the rubber tires at different speeds, and the need for the outside tire to travel a different radius than the inner tire. Accurately modeling steering requires a complicated set of differential equations. \n",
"\n",
"For Kalman filtering, especially for lower speed robotic applications a simpler *bicycle model* has been found to perform well. This is a depiction of the model:"
"For lower speed robotic applications a simpler *bicycle model* has been found to perform well. This is a depiction of the model:"
]
},
{
@@ -905,7 +898,7 @@
"data": {
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0x802d2b0>"
"<matplotlib.figure.Figure at 0x89cab70>"
]
},
"metadata": {},
@@ -920,9 +913,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"In the **Unscented Kalman Filter** chapter we derived the equations for this model:\n",
"In the **Unscented Kalman Filter** chapter we derived these equations:\n",
"\n",
"$$\\begin{aligned} x &= x - R\\sin(\\theta) + R\\sin(\\theta + \\beta) \\\\\n",
"$$\\begin{aligned} \n",
"\\beta &= \\frac d w \\tan(\\alpha) \\\\\n",
"x &= x - R\\sin(\\theta) + R\\sin(\\theta + \\beta) \\\\\n",
"y &= y + R\\cos(\\theta) - R\\cos(\\theta + \\beta) \\\\\n",
"\\theta &= \\theta + \\beta\n",
"\\end{aligned}\n",
@@ -958,25 +953,21 @@
"\n",
"$$\\overline x = x + f(x, u) + \\mathcal{N}(0, Q)$$\n",
"\n",
"\n",
"\n",
"Using the motion model for a robot that we created above, we can expand this to\n",
"\n",
"$$\\overline{\\begin{bmatrix}x\\\\y\\\\\\theta\\end{bmatrix}} = \\begin{bmatrix}x\\\\y\\\\\\theta\\end{bmatrix} + \n",
"\\begin{bmatrix}- R\\sin(\\theta) + R\\sin(\\theta + \\beta) \\\\\n",
"R\\cos(\\theta) - R\\cos(\\theta + \\beta) \\\\\n",
"\\beta\\end{bmatrix}$$\n",
"\n",
"We linearize this with a taylor expansion at $x$:\n",
"\n",
"$$f(x, u) \\approx \\mathbf x + \\frac{\\partial f(\\mathbf x, \\mathbf u)}{\\partial x}\\biggr|_{\\mathbf x, \\mathbf u} $$\n",
"\n",
"We replace $f(x, u)$ with our state estimate $\\mathbf x$, and the derivative is the Jacobian of $f$."
"\\beta\\end{bmatrix}$$"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"The Jacobian $\\mathbf F$ is\n",
"We find The $\\mathbf F$ by taking the Jacobian of $f(x,u)$.\n",
"\n",
"$$\\mathbf F = \\frac{\\partial f(x, u)}{\\partial x} =\\begin{bmatrix}\n",
"\\frac{\\partial \\dot x}{\\partial x} & \n",
@@ -1049,8 +1040,9 @@
"fxu = Matrix([[x-r*sympy.sin(theta) + r*sympy.sin(theta+beta)],\n",
" [y+r*sympy.cos(theta)- r*sympy.cos(theta+beta)],\n",
" [theta+beta]])\n",
"J = fxu.jacobian(Matrix([x, y, theta]))\n",
"J"
"F = fxu.jacobian(Matrix([x, y, theta]))\n",
"\n",
"F"
]
},
{
@@ -1088,15 +1080,15 @@
"source": [
"# reduce common expressions\n",
"B, R = symbols('beta, R')\n",
"J = J.subs((d/w)*sympy.tan(alpha), B)\n",
"J.subs(w/sympy.tan(alpha), R)"
"F = F.subs((d/w)*sympy.tan(alpha), B)\n",
"F.subs(w/sympy.tan(alpha), R)"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"In that form we can see that our computation of the Jacobian is correct.\n",
"This form verifies that the computation of the Jacobian is correct.\n",
"\n",
"Now we can turn our attention to the noise. Here, the noise is in our control input, so it is in *control space*. In other words, we command a specific velocity and steering angle, but we need to convert that into errors in $x, y, \\theta$. In a real system this might vary depending on velocity, so it will need to be recomputed for every prediction. I will choose this as the noise model; for a real robot you will need to choose a model that accurately depicts the error in your system. \n",
"\n",
@@ -1190,7 +1182,8 @@
"\\mathbf{\\overline P} &=\\mathbf{FPF}^{\\mathsf T} + \\mathbf{VMV}^{\\mathsf T}\n",
"\\end{aligned}$$\n",
"\n",
"This form of linearization is not the only way to predict $\\mathbf x$. For example, we could use a numerical integration technique such as *Runge Kutta* to compute the position of the robot in the future. If the time step is relatively large this will be required. Things are not as cut and dried with the EKF as it was for the Kalman filter. For a real problem you have to carefully model your system with differential equations and then determine the most appropriate way to solve that system. The correct approach depends on the accuracy you require, how nonlinear the equations are, your processor budget, and numerical stability concerns."
"This form of linearization is not the only way to predict $\\mathbf x$. For example, we could use a numerical integration technique such as *Runge Kutta* to compute the movement\n",
"of the robot. This will be required if the time step is relatively large. Things are not as cut and dried with the EKF as for the Kalman filter. For a real problem you have to carefully model your system with differential equations and then determine the most appropriate way to solve that system. The correct approach depends on the accuracy you require, how nonlinear the equations are, your processor budget, and numerical stability concerns."
]
},
{
@@ -1199,7 +1192,8 @@
"source": [
"### Design the Measurement Model\n",
"\n",
"The robot's sensor provides a noisy bearing and range measurement to multiple known locations in the landscape. The measurement model must convert the state $\\begin{bmatrix}x & y&\\theta\\end{bmatrix}^\\mathsf T$ into a range and bearing to the landmark. Using $p$ be the position of a landmark, the range $r$ is\n",
"The robot's sensor provides a noisy bearing and range measurement to multiple known locations in the landscape. The measurement model must convert the state $\\begin{bmatrix}x & y&\\theta\\end{bmatrix}^\\mathsf T$ into a range and bearing to the landmark. If $\\mathbf p$ \n",
"is the position of a landmark, the range $r$ is\n",
"\n",
"$$r = \\sqrt{(p_x - x)^2 + (p_y - y)^2}$$\n",
"\n",
@@ -1208,18 +1202,18 @@
"$$\\phi = \\arctan(\\frac{p_y - y}{p_x - x}) - \\theta$$\n",
"\n",
"\n",
"Thus our function is\n",
"Thus our measurement model $h$ is\n",
"\n",
"\n",
"$$\\begin{aligned}\n",
"\\mathbf x& = h(x,p) &+ \\mathcal{N}(0, R)\\\\\n",
"\\mathbf z& = h(\\bar{\\mathbf x}, \\mathbf p) &+ \\mathcal{N}(0, R)\\\\\n",
"&= \\begin{bmatrix}\n",
"\\sqrt{(p_x - x)^2 + (p_y - y)^2} \\\\\n",
"\\arctan(\\frac{p_y - y}{p_x - x}) - \\theta \n",
"\\end{bmatrix} &+ \\mathcal{N}(0, R)\n",
"\\end{aligned}$$\n",
"\n",
"This is clearly nonlinear, so we need linearize $h(x, p)$ at $\\mathbf x$ by taking its Jacobian. We compute that with SymPy below."
"This is clearly nonlinear, so we need linearize $h$ at $\\mathbf x$ by taking its Jacobian. We compute that with SymPy below."
]
},
{
@@ -1311,6 +1305,7 @@
"outputs": [],
"source": [
"from math import atan2\n",
"\n",
"def Hx(x, landmark_pos):\n",
" \"\"\" takes a state variable and returns the measurement\n",
" that would correspond to that state.\n",
@@ -1330,7 +1325,7 @@
"source": [
"### Design Measurement Noise\n",
"\n",
"It is reasonable to assume that the range and bearing measurement noise is independent, hence\n",
"It is reasonable to assume that the noise of the range and bearing measurements are independent, hence\n",
"\n",
"$$\\mathbf R=\\begin{bmatrix}\\sigma_{range}^2 & 0 \\\\ 0 & \\sigma_{bearing}^2\\end{bmatrix}$$"
]
@@ -1343,11 +1338,11 @@
"source": [
"### Implementation\n",
"\n",
"We will use `FilterPy`'s `ExtendedKalmanFilter` class to implement the filter. Its `predict()` method uses the standard linear equations. Our process model is nonlinear, so we will have to override `predict()` with our own version. I'll want to also use this class to simulate the robot, so I'll add a method `move()` that computes the position of the robot which both `predict()` and my simulation can call.\n",
"We will use `FilterPy`'s `ExtendedKalmanFilter` class to implement the filter. Its `predict()` method uses the standard linear equations for the process model. Our's is nonlinear, so we will have to override `predict()` with our own implementation. I'll want to also use this class to simulate the robot, so I'll add a method `move()` that computes the position of the robot which both `predict()` and my simulation can call.\n",
"\n",
"The matrices for the prediction step are quite large. While writing this code I made several errors before I finally got it working. I only found my errors by using SymPy's `evalf` function, which allows you to evaluate a SymPy `Matrix` with specific values for the variables. I decided to demonstrate this technique, and to eliminate a possible source of bugs, by using SymPy in the Kalman filter. You'll need to understand a couple of points.\n",
"The matrices for the prediction step are quite large. While writing this code I made several errors before I finally got it working. I only found my errors by using SymPy's `evalf` function. `evalf` evaluates a SymPy `Matrix` with specific values for the variables. I decided to demonstrate this technique to you, and used `evalf` in the Kalman filter code. You'll need to understand a couple of points.\n",
"\n",
"First, `evalf` uses a dictionary to pass in the values you want to use. For example, if your matrix contains an `x` and `y`, you can write\n",
"First, `evalf` uses a dictionary to specify the values. For example, if your matrix contains an `x` and `y`, you can write\n",
"\n",
"```python\n",
" M.evalf(subs={x:3, y:17})\n",
@@ -1438,7 +1433,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Now we have another issue to handle. The residual is notionally computed as $y = z - h(x)$ but this will not work because our measurement contains an angle in it. Suppose z has a bearing of $1^\\circ$ and $h(x)$ has a bearing of $359^\\circ$. Naively subtracting them would yield a bearing difference of $-358^\\circ$, which will throw off the computation of the Kalman gain. The correct angle difference in this case is $2^\\circ$. So we will have to write code to correctly compute the bearing residual."
"Now we have another issue to handle. The residual is notionally computed as $y = z - h(x)$ but this will not work because our measurement contains an angle in it. Suppose z has a bearing of $1^\\circ$ and $h(x)$ has a bearing of $359^\\circ$. Naively subtracting them would yield a angular difference of $-358^\\circ$, whereas the correct value is $2^\\circ$. We have to write code to correctly compute the bearing residual."
]
},
{
@@ -1454,7 +1449,7 @@
" [range, bearing]. Bearing is normalized to [-pi, pi)\"\"\"\n",
" y = a - b\n",
" y[1] = y[1] % (2 * np.pi) # force in range [0, 2 pi)\n",
" if y[1] > np.pi: # move to [-pi, pi)\n",
" if y[1] > np.pi: # move to [-pi, pi)\n",
" y[1] -= 2 * np.pi\n",
" return y"
]
@@ -1463,7 +1458,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"The rest of the code runs the simulation and plots the results, and shouldn't need too much comment by now. I create a variable `landmarks` that contains the coordinates of the landmarks. I update the simulated robot position 10 times a second, but run the EKF only once. This is for two reasons. First, we are not using Runge Kutta to integrate the differental equations of motion, so a narrow time step allows our simulation to be more accurate. Second, it is fairly normal in embedded systems to have limited processing speed. This forces you to run your Kalman filter only as frequently as absolutely needed."
"The rest of the code runs the simulation and plots the results, and shouldn't need too much comment by now. I create a variable `landmarks` that contains the landmark coordinates. I update the simulated robot position 10 times a second, but run the EKF only once per second. This is for two reasons. First, we are not using Runge Kutta to integrate the differental equations of motion, so a narrow time step allows our simulation to be more accurate. Second, it is fairly normal in embedded systems to have limited processing speed. This forces you to run your Kalman filter only as frequently as absolutely needed."
]
},
{
@@ -1553,9 +1548,9 @@
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtUAAADnCAYAAADRnqrkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3XmYHFW9+P93VVfv3bP07PskmewLCUkAZUmCguTKJVFE\n0MuTAKI83PsVRfzhCkFELyrXBcRH770iiQKCLEq8RmRNYgiQhezrLJk9s0/39N5ddX5/DBkYZhKG\nZLIMfF7PMzKeOnXqVJ1J+jMnpz5HU0ophBBCCCGEEMdNP90dEEIIIYQQYqyToFoIIYQQQogTJEG1\nEEIIIYQQJ0iCaiGEEEIIIU6QBNVCCCGEEEKcIAmqhRBCCCGEOEESVAshxPu0cOFCdF2noaHhdHdl\niLVr16LrOnfffffp7sox6brOxRdfPKjsrrvuQtd11q1bd5p6NVh9fT26rnPDDTec7q4IIcYACaqF\nEEel6/oxv2w226AA6EhA9+5g6Yh//OMf+P1+XC4Xjz322Iivc//99x9Xf202G9nZ2Zx//vn88pe/\nJJ1On9gDeYumaWiaNiptHc111113RgWYp8KpeK7vdCRoPtrP6+nokxBi7DJOdweEEGc2TdO46667\nONo+UZWVlSNq5w9/+ANf+MIX8Hg8PPvssyxatGjE1znvvPOOq7/pdJr6+nqefvppNm7cyIsvvsgz\nzzwz4rZOpw9jMPflL3+Zz33uc5SXl5/urgBQUlLC3r17yczMPN1dEUKMARJUCyHe0x133HFC5993\n33184xvfoLCwkL/97W+cddZZJ+U6R2vnjjvuYM6cOTz77LOsX7+eCy+8cFSuczJ9GDe7DQQCBAKB\nU3a993rGhmEwadKkU9QbIcRYJ8s/hBAn1de+9jVuv/12Jk2axMaNG48aUJ9MVVVVLFiwAIBNmzYN\nW+fpp59m0aJFZGVl4Xa7mTZtGitWrCASiRy1XcuyuO+++5gyZQput5vy8nK+/vWvEw6Hh62/fft2\nPvvZz1JYWIjT6aS8vJwbb7yRQ4cODao3btw4Vq1aBby9fvvIcpYTUVdXx/XXX09ZWRlOp5PCwkKu\nvvpqdu7cedRznnjiCS655BJyc3NxuVxUVlby2c9+lg0bNgzUCYVC/OQnP+FjH/vYQNv5+flcccUV\nbNy4ccT9G25N9aJFi465NGj8+PHH1Y+VK1cyfvx4NE3jlVdeGdTmkfXox1pT3d7ezi233MKECRNw\nuVzk5ubyr//6r6xfv35I3SPLom644Qbq6+u55ppryMvLw+12M3/+fP7v//5vxM9ICHHmkplqIcRJ\nkU6nWb58OY899hjnnnsuf/3rX8nJyTlt/TkyK2m324ccu/POO7nnnnvIycnhc5/7HFlZWTz//PN8\n//vfZ/Xq1axfvx6v1zvkvK985Sts2LCBz372s2RmZrJmzRp++tOfsmHDBtatWzfoWmvWrOHTn/40\nlmXx6U9/mgkTJrBjxw4eeughnnnmGV5++WVmzZoFwK233srvfvc7duzYwXXXXTewxOZEloNs3bqV\nj33sY/T19fHJT36SmTNnUlNTw9NPP83q1at59tln+fjHPz7onOuuu45Vq1aRm5vL0qVLKSgooLm5\nmXXr1vHUU09x/vnnA7B3716++93vsmDBAi6//HKys7NpaGjg2WefZc2aNaxevZrLLrvsPfs43JKX\n66+/fshSIYAtW7awevXqQePyfvoxZ84cvvrVr/Lzn/+cyspKrrvuuoF2Fi5ceMx+NjQ0cP7559PS\n0sKCBQu45ppraG1t5YknnmDNmjU89NBDLFu2bMh5hw4d4pxzzmHChAksW7aM7u5uHn/8cZYuXcoL\nL7ww8IufEGKMUkIIcRSapild19Vdd9111K93euWVV5SmaWr+/Pnq0ksvVZqmqcsvv1xFo9Hjvs6v\nf/3r993fd9uzZ4/yer1K13W1devWQcdee+01pWmaKi8vV4cPHx50bPny5UrXdfXlL395UPnChQuV\npmkqLy9PNTU1DZRblqWWLl2qdF1X995770B5JBJRubm5yjAMtXbt2kFtPfTQQ0rTNDVr1qxB5ddd\nd53SdX1I/fdyZAy+973vDSqfNm2a0nVd/f73vx9U/uKLLypd11VBQYGKxWID5b/5zW+UpmnqnHPO\nUcFgcMh1WlpaBr4PhUKqq6trSJ3m5mZVXFyspk6dOuSYpmlq0aJFg8ruuuuuEd1zbW2tKigoUF6v\nV23atOm4+3Ho0KFh+/Hu49dff/2g8ssuu0zpuq6+//3vDyrftWuX8ng8yu12q+bm5oHyI2My3DnP\nPfec0jRNffKTnzzmPQshznwSVAshjupIIHC0L5vNNqj+O4MHTdPUpEmTVDqdPqHrzJkz533390hA\n/t3vfldde+21yuPxKF3X1Te+8Y0h59x4441K1/Vhg/e2tjbl8XiU3+8fdB8LFy5Uuq6rH/zgB0PO\n2b9/v9J1XU2aNGmg7JFHHlGapqlrrrlm2H7PnTtX6bquXnvttYGy0QyqN2zYoDRNU+edd96w51x5\n5ZVK13X1xz/+caBsxowZStd1tWXLlvd1/Xe75ZZblK7rqrGxcVD58QbVXV1datKkScowDLV69eoT\n6sfxBNXNzc0Dv4SlUqkh59x2221Dfqk6Mibjxo1TlmUNOaeiokLl5eWN+F6EEGcmWVMthHhPpmkO\n+3W0FHWTJ09m3LhxHDx4kJtvvnnEL90Nd42tW7e+7/7efffd3H333fzwhz/k0UcfJR6Pc88993Dv\nvfcOqfvmm28CDLvEID8/n5kzZxKJRDhw4MCQ4xdddNGQskmTJlFQUEB1dfXAeuytW7eiadqw1wAG\nll0cz72OxJF2j3V9pdRAvWg0yu7du8nJyeHss88e0TWOLIMpLy/H5XINrE9+4IEHAGhubj7h+0gk\nElxxxRVUV1dz//33c/nll5/yfhx5Rueffz6GMXQF5buf5TvNnj172CU8ZWVl9PT0nFC/hBCnn6yp\nFkKMusLCQv7whz9w8cUX87//+7/EYjEefvjhE37RbqRM0wQgHo+zadMmbrrpJr773e8ybtw4rrnm\nmkF1g8HgQJ+HU1RUBEBvb++QYwUFBcOeU1BQQFtbG6FQCK/XO6JrKKWGvcZoCAaDaJo24ns88t+S\nkpIRtf/MM89w1VVX4Xa7ueSSS5gwYQJerxdd13n55ZdZt24diUTihO/j2muvZePGjXz961/n5ptv\nPi39OJGfl6ysrGHPMQwDy7JOqF9CiNNPgmohxElRXFzMunXruPTSS3nkkUeIxWI89thjw74oeLK4\nXC4uvPBC1qxZw/Tp07nppptYtGjRoGD4SA7iw4cPk5GRMaSN1tbWQfXeqa2tjYkTJw5bDgy0985r\nDKe1tRVN005aPuTMzEyUUse8/jv7eST4G+ms7h133IHT6WTLli1DUtC1tLSMygY2t912G0899RRX\nX301P/rRj05bP0Yylu+sJ4T48JDlH0KIkyY/P59XXnmF+fPn8/TTT7N06VLi8fgp70dFRQXf+MY3\n6Ovr48477xx07MjyhpdffnnIeR0dHezatQuv18vkyZOHHF+7du2QsgMHDtDW1kZVVdVAZoqzzz4b\npdSw1wB48cUXAZg7d+5A2ZFZ/SOz7ifiWPcI8MILL6Bp2sD1PR4PM2bMoKuriy1btrxn+zU1NUyb\nNm1IIKuUGjbF3Pv1wAMP8LOf/YwLL7yQlStXjlo/jucZz5kzB+hfZjLc8qcXXngBGDyWQogPBwmq\nhRAnVVZWFi+++OLAjPHll19+zNzPJ8utt95Kbm4uDz/8MNXV1QPlN9xwA0opfvjDHw7MMB9x++23\nE41Gue6664YsXVFK8Ytf/ILGxsaBMsuyuP322wfaPWLp0qXk5OTw5JNPDgnuHn74YbZs2cKMGTM4\n99xzB8qPpB9saGg4wTuHj370o0ydOpU33niDRx55ZNCxl156iWeeeYa8vDyWLFkyUH7LLbeglOLm\nm28eWPLwTkdmZKF/V82DBw8Omb1dsWIFe/fuPaG+//nPf+bWW29lypQp/PnPf8bhcBy17vvtR3Z2\nNpqmDRrD91JSUsInPvEJmpqahsyY7969m1//+te4XC6uvfbaEbcphPhgkOUfQoj39L3vfe+oxy67\n7LJBweBwfD4fzz33HEuWLOH555/n0ksvZc2aNcMutzhZfD4f3/zmN/n617/OHXfcwWOPPQb0b4H+\nrW99i3vvvZcZM2Zw1VVXkZmZyfPPP8/WrVs566yz+OEPfzikPU3T+OhHP8rs2bMH5aneuXMn5557\nLl/72tcG6no8Hh5++GE+85nP8PGPf5wrr7yS8ePHs337dv72t78RCAQGNns54pJLLuEnP/kJ3/zm\nN9m5cyfZ2dkAfOc73zmu+1+5ciWXXHIJy5cv54knnmDmzJlUV1fz9NNP43Q6WbVqFS6Xa6D+jTfe\nyIYNG1i1ahVVVVUsXbqU/Px8WltbWbt2LUuWLOGnP/0p0P8Ly80338zs2bO58sorsdvtbNiwgb17\n93LFFVewevXq4+ozwOc//3mUUpxzzjncf//9Q45nZWXxla985bj64fV6+chHPsLGjRu54oorOPvs\ns7Hb7Vx00UXH3HXz17/+NRdccAF33nknL730Eueddx4tLS386U9/IpFI8D//8z8jXo8uhPgAGUmK\nkHXr1qkrrrhClZSUKE3T1MqVKwcdD4fD6v/9v/+nSktLldvtVpMnT1Y/+9nPRi1FiRDi9DhWOr0j\nX7/4xS8G6r/yyitK13V18cUXD9teMplUS5YsUbquq3nz5g3kFNY0bUh6vuPxXu3EYjFVUlKiDMNQ\n27ZtG3TsySefVAsXLlSZmZnK5XKpqVOnqjvvvFOFw+Eh7SxcuFDZbDZVV1en7rvvPLine truncated
"image/png": "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\nLFiwYFwgq5SasMTcG/XDH/6Q733ve1x22WVs3LhxyubxZp7x0qVLgZE0k4nSn5566ilg7LsUQrw9\nSFAthDitfD4fTz/99OiK8TXXXHPC2s+ny2c/+1lyc3N5+OGHqaurG22//fbbUUrxjW98Y3SF+Zi7\n776baDTKrbfeOi51RSnFD37wA1pbW0fbLMvi7rvvHh33mHXr1pGTk8Pvf//7ccHdww8/zO7du1m0\naBHveMc7RtuPlR9saWk5xTuHiy++mPnz5/OPf/yDX//612OOPfPMMzz++OPk5eWxdu3a0fZPfepT\nKKX4xCc+MZry8FrHVmRhZFfN2tracau3GzZsoLq6+pTm/sc//pHPfvazzJs3jz/+8Y84HI7j9n2j\n8/D7/WiaNuYdnkxJSQnvec97aGtrG7difujQIX7yk5/gcrm4+eabJz2mEOKtQdI/hBAn9ZWvfOW4\nx66++uoxweBEMjIy+Otf/8ratWt58sknueqqq9iyZcuE6RanS0ZGBl/4whe46667uOeee3jkkUeA\nkS3Qv/jFL/LNb36TRYsWcf3115Odnc2TTz7Jnj17OO+88/jGN74xbjxN07j44os5//zzx9SpPnDg\nAO94xzv43Oc+N9rX4/Hw8MMP88EPfpB3v/vdXHfddcycOZN9+/bxl7/8hUAgMLrZyzFXXnkl3/nO\nd/jCF77AgQMH8Pv9AHzpS196U/e/ceNGrrzyStavX89vf/tbFi9eTF1dHY899hhOp5NNmzbhcrlG\n+3/0ox/l+eefZ9OmTcyePZt169aRn59PZ2cn27ZtY+3atXz3u98FRn5h+cQnPsH555/Pddddh91u\n5/nnn6e6upprr72WzZs3v6k5A3z4wx9GKcWFF17Igw8+OO64z+fj05/+9Juah9fr5Z3vfCc7d+7k\n2muvZdmyZdjtdi6//PIT7rr5k5/8hEsvvZR7772XZ555hosuuoiOjg5+97vfkUgk+K//+q9J56ML\nId5CJlMiZPv27eraa69VJSUlStM0tXHjxjHHh4eH1b/+67+q0tJS5Xa71dy5c9X3vve9KStRIoQ4\nO05UTu/Ynx/84Aej/bdu3ap0XVdXXHHFhOMlk0m1du1apeu6uuCCC0ZrCmuaNq4835txsnFisZgq\nKSlRNptN7d27d8yx3//+92rVqlUqOztbuVwuNX/+fHXvvfeq4eHhceOsWrVKGYahGLine truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa6d14e0>"
"<matplotlib.figure.Figure at 0xa7ca278>"
]
},
"metadata": {},
@@ -1565,7 +1560,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Final P: [ 0.024 0.042 0.002]\n"
"Final P: [ 0.024 0.041 0.002]\n"
]
}
],
@@ -1582,11 +1577,11 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"I have plotted the landmarks as solid squares. The path of the robot is drawn with black line. The covariance ellipses for the predict step is light gray, and the covariances of the update are shown in green. To make them visible at this scale I have set the ellipse boundary at 6$\\sigma$.\n",
"I have plotted the landmarks as solid squares. The path of the robot is drawn with a black line. The covariance ellipses for the predict step are light gray, and the covariances of the update are shown in green. To make them visible at this scale I have set the ellipse boundary at 6$\\sigma$.\n",
"\n",
"From this we can see that there is a lot of uncertainty added by our motion model, and that most of the error in in the direction of motion. We can see that from the shape of the blue ellipses. After a few steps we can see that the filter incorporates the landmark measurements.\n",
"We can see that there is a lot of uncertainty added by our motion model, and that most of the error in in the direction of motion. We determine that from the shape of the blue ellipses. After a few steps we can see that the filter incorporates the landmark measurements and the errors improve.\n",
"\n",
"I used the same initial conditions and landmark locations in the UKF chapter. You can see both in the plot and in the printed final value for $\\mathbf P$ that the UKF achieves much better accuracy in terms of the error ellipse. The black solid line denotes the robot's actual path. Both perform roughly as well as far as their estimate for $\\mathbf x$ is concerned. \n",
"I used the same initial conditions and landmark locations in the UKF chapter. The UKF achieves much better accuracy in terms of the error ellipse. Both perform roughly as well as far as their estimate for $\\mathbf x$ is concerned. \n",
"\n",
"Now lets add another landmark."
]
@@ -1600,9 +1595,9 @@
"outputs": [
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa796780>"
"<matplotlib.figure.Figure at 0xa82cc50>"
]
},
"metadata": {},
@@ -1612,7 +1607,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Final P: [ 0.019 0.022 0.002]\n"
"Final P: [ 0.02 0.021 0.002]\n"
]
}
],
@@ -1630,7 +1625,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"The uncertainly in the estimates near the end of the track are smaller with the additional landmark. We can see the fantastic effect that multiple landmarks has on our uncertainty by only using the first two landmarks."
"The uncertainly in the estimates near the end of the track are smaller. We can see the effect that multiple landmarks have on our uncertainty by only using the first two landmarks."
]
},
{
@@ -1643,9 +1638,9 @@
"outputs": [
{
"data": {
"image/png": "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\nfy6FEJcGCaqFEK3Kz8+P77//vm7FeNy4cac8+7m1PPHEEwQFBfHRRx+RkpJSl3733XejaRqvvPJK\n3QrzSbNmzaKqqorp06c32LqiaRoLFy7k+PHjdWlut5tZs2bVtXvSxIkTCQwM5LPPPmsQ3H300Ufs\n3LmTXr16cfnll9elnzx+MD09vYVPDldddRXdu3fn559/ZtmyZfXyNm7cyBdffEFwcDATJkyoS585\ncyaapvHggw/WbXn4tZMrsnDiVs3Dhw83WL2Ni4sjMTGxRWP/8ssveeKJJ+jWrRtffvklRqOxybJn\nOg5/f38URak3h6cTERHB9ddfT0ZGRoMV8wMHDvDee+9hNpu54447mt2mEOLiINs/hBCn9cILLzSZ\nN2bMmHrBYGO8vLz47rvvmDBhAuvXr2f06NGsXbu20e0WrcXLy4tnnnmGp59+mjlz5rBixQrgxBXo\nf/rTn3jttdfo1asXU6ZMwdfXl/Xr17Nr1y769u3LK6+80qA9RVG46qqr6NevX71zqvft28fll1/O\nk08+WVfWarXy0UcfcdNNN3HdddcxefJkOnbsyN69e/n3v/9NQEBA3WUvJ40aNYo33niDZ555hn37\n9uHv7w/As88+e1bPv2TJEkaNGsW0adNYuXIlvXv3JiUlhVWrVmEymVi6dClms7mu/L333su2bdtY\nunQpnTp1YuLEiYSEhJCdnc3mzZuZMGECb775JnDiF5YHH3yQfv36MXnyZAwGA9u2bSMxMZHx48ez\nZs2asxozwG233YamaQwePJhFixY1yPfz8+Oxxx47q3HYbDauvPJK4uPjGT9+PAMGDMBgMHDNNdec\n8tbN9957j6FDhzJ37lw2btzIFVdcQVZWFv/617+orq7m73//e7P3owshLiLNOSJky5Yt2vjx47WI\niAhNURRtyZIl9fIrKiq0Rx55RIuMjNQsFovWtWtXbcGCBR47okQIcX6c6ji9k18LFy6sK79p0yZN\nVVVt5MiRjbZXU1OjTZgwQVNVVRs0aFDdmcKKojQ4nu9snK4du92uRUREaHq9XtuzZ0+9vM8++0wb\nPny45uvrq5nNZq179+7a3LlztYqKigbtDB8+XNPpdNqxY8e0+fPna926ddPMZrMWFRWlPf30043W\n0TRN2717tzZlyhQtNDRUMxqNWmRkpHbPPfdox44da7T8W2+9pfXq1UuzWCyNHmHYmLine truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa6d1240>"
"<matplotlib.figure.Figure at 0xa7ca080>"
]
},
"metadata": {},
@@ -1655,7 +1650,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Final P: [ 0.02 0.046 0. ]\n"
"Final P: [ 0.021 0.045 0. ]\n"
]
}
],
@@ -1683,9 +1678,9 @@
"outputs": [
{
"data": {
"image/png": "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\nLriAefPmHbd5HMt7PGzYMKA5zaSt9KeVK1cCLT9LIcQPgwTVQogTKi4ujlWrVoVXjKdMmRKx9vOJ\nMnv2bBITE5k7dy45OTnh9lmzZqGqKo8//nh4hfmo++67j/r6embMmNEqdUVVVZ599lkKCwvDbaFQ\niPvuuy887lHTpk0jISGB9957r1VwN3fuXLZu3crgwYM599xzw+1Hyw8WFBR0887hvPPOY8CAAXz5\n5Ze89dZbLY599tlnLF68GLvdztSpU8Ptd955J6qqcvvtt4dTHr7r6IosNO+qeejQoVart4888gj7\n9+/v1tw/+OADZs+eTf/+/fnggw/Q6/XtntvVedhsNhRFafEZdiQtLY0f/ehHFBUVtVox37t3Ly+9\n9BJGo5Ebb7yx02MKIf47SPqHEKJDf/rTn9o9dtlll7UIBtsSHR3NJ598wtSpU1mxYgWXXnopy5cv\nbzPd4kSJjo7m97//Pffeey8PPfQQCxYsAJq3QH/ggQf4y1/+wuDBg7nmmmuIjY1lxYoVbNu2jbPO\nOovHH3+81XiKonDeeedx9tlnt6hTvXv3bs4991zuueee8Llms5m5c+dy9dVXc8kll3DVVVfRs2dP\ndu7cybJly4iPjw9v9nLUxIkT+dvf/sbvf/97du/ejc1mA+DBBx88pvufN28eEydO5Oabb2bhwoUM\nGTKEnJwcFi1ahMFgYP78+RiNxvD5t956Kxs2bGD+/Pn07t2badOm4XA4KC0tZe3atUydOpWnn34a\naP6F5fbbb+fss8/mqquuIioqig0bNrB//36uuOIKli5dekxzBvjpT3+Kqqqcc845PPfcc62Ox8XF\ncddddx3TPCwWC2PGjGHTpk1cccUVDB8+nKioKC688MKIu26+9NJLnH/++Tz88MN89tlnjB49mpKS\nEt599138fj+vvPJKp/PRhRD/RToqD/L444+ro0aNUq1Wq2q329XLL79c3bNnT4tzZsyYoSqK0uI1\nZsyY41qmRAhx8kUqp3f09eyzz4bPX7NmjarRaNSLL764zfECgYA6depUVaPRqCNHjgzXFFYUpVV5\nvmPR0TgNDQ1qWlqaqtPp1B07drQ49t5776njxo1TY2NjVaPRqA4YMEB9+OGHVa/X22qccePGqVqt\nVs3NzVWffPJJtX///qrRaFR79Oih3nvvvW32UVVV3b59u3rNNdeoSUlJql6vV9PT0Line truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa7fbf28>"
"<matplotlib.figure.Figure at 0xa956588>"
]
},
"metadata": {},
@@ -1695,7 +1690,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Final P: [ 0.284 0.74 0.003]\n"
"Final P: [ 0.265 0.796 0.004]\n"
]
}
],
@@ -1710,7 +1705,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"As you probably suspected, only one landmark produces a very bad result. Conversely, a large number of landmarks allows us to make very accurate estimates."
"As you probably suspected, one landmark produces a very bad result. Conversely, a large number of landmarks allows us to make very accurate estimates."
]
},
{
@@ -1723,9 +1718,9 @@
"outputs": [
{
"data": {
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtUAAADnCAYAAADRnqrkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xl0XWW9//H33mc+Jycn89DM89CJTrRQoC1QpIJQQSZ/\nLgqoy8W6iqIslKuU4eL006sXvYN3+CFFFEUZpF4r0DK0lKEjpUPazEMznEwnyZmnvX9/1EZi0jZt\nkqZpv6+1sij72cN3Pycr+XT32c+j6LquI4QQQgghhDhj6nQXIIQQQgghxEwnoVoIIYQQQogJklAt\nhBBCCCHEBEmoFkIIIYQQYoIkVAshhBBCCDFBEqqFEEIIIYSYIAnVQghxmlauXImqqrS2tk53KaO8\n/fbbqKrK448/Pt2lnJSqqlx55ZUjtj366KOoqsrWrVunqaqRWlpaUFWVe+65Z7pLEULMABKqhRAn\npKrqSb8MBsOIAHQ80P19WDrutddew+l0YrVaee6558Z9nZ/97GdnVK/BYCA5OZnly5fzr//6r8Ri\nsYl1yF8pioKiKJNyrhO56667zqmAeTacjX79uOOh+UTfr9NRkxBi5jJOdwFCiHOboig8+uijnGid\nqMLCwnGd59lnn+Xzn/88drudV155hVWrVo37OsuWLTujemOxGC0tLbz44ou89957bNmyhZdeemnc\n55pOF2KY+8pXvsIdd9xBfn7+dJcCQE5ODjU1NbhcrukuRQgxA0ioFkKc0sMPPzyh43/84x/zzW9+\nk6ysLP785z8zf/78KbnOic7z8MMPs2DBAl555RW2bdvG5ZdfPinXmUoX4mK3KSkppKSknLXrnaqP\njUYj5eXlZ6kaIcRMJ8M/hBBT6utf/zoPPvgg5eXlvPfeeycM1FOptLSUFStWALBz584x93nxxRdZ\ntWoVSUlJ2Gw2qqureeSRR/D7/Sc8r6Zp/PjHP6ayshKbzUZ+fj4PPPAAPp9vzP337dvHrbfeSlZW\nFhaLhfz8fL7whS/Q3Nw8Yr+ioiKeeeYZ4G/jt48PZ5mIpqYm7r77bvLy8rBYLGRlZXHbbbexf//+\nEx7z/PPPs3r1atLS0rBarRQWFnLrrbeyffv24X2Ghob40Y9+xFVXXTV87oyMDG644Qbee++9cdc3\n1pjqVatWnXRoUHFx8RnVsWHDBoqLi1EUhbfeemvEOY+PRz/ZmOru7m7uu+8+SkpKsFqtpKWl8alP\nfYpt27aN2vf4sKh77rmHlpYWbr/9dtLT07HZbCxZsoT//d//HXcfCSHOXfKkWggxJWKxGOvWreO5\n555j6dKl/OlPfyI1NXXa6jn+VNJkMo1qW79+PU888QSpqanccccdJCUl8frrr/NP//RPbNy4kW3b\ntuFwOEYd99WvfpXt27dz66234nK52LRpEz/5yU/Yvn07W7duHXGtTZs2cdNNN6FpGjfddBMlJSV8\n9NFHPPXUU7z00ku8+eabzJs3D4D777+fX/7yl3z00Ufcddddw0NsJjIcZM+ePVx11VV4vV6uu+46\n5s6dS0NDAy+++CIbN27klVde4eqrrx5xzF133cUzzzxDWloaa9euJTMzk/b2drZu3coLL7zA8uXL\nAaipqeE73/kOK1as4Prrryc5OZnW1lZeeeUVNm3axMaNG7n22mtPWeNYQ17uvvvuUUOFAHbv3s3G\njRtHfC6nU8eCBQv42te+xr/8y79QWFjIXXfdNXyelStXnrTO1tZWli9fTkdHBytWrOD222+ns7OT\n559/nk2bNvHUU09x5513jjquubmZiy++mJKSEu688076+/v53e9+x9q1a9m8efPwX/yEEDOULoQQ\nJ6Aoiq6qqv7oo4+e8Ovj3nrrLV1RFH3JkiX6NddcoyuKol9//fV6IBA44+v84he/OO16/96hQ4d0\nh8Ohq6qq79mzZ0Tb+++/ryuKoufn5+tdXV0j2tatW6erqqp/5StfGbF95cqVuqIoenp6un706NHh\n7Zqm6WvXrtVVVdV/8IMfDG/3+/16WlqabjQa9bfffnvEuZ566ildURR93rx5I7bfdddduqqqo/Y/\nleOfwWOPPTZie3V1ta6qqv6rX/1qxPYtW7boqqrqmZmZejAYHN7+n//5n7qiKPrFF1+sDw4OjrpO\nR0fH8J+Hhob0vr6+Ufu0t7frs2bN0quqqka1KYqir1q1asS2Rx99dFz33NjYqGdmZuoOh0PfuXPn\nGdfR3Nw8Zh1/33733XeP2H7ttdfqqqrq//RP/zRi+4EDB3S73a7bbDa9vb19ePvxz2SsY1599VVd\nURT9uuuuO+k9CyHOfRKqhRAndDwInOjLYDCM2P/j4UFRFL28vFyPxWITus6CBQtOu97jgfw73/mO\n/rnPfU632+26qqr6N7/5zVHHfOELX9BVVR0zvLvdbt1ut+tOp3PEfaxcuVJXVVX/7ne/O+qYI0eO\n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 truncated
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAtUAAADnCAYAAADRnqrkAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3Xd0XeWd//v33qefo3PUddSLZUmWG25gbIMLYIJD88CE\nkpWLgSS/XNYkJCS5JPlNsA0h7SaTDGRK5jdzGUwITAglwUlMqC4YA264ypZkq/d6et/7/uFYsSLZ\nli3Jsuzvay0tzC7P/u5nnyV9tPXsZyu6rusIIYQQQgghzps60QUIIYQQQggx2UmoFkIIIYQQYpQk\nVAshhBBCCDFKEqqFEEIIIYQYJQnVQgghhBBCjJKEaiGEEEIIIUZJQrUQQpyj5cuXo6oqjY2NE13K\nEFu2bEFVVZ544omJLuWMVFXluuuuG7Rs/fr1qKrK1q1bJ6iqwRoaGlBVlQcffHCiSxFCTAISqoUQ\np6Wq6hm/DAbDoAB0MtD9bVg66c0338TpdGK1WnnxxRdHfJynn376vOo1GAykpqayZMkS/uVf/oV4\nPD66DvkLRVFQFGVM2jqd+++//6IKmBfChejXU50Mzaf7vE5ETUKIycs40QUIIS5uiqKwfv16Tvee\nqOLi4hG18/zzz/P5z38eu93O66+/zooVK0Z8nKuvvvq86o3H4zQ0NPDqq6+yY8cO3nnnHV577bUR\ntzWRLscw95WvfIV7772XwsLCiS4FgLy8PKqqqkhOTp7oUoQQk4CEaiHEWT322GOj2v+nP/0p3/rW\nt8jOzuZPf/oTV1xxxbgc53TtPPbYY8ydO5fXX3+dbdu2ce21147JccbT5fiy27S0NNLS0i7Y8c7W\nx0ajkfLy8gtUjRBispPhH0KIcfX1r3+dRx99lPLycnbs2HHaQD2epk6dyrJlywDYuXPnsNu8+uqr\nrFixgpSUFGw2G9OnT2fdunUEAoHTtqtpGj/96U+ZNm0aNpuNwsJCvvnNb+L3+4fdft++fdx1111k\nZ2djsVgoLCzkC1/4AvX19YO2Kykp4bnnngP+On775HCW0airq+OBBx6goKAAi8VCdnY2d999NwcO\nHDjtPi+99BIrV64kIyMDq9VKcXExd911F9u3bx/Yxuv18pOf/ITrr79+oO2srCxuu+02duzYMeL6\nhhtTvWLFijMODZoyZcp51bFhwwamTJmCoihs3rx5UJsnx6OfaUx1Z2cnDz/8MKWlpVitVjIyMrj1\n1lvZtm3bkG1PDot68MEHaWho4J577iEzMxObzcaVV17JH//4xxH3kRDi4iV3qoUQ4yIej7NmzRpe\nfPFFFi5cyB/+8AfS09MnrJ6TdyVNJtOQdWvXruXJJ58kPT2de++9l5SUFN566y2+973vsXHjRrZt\n24bD4Riy31e/+lW2b9/OXXfdRXJyMps2beJnP/sZ27dvZ+vWrYOOtWnTJu644w40TeOOO+6gtLSU\n/fv388wzz/Daa6/x3nvvMXv2bAAeeeQR/vu//5v9+/dz//33DwyxGc1wkD179nD99dfj8/m4+eab\nmTVrFseOHePVV19l48aNvP7669xwww2D9rn//vt57rnnyMjIYPXq1bjdblpaWti6dSuvvPIKS5Ys\nAaCqqorvfve7LFu2jFtuuYXU1FQaGxt5/fXX2bRpExs3buSmm246a43DDXl54IEHhgwVAti9ezcb\nN24cdF3OpY65c+fyta99jX/+53+muLiY+++/f6Cd5cuXn7HOxsZGlixZQmtrK8uWLeOee+6hra2N\nl156iU2bNvHMM89w3333Ddmvvr6eq666itLSUu677z56e3v5zW9+w+rVq3n77bcHfvETQkxSuhBC\nnIaiKLqqqvr69etP+3WqzZs364qi6FdeeaV+44036oqi6LfccoseDAbP+zi//OUvz7nev3X48GHd\n4XDoqqrqe/bsGbTuww8/1BVF0QsLC/X29vZB69asWaOrqqp/5StfGbR8+fLluqIoemZmpt7c3Dyw\nXNM0ffXq1bqqqvqPfvSjgeWBQEDPyMjQjUajvmXLlkFtPfPMM7qiKPrs2bMHLb///vt1VVWHbH82\nJ6/B448/Pmj59OnTdVVV9V/96leDlr/zzju6qqq62+3WQ6HQwPL/+I//0BVF0a+66ird4/EMOU5r\na+vAv71er97T0zNkm5aWFj03N1evrKwcsk5RFH3FihWDlq1fv35E53z8+HHd7XbrDodD37lz53nX\nUV9fP2wdf7v+gQceGLT8pptu0lVV1b/3ve8NWn7w4EHdbrfrNptNb2lpGVh+8poMt8+f//xnXVEU\n/eabbz7jOQshLn4SqoUQp3UyCJzuy2AwDNr+1PCgKIpeXl6ux+PxUR1n7ty551zvyUD+3e9+V//c\n5z6n2+12XVVV/Vvf+taQfb7whS/oqqoOG947Ojp0u92uO53OQeexfPlyXVVV/fvf//6QfY4ePaqr\nqqqXl5cPLPv1r3+tK4qi33PPPcPWPX/+fF1VVf3DDz8cWDaWoXr79u26oij61VdfPew+d955p66q\nqv4///M/A8tmzpypq6qq7969+5yO/7cefvhhXVVVvampadDy8w3VPT09enl5uW40GvWNGzeOqo7z\nCdUtLS0Dv4TFYrEh+3zjG98Y8kvVyWtSUlKia5o2ZJ+ioiI9MzNzxOcihLg4yZhqIcRZJRKJYb9O\nN0VdRUUFJSUl1NTU8NBDD434obvhjrFnz55zrveJJ57giSee4Ac/+AEvvPAC4XCYJ598kh/96EdD\ntt27dy/AsEMMsrKymDVrFoFAgOrq6iHrly5dOmRZeXk5breb2tragfHYe/bsQVGUYY8BDAy7OJ9z\nHYmT7Z7p+LquD2wXDAY5dOgQ6enpzJs3b0THODkMprCwEKvVOjA++Re/+AUALS0toz6PSCTCbbfd\nRm1tLU8//TS33HLLBa/jZB8tWbIEo3HoCMq/7ctTzZkzZ9ghPAUFBfT19Y2qLiHExJMx1UKIMZed\nnc3zzz/Pddddx3/9138RCoV49tlnR/2g3UglEgkAwuEwO3fu5Etf+hLf/e53KSkp4Z577hm0rcfj\nGah5ODk5OQD09/cPWed2u4fdx+1209HRgdfrxeFwjOgYuq4Pe4yx4PF4UBRlxOd48r95eXkjav+1\n117jM5/5DDabjZUrV1JaWorD4UBVVd577z22bt1KJBIZ9Xl87nOfY8eOHXzzm9/koYcempA6RvN5\nSUlJGXYfo9GIpmmjqksIMfEkVAshxkVubi5bt27lxhtv5Ne//jWhUIgXX3xx2AcFx4vVauXaa69l\n06ZNzJgxgy996UusWLFiUBg+OQdxe3s7LpdrSBttbW2DtjtVR0cHZWVlwy4HBto79RjDaWtrQ1GU\ncZsPOTk5GV3Xz3j8U+s8Gf5Gelf3sccew2KxsHv37iFT0LW2to7JC2y+8Y1v8Morr3D33Xfz4x//\neMLqGMm1PHU7IcTlQ4Z/CCHGTVZWFps3b+bKK6/k1VdfZfXq1YTD4QteR1FREd/61rfw+XysXbt2\n0LqTwxvee++9Ift1dXVx8OBBHA4HFRUVQ9Zv2bJlyLLq6mo6OjqYOnXqwMwU8+bNQ9f1YY8B8M47\n7wAwf/78gWUn7+qfvOs+Gmc6R4C3334bRVEGjm+325k5cyY9PT3s3r37rO0fO3aM6dOnDwmyuq4P\nO8XcufrFL37Bz3/+c6699lo2bNgwZnWcTx/PnTsXODHMZLjhT2+//TYw+FoKIS4PEqqFEOMqJSWF\nd955Z+CO8S233HLGuZ/HyyOPPEJGRgbPPvsstbW1A8sffPBBdF3nBz/4wcAd5pMeffRRgsEg999/\n/5ChK7qu89RTT9HU1DSwTNM0Hn300YF2T1q9ejXp6em8/PLLQ8Lds88+y+7du5k5cyYLFy4cWH5y\n+sHGxsZRnjksXryYyspKPv74Y379618PWvfuu+/y2muvkZmZye233z6w/OGHH0bXdR566KGBIQ+n\nOnlHFk68VbOmpmbI3dt169ZRVVU1qtp/97vf8cgjjzBt2jR+97vfYTabT7vtudaRmpqKoiiDruHZ\n5OXl8alPfYrm5uYhd8wPHTrEL3/5S6xWK5/73OdG3KYQ4tIgwz+EEGf1+OOPn3bdTTfdNCgMDicp\nKYk///nP3H777bz11lvceOONbNq0adjhFuMlKSmJb3/723zzm9/kscce48UXXwROvAL9O9/5Dj/6\n0Y+YOXMmn/nMZ0hOTuatt95iz549XHHFFfzgBz8Y0p6iKCxevJg5c+YMmqf6wIEDLFy4kK9//esD\n29rtdp599ln+/u//nhtuuIE777yTKVOmsG/fPv70pz+RlpY28LKXk1auXMlPfvITvv3tb3PgwAFS\nU1MB+Md//MfzOv8NGzawcuVK1qxZw0svvcSsWbOora3l1VdfxWKx8Nxzz2G1Wge2/8IXvsD27dt5\n7rnnmDp1KqtXryYrK4u2tja2bNnC7bffzs9+9jPgxC8sDz30EHPmzOHOO+/EZDKxfft2qqqquO22\n29i4ceN51Qzw2c9+Fl3Xueqqq3j66aeHrE9JSeGrX/3qedXhcDhYtGgRO3bs4LbbbmPevHmYTCaW\nLl16xrdu/vKXv+Saa65h7dq1vPvuu1x99dW0trby29/+lkgkwn/+53+OeDy6EOISMjGTjgghJoMz\nTad38uupp54a2H7z5s26qqr6ddddN2x70WhUv/3223VVVfUFCxYMzCmsKMqQ6fnOx9naCYVCel5e\nnm40GvVPPvlk0LqXX35ZX758uZ6cnKxbrVa9srJSX7t2re73+4e0s3z5ct1gMOh1dXX6T3/6U33a\ntGm61WrVCwoK9G9+85vD7qPrur537179M5/5jO52u3Wz2azn5+frn//85/W6urphtLine truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa860ac8>"
"<matplotlib.figure.Figure at 0xa727a20>"
]
},
"metadata": {},
@@ -1735,7 +1730,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"Final P: [ 0.009 0.008 0.001]\n"
"Final P: [ 0.009 0.009 0.001]\n"
]
}
],
@@ -1755,7 +1750,7 @@
"source": [
"### Discussion\n",
"\n",
"I said that this was a 'real' problem, and in some ways it is. I've seen alternative presentations that used robot motion models that led to much easier Jacobians. On the other hand, my model of a automobile's movement is itself simplistic in several ways. First, it uses a bicycle model. A real car has two sets of tires, and each travels on a different radius. The wheels do not grip the surface perfectly. I also assumed that the robot responds instantaneously to the control input. Sebastian Thrun writes in *Probabilistic Robots* that simplified models are justified because the filters perform well when used to track real vehicles. The lesson here is that while you have to have a reasonably accurate nonlinear model, it does not need to be perfect to operate well. As a designer you will need to balance the fidelity of your model with the difficulty of the math and the computation required to implement the equations. \n",
"I said that this was a real problem, and in some ways it is. I've seen alternative presentations that used robot motion models that led to simpler Jacobians. On the other hand, my model of the movement is also simplistic in several ways. First, it uses a bicycle model. A real car has two sets of tires, and each travels on a different radius. The wheels do not grip the surface perfectly. I also assumed that the robot responds instantaneously to the control input. Sebastian Thrun writes in *Probabilistic Robots* that simplified models are justified because the filters perform well when used to track real vehicles. The lesson here is that while you have to have a reasonably accurate nonlinear model, it does not need to be perfect to operate well. As a designer you will need to balance the fidelity of your model with the difficulty of the math and the CPU time required to perform the linear algebra. \n",
"\n",
"Another way in which this problem was simplistic is that we assumed that we knew the correspondance between the landmarks and measurements. But suppose we are using radar - how would we know that a specific signal return corresponded to a specific building in the local scene? This question hints at SLAM algorithms - simultaneous localization and mapping. SLAM is not the point of this book, so I will not elaborate on this topic. "
]
@@ -1766,15 +1761,16 @@
"source": [
"## UKF vs EKF\n",
"\n",
"I implemented this tracking problem using the UKF in the previous chapter. The difference in implementation should be very clear. Computing the Jacobians for the state and measurement models was not trivial despite a rudimentary motion model. I am justified in using this model because the research resulting from the DARPA car challenges has shown that it works well in practice. A different problem could result in a Jacobian which is difficult or impossible to derive analytically. In contrast, the UKF only requires you to provide a function that computes the system motion model and another for the measurement model. \n",
"\n",
"There are many cases where the Jacobian cannot be found analytically. The details are beyond the scope of this book, but you will have to use numerical methods to compute the Jacobian. That is a very nontrivial undertaking, and you will spend a significant portion of a master's degree at a STEM school learning techniques to handle such situations. Even then you'll likely only be able to solve problems related to your field - an aeronautical engineer learns a lot about Navier Stokes equations, but not much about modelling chemical reaction rates. \n",
"In the last chapter I used the UKF to solve this problem. The difference in implementation should be very clear. Computing the Jacobians for the state and measurement models was not trivial despite a rudimentary motion model. A different problem could result in a Jacobian which is difficult or impossible to derive analytically. In contrast, the UKF only requires you to provide a function that computes the system motion model and another for the measurement model. \n",
"\n",
"There are many cases where the Jacobian cannot be found analytically. The details are beyond the scope of this book, but you will have to use numerical methods to compute the Jacobian. That undertaking is not trivial, and you will spend a significant portion of a master's degree at a STEM school learning techniques to handle such situations. Even then you'll likely only be able to solve problems related to your field - an aeronautical engineer learns a lot about Navier Stokes equations, but not much about modelling chemical reaction rates. \n",
"\n",
"So, UKFs are easy. Are they accurate? In practice they often perform better than the EKF. You can find plenty of research papers that prove that the UKF outperforms the EKF in various problem domains. It's not hard to understand why this would be true. The EKF works by linearizing the system model and measurement model at a single point, and the UKF uses $2n+1$ points.\n",
"\n",
"Let's look at a specific example. Take $f(x) = x^3$ and pass a Gaussian distribution through it. I will compute an accurate answer using a monte carlo simulation. I generate 50,000 points randomly distributed according to the Gaussian, pass each through $f(x)$, then compute the mean and variance of the result. \n",
"\n",
"First, let's see how the EKF fairs. The EKF linearizes the function by taking the derivative and evaluating it the mean $x$ to get the slope tangent to the function at that point. This slope becomes the linear function that we use to transform the Gaussian. Here is a plot of that."
"The EKF linearizes the function by taking the derivative to find the slope at the evaluation point $x$. This slope becomes the linear function that we use to transform the Gaussian. Here is a plot of that."
]
},
{
@@ -1786,9 +1782,9 @@
"outputs": [
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa901cf8>"
"<matplotlib.figure.Figure at 0xa77cfd0>"
]
},
"metadata": {},
@@ -1798,7 +1794,7 @@
"name": "stdout",
"output_type": "stream",
"text": [
"actual mean=1.29, std=1.13\n",
"actual mean=1.30, std=1.13\n",
"EKF mean=1.00, std=0.95\n"
]
}
@@ -1812,9 +1808,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"We can see from both the graph and the print out at the bottom that the EKF has introduced quite a bit of error.\n",
"\n",
"In contrast, here is the performance of the UKF:"
"The EKF computation is rather inaccurate. In contrast, here is the performance of the UKF:"
]
},
{
@@ -1826,9 +1820,9 @@
"outputs": [
{
"data": {
"image/png": "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 truncated
"image/png": "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 truncated
"text/plain": [
"<matplotlib.figure.Figure at 0xa883828>"
"<matplotlib.figure.Figure at 0xa920ba8>"
]
},
"metadata": {},
@@ -1851,9 +1845,7 @@
"cell_type": "markdown",
"metadata": {},
"source": [
"Here we can see that the computation of the UKF's mean is accurate to 2 decimal places. The standard deviation is slightly off, but you can also fine tune how the UKF computes the distribution by using the $\\alpha$, $\\beta$, and $\\gamma$ parameters for generating the sigma points. Here I used $\\alpha=0.001$, $\\beta=3$, and $\\gamma=1$. Feel free to modify them in the function call to see the result. You should be able to get better results than I did. However, avoid over-tuning the UKF for a specific test. It may perform better for your test case, but worse in general.\n",
"\n",
"This is a contrived example, but as I said the literature is filled with detailed studies of real world problems that exhibit similar performance differences between the two filters."
"Here we can see that the computation of the UKF's mean is accurate to 2 decimal places. The standard deviation is slightly off, but you can also fine tune how the UKF computes the distribution by using the $\\alpha$, $\\beta$, and $\\gamma$ parameters for generating the sigma points. Here I used $\\alpha=0.001$, $\\beta=3$, and $\\gamma=1$. Feel free to modify them to see the result. You should be able to get better results than I did. However, avoid over-tuning the UKF for a specific test. It may perform better for your test case, but worse in general."
]
}
],