Commit Graph
100 Commits
Author SHA1 Message Date
Roger Labbe 5240944dd4 Ran all notebooks to use new css settings. 2016-01-17 20:44:23 -08:00
Roger Labbe 0a41e78aeb Added likelihood and orthogonal projections
Added the likelihood equations/form from the discrete bayes
chapter to better tie in that form of reasoning. then I converted
the 1d equations to the orthogonal projection form to show how
the Kalman gain is computed and where the residual comes from
computationally. This should make the full KF equations much more
approachable.
2016-01-17 20:16:27 -08:00
Roger Labbe 005fe0618c Edits for conciseness. 2016-01-17 12:36:02 -08:00
Roger Labbe daf7ae26e6 Reexecuted to incorporate css changes. 2016-01-17 12:06:31 -08:00
Roger Labbe d0b4a1f4bc Generalized discrete Bayes with likelihood.
All my code in this chapter hard coded the computation of the
likelihood inside the update() function, where it had no business.
Also, my treatment of the likelihood was rather hand wavey. By
pulling it out of update() and maing it explicit I have created
a firm foundation for the rest of the book.
2016-01-17 12:02:00 -08:00
Roger Labbe eca26a2422 Deleted empty code cell 2016-01-17 08:18:35 -08:00
Roger Labbe 752bf9687e Updated Table of Contents
Removed the Appendixes that I deleted, and added all of the supporting
notebook.
2016-01-17 08:16:36 -08:00
Roger Labbe 23877ea4f3 Updated to require FilterPy 0.1.1
This version of filterpy supplies functions for discrete bayes
filters.
2016-01-17 06:21:30 -08:00
Roger Labbe 02d49f16e5 Added description of how to use Jupyter Notebook 2016-01-13 18:46:44 -08:00
Roger Labbe 7263c3f89b Updated to new Jupyter Notebook version 2016-01-13 17:56:41 -08:00
Roger Labbe 6933c33dbc Copy editing. 2016-01-13 17:33:14 -08:00
Roger Labbe 5921b20f87 Word smithing.
Just trimming the flab.
2016-01-12 20:57:13 -08:00
Roger Labbe ffaee9b080 Removing flab from language. 2016-01-10 20:46:43 -08:00
Roger Labbe fb7db6d752 More removal of flabby language. 2016-01-10 10:14:29 -08:00
Roger Labbe 974543a603 Fixed code bug due to renaming function.
I renamed the function f, but did not propogate that change
to every cell.
2016-01-10 09:12:03 -08:00
Roger Labbe d9ba9fde22 Scatter plot of bearing shows 2 results.
The text in the book gave one example, and then hand waved an
explanation about a different bearing choice. It is clearer to
just show it in a graph.
2016-01-10 09:00:00 -08:00
Roger Labbe 58d91c2de3 Copy and general edits.
Trimming the flab out of the language. Added a few examples and
such to clarify concepts.
2016-01-10 08:58:37 -08:00
Roger Labbe 8e2bb6856d Fixed error in latex
It rendered fine in the notebook, but \text{foo_bar} was causing
an error in the pdf generation. Switching to \mathtt{foo\_bar}
mostly fixes it (though in the notebook it renders as -, not _.
Oye.
2016-01-09 09:10:56 -08:00
Roger Labbe 800ea6c189 Cleaned up equations for UKF.
I was using a bunch of variable names that weren't consistent
with the rest of the book (but perhaps are more consistent with
the literature). It just made everything more challenging than
it needed to be, so instead of \mu and \sigma (e.g.) I use
\bar x and \bar P.

I also am in the middle of rewriting some sections for clarity,
but that work is not completed.
2016-01-09 08:52:03 -08:00
Roger Labbe b6d5052f45 Copy edits. 2016-01-09 08:51:24 -08:00
Roger Labbe eeab89c16c Copy edits. 2016-01-09 08:51:03 -08:00
Roger Labbe 6b9b97927d Redid Discrete Bayes animations.
I added titles so you can see where in the processing the
graph is.

This surfaced a bug in matplotlib 1.5 (#5399) so I added
some code to work around that.
2016-01-09 08:49:29 -08:00
Roger Labbe 65a77d0af2 Commited before I saved the file! 2016-01-09 08:20:53 -08:00
Roger Labbe 8bab476b31 Edited so I can report bug to matplotlib. 2016-01-09 08:20:28 -08:00
Roger Labbe cb45bf236e Copy edits 2016-01-05 15:45:27 -08:00
Roger Labbe 6a621ca59e Merge pull request #76 from wspr/wspr
03-gaussians copyedit
2016-01-05 06:44:28 -08:00
Roger Labbe e52e2ca206 Copy edits. 2016-01-03 16:13:40 -08:00
Roger Labbe 8a01161ea4 Streamlined description of EKF linearization 2016-01-03 11:32:22 -08:00
Roger Labbe 331d8cf880 Minor copy editing. 2016-01-03 11:32:07 -08:00
Roger Labbe 462ac1bb5c Fixed obsolete import, hard code of filename 2016-01-03 10:43:45 -08:00
Roger Labbe 122fe27680 changed from \bar to \overbar for prediction.
More visible, and works better with things like matrices.
2016-01-02 18:10:15 -08:00
Roger Labbe ab33584a0c Minor copy edit and code clean up.
Biggest change was changing the variable for noise to use
either std or var.
2016-01-02 18:08:43 -08:00
Roger Labbe 09406a6419 Added explanation for system dynamics matrix. 2016-01-02 18:07:00 -08:00
Roger Labbe fee08bfc7b Moved iterative ILD to supporting notebooks
Most people just won't want to read this material.
2016-01-01 15:43:50 -08:00
Roger Labbe 47cce41efb Moved Taylor Series to supporting notebooks. 2016-01-01 15:28:55 -08:00
Roger Labbe b2a3ce2a28 Major rewrite of matrix exponential section.
I was conflating thematrix exponential with Taylor series, making
the whole thing quite confusing.

There was also significant duplication of content, such as presenting
the calculus form of Newton's equations multiple times in slightly
different ways. I've made it all hang together now.
2016-01-01 15:18:35 -08:00
Roger Labbe 2610c4dc85 Merge branch 'master' of https://github.com/rlabbe/Kalman-and-Bayesian-Filters-in-Python 2015-12-27 08:13:14 -08:00
Roger Labbe 5999539d56 Merge pull request #75 from rsvp/devCode
code directory: Add __init__.py for access as package
2015-12-27 08:12:52 -08:00
Roger Labbe 63c398fc51 changed \bar to \overline 2015-12-20 12:42:30 -08:00
Roger Labbe 3445153b7c Latex cleanup. 2015-12-20 12:23:09 -08:00
Roger Labbe 5ffd42a25d Fixed FilterPy versioning check error.
The code only worked for the third version number. If the first
or second version numbers were too small it didn't detect it.
2015-12-20 10:08:31 -08:00
Roger Labbe 033dbea735 Copy edits. 2015-12-20 10:08:15 -08:00
Roger Labbe 108a3f1a4d Copy edits. 2015-12-20 09:00:26 -08:00
Roger Labbe 672e4bb3c5 Updated code listings.
Note sure I like this appendix, but as long as it exists it should
be up to date.
2015-12-20 08:59:58 -08:00
Roger Labbe 0e86469fac PDF build scripts build 6x9 book separately. 2015-12-20 08:59:11 -08:00
Roger Labbe 05caf4f1bb Copy edits. 2015-12-20 08:44:28 -08:00
Roger Labbe 9577007cc6 Deleted instructions for Sagemath install.
It is just too complicated for this book.
2015-12-20 08:34:42 -08:00
Roger Labbe dd1bb52baa Improved description of KFs. 2015-12-20 08:32:06 -08:00
Roger Labbe 0236af896d Added text for computation of velocities.
I explained how the covariances are computed by FPF',
and then how the velocity is computed using the kalman gain.
2015-12-19 21:12:41 -08:00
Roger Labbe 77ba700e39 Revised particle filter chapter.
Pretty happy with it now. Needs copy editing, and probably an
easier introduction to convey the basic idea. Moved from a class
based approach to a procedural approach, and I like that very much.
2015-12-19 16:18:21 -08:00
Roger Labbe 3c270d0c87 Fixed latex typo. 2015-12-19 16:17:40 -08:00
Roger Labbe ba553f2068 Fixes for GitHub issue #65.
Minor wording changes to clarify meaning.
2015-12-15 16:05:01 -08:00
Roger Labbe e12352c520 Fixed equation for total probability theorem.
I was using the wrong subscript (i instead of j) in the sum.
2015-12-15 15:45:26 -08:00
Roger Labbe 04ce859d01 Minor copy editing. 2015-12-13 15:16:33 -08:00
Roger Labbe 7905298583 Improved description of state-space methods. 2015-12-13 15:16:00 -08:00
Roger Labbe 26125c538f Added example of KF without using FilterPy. 2015-12-13 15:15:27 -08:00
Roger Labbe 6a05d8edd7 Fixed spelling mistake. 2015-12-13 11:01:15 -08:00
Roger Labbe 01dab63459 Added reference to Grewal2008 for observability. 2015-12-13 10:53:45 -08:00
Roger Labbe a1a1753c18 Fixed description of fixed-point filter.
I mistakenly stated that it re-estimated the points between times
j and k, when of course it recomputes only a single fixed point.
2015-12-10 20:21:13 -08:00
Roger Labbe 9ece51233b Minor copy edits. 2015-12-10 19:31:41 -08:00
Roger Labbe 0ca7aa1e84 Reran cells so they are executed in sequence. 2015-12-10 19:31:16 -08:00
Roger Labbe 5794485341 Added animation to PF chapter. 2015-12-10 18:13:41 -08:00
Roger Labbe 41d8d246e0 Extensive copy editing. 2015-12-09 06:31:14 -08:00
Roger Labbe 7b218e7243 Fixed typos. 2015-12-09 06:30:42 -08:00
Roger Labbe ef28d71938 Minor rewordings. 2015-11-29 20:46:49 -08:00
Roger Labbe 69ca760803 Typo fix. 2015-11-29 20:15:27 -08:00
Roger Labbe bfbfb0dcf8 Copy edit of math chapter.
Got rid of the duplicates and crud. Ordered sections in logical order,
and better explained the idea of state-space methods.
2015-11-29 14:41:50 -08:00
Roger Labbe ae4b3663ef Added definition for plant. 2015-11-29 14:41:34 -08:00
Roger Labbe 2b7b5da5aa Copy editing. 2015-11-27 14:29:49 -08:00
Roger Labbe 3e65b5d2f7 Lots of book formatting changes.
Changed default sizes of plots, changed the book template for
pdf creation, and lots of minor edits, most changing bold to
italic, and removing italic for emphasis.
2015-11-26 13:08:40 -08:00
Roger Labbe d2f8747c36 Equations line break bug. 2015-11-25 14:26:45 -08:00
Roger Labbe 2efd4e0690 Added instructions for binder. 2015-11-25 13:42:50 -08:00
Roger Labbe c0fe5e7de8 Book format changes.
Moved book_format out of code to simplify importing it into the
notebooks. Added code to it to suppress future warnings from
matplotlib 1.4.3, and to set the numpy print precision to 3
decimal places.
2015-11-25 13:29:40 -08:00
Roger Labbe 7cd8e11b57 More work on multivariate gaussians.
Not copy edited yet, but more work on making the material on
multivariate gaussian more understandable (mostly by reordering
concepts).
2015-11-25 12:39:15 -08:00
Roger Labbe a57fdfeaa9 Fixed import error. 2015-11-25 12:07:02 -08:00
Roger Labbe cbd7ac3bc8 Was not saved in browswer at last check in!
I forgot to hit the save button before checking this file in a
few check ins ago.
2015-11-25 12:03:17 -08:00
Roger Labbe d11798b0d8 Fixed name of the 6x9 book file. 2015-11-25 12:02:48 -08:00
Roger Labbe 7c9bedca38 Fixed animations.
Not sure why, but the two line title was being cut off when
displayed. I must have changed somethign in the matplotlib
sytle at some point that broke this.
2015-11-25 12:01:32 -08:00
Roger Labbe 6f6108780c Fixed errorbar plots in gh chapter.
I changed the ZZy-axis earlier, which meant that the bar for
sensor A was not visible.
2015-11-25 12:00:38 -08:00
Roger Labbe fe79d7409f Improved correlation examples.
Switched house floor plan vs price to student height and weight.
This matches with the Gaussians chapter that found the variance
in heights.
2015-11-24 09:40:08 -08:00
Roger Labbe 3966f3d707 Removed try/except block
Block was there to handle older version of FilterPy. GitHub
issue 49.
2015-11-24 09:02:36 -08:00
Roger Labbe 87032818fd Changed IPython Notebook to Jupyter Notebook. 2015-11-24 08:37:51 -08:00
Roger Labbe 6c1de8ce61 Reran cells so output is correct. 2015-11-24 08:28:46 -08:00
Roger Labbe 89d934d88c Copy editing. 2015-11-24 08:22:23 -08:00
Roger Labbe 6871e55e78 Fixed import errors. 2015-11-23 17:41:44 -08:00
Roger Labbe bb36ee299f Copy edit of chapter. 2015-11-23 17:41:27 -08:00
Roger Labbe f07250b8f0 Fixed language about 'next chapter'.
I split the multivariate KF chapter into two, so references to the
'next' chapter were inaccurate.
2015-11-22 11:58:43 -08:00
Roger Labbe 1b71b73c55 Reran cells
Forgot to rerun all cells before last check in.
2015-11-22 11:14:13 -08:00
Roger Labbe db4f275575 Rewrite and reorganization
Worked on getting the 'flow' of information to be more logical.

Added a section on comparing a uniform, Gaussian, and discrete
distribution to model errors so the reader can better understand
the relationships between the three filters.
2015-11-22 11:11:50 -08:00
Roger Labbe 791819d76f fixed latex typos. 2015-11-21 14:27:27 -08:00
Roger Labbe 562cf95a7c Changed covariance explantion
`
2015-11-21 14:27:00 -08:00
Roger Labbe 2455d797be Moved statistics math to Gaussians chapter. 2015-11-21 12:56:56 -08:00
Roger Labbe 5ae739a2c6 Altered font size to be a bit more readable. 2015-11-21 12:54:45 -08:00
Roger Labbe b030488cb3 Used better variable names for formatting code. 2015-11-21 12:54:23 -08:00
Roger Labbe 56bea69ea6 Extensive improvements.
Many worked to explain random variables much better than before,
and otherwise streamlined the explanations so they support the
rest of the book better. Moved some material from the math chapter
in support of this.
2015-11-21 12:43:51 -08:00
Roger Labbe b0f84e0c16 Merge pull request #70 from dnstanciu/master
Fixed JSON settings being overwritten with matplotlib version.
2015-11-20 16:16:09 -08:00
Roger Labbe 56ede47d83 Fixed deprecated use of axes.color_cycle
Matplotlib 1.5 deprecrates the use of axes.color_cycle in favor
of axes.prop_cycle

I prefer to use the new styles coming from matplotlib, but for now,
to maintain backwards compatibility, I am hand coding the styles
still.
2015-11-14 08:55:24 -08:00
Roger Labbe fc6b9f8676 Added definitions of unimodal and multimodal. 2015-11-06 12:27:52 -06:00
Roger Labbe 892a586cc5 Fixed typo in JSON
Somehow an extra character creeped in, making the notebook
invalid JSON, and thus unable to be opened.
2015-11-03 16:56:32 -06:00
Roger Labbe a40ad0327b fixed typo 2015-11-02 08:05:12 -06:00