Abstract
As probabilistic computations play an increasing role in solving various problems, researchers have designed probabilistic languages which treat probability distributions as primitive datatypes. Most probabilistic languages, however, focus only on discrete distributions and have limited expressive power. This article presents a probabilistic language, called λ○, whose expressive power is beyond discrete distributions. Rich expressiveness of λ○ is due to its use of sampling functions, that is, mappings from the unit interval (0.0,1.0] to probability domains, in specifying probability distributions. As such, λ○ enables programmers to formally express and reason about sampling methods developed in simulation theory. The use of λ○ is demonstrated with three applications in robotics: robot localization, people tracking, and robotic mapping. All experiments have been carried out with real robots.
- Bratley, P., Fox, B., and Schrage, L. 1996. A Guide to Simulation 2nd Ed. Springer-Verlag. Google ScholarDigital Library
- Charniak, E. 1993. Statistical Language Learning. MIT Press, Cambridge, MA. Google ScholarDigital Library
- Devroye, L. 1986. Non-Uniform Random Variate Generation. Springer-Verlag.Google Scholar
- Doucet, A., de Freitas, N., and Gordon, N. 2001. Sequential Monte Carlo Methods in Practice. Springer-Verlag.Google Scholar
- Fox, D., Burgard, W., and Thrun, S. 1999. Markov localization for mobile robots in dynamic environments. J. A.I. Rese. 11, 391--427.Google ScholarDigital Library
- Gill, J. 1977. Computational complexity of probabilistic Turing machines. SIAM J. Comput. 6, 4, 675--695.Google ScholarDigital Library
- Giry, M. 1981. A categorical approach to probability theory. In Categorical Aspects of Topology and Analysis, B. Banaschewski, Ed. Lecture Notes In Mathematics, vol. 915. Springer-Verlag, 68--85.Google Scholar
- Gupta, V., Jagadeesan, R., and Panangaden, P. 1999. Stochastic processes as concurrent constraint programs. In Proceedings of the 26th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM Press, 189--202. Google ScholarDigital Library
- Henrion, M. 1988. Propagation of uncertainty in Bayesian networks by probabilistic logic sampling. In Uncertainty in Artificial Intelligence 2, J. F. Lemmer and L. N. Kanal, Eds. Elsevier/North-Holland, 149--163.Google Scholar
- Isard, M. and Blake, A. 1998. CONDENSATION: Conditional density propagation for visual tracking. Int. J. Comput. Vision 29, 1, 5--28. Google ScholarDigital Library
- Jazwinski, A. H. 1970. Stochastic Processes and Filtering Theory. Academic Press, New York, NY.Google Scholar
- Jelinek, F. 1998. Statistical Methods for Speech Recognition (Language, Speech, and Communication). MIT Press, Cambridge, MA. Google ScholarDigital Library
- Jones, C. 1990. Probabilistic nondeterminism. Ph.D. thesis, Department of Computer Science, University of Edinburgh. Google ScholarDigital Library
- Koller, D., McAllester, D., and Pfeffer, A. 1997. Effective Bayesian inference for stochastic programs. In Proceedings of the 14th National Conference on Artificial Intelligence and 9th Innovative Applications of Artificial Intelligence Conference. AAAI Press, 740--747. Google ScholarDigital Library
- Kozen, D. 1981. Semantics of probabilistic programs. J. Comput. Syst. Sci. 22, 3, 328--350.Google ScholarCross Ref
- Launchbury, J. and Peyton Jones, S. L. 1995. State in Haskell. Lisp Symbol. Comput. 8, 4, 293--341. Google ScholarDigital Library
- Leroy, X. 2000. A modular module system. J. Funct. Program. 10, 3, 269--303. Google ScholarDigital Library
- MacKay, D. J. C. 1998. Introduction to Monte Carlo methods. In Learning in Graphical Models, M. I. Jordan, Ed. NATO Science Series. Kluwer Academic Press, 175--204. Google ScholarDigital Library
- Martin-Löf, P. 1996. On the meanings of the logical constants and the justifications of the logical laws. Nordic J. Phil. Logic 1, 1, 11--60.Google Scholar
- Mogensen, T. 2002. Roll: A language for specifying die-rolls. In Proceedings of the 5th International Symposium on Practical Aspects of Declarative Languages, V. Dahl and P. Wadler, Eds. Lecture Notes in Computer Science, vol. 2562. Springer, 145--159. Google ScholarDigital Library
- Moggi, E. 1989. Computational lambda-calculus and monads. In Proceedings of the 4th Annual Symposium on Logic in Computer Science. IEEE Computer Society Press, 14--23. Google ScholarDigital Library
- Moggi, E. 1991. Notions of computation and monads. Inform. Comput. 93, 55--92. Google ScholarDigital Library
- Montemerlo, M. 2003. FastSLAM: A factored solution to the simultaneous localization and mapping problem with unknown data association. Ph.D. thesis, Robotics Institute, Carnegie Mellon University. Google ScholarDigital Library
- Montemerlo, M., Roy, N., and Thrun, S. CARMEN: Carnegie Mellon Robot Navigation Toolkit. http://www.cs.cmu.edu/~carmen/.Google Scholar
- Montemerlo, M., Whittaker, W., and Thrun, S. 2002. Conditional particle filters for simultaneous mobile robot localization and people-tracking. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA). 695--701.Google Scholar
- Motwani, R. and Raghavan, P. 1995. Randomized Algorithms. Cambridge University Press, Cambridge, UK. Google ScholarDigital Library
- Park, S. 2003. A calculus for probabilistic languages. In Proceedings of the ACM SIGPLAN International Workshop on Types in Language Design and Implementation. ACM Press, 38--49. Google ScholarDigital Library
- Peyton Jones, S. L. 2001. Tackling the awkward squad: monadic input/output, concurrency, exceptions, and foreign-language calls in Haskell. In Engineering Theories of Software Construction, C. A. R. Hoare, M. Broy, and R. Steinbrüggen, Eds. IOS Press, Amsterdam, The Netherlands.Google Scholar
- Peyton Jones, S. L. and Wadler, P. 1993. Imperative functional programming. In Proceedings of the 20th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM Press, 71--84. Google ScholarDigital Library
- Pfeffer, A. 2001. IBAL: A probabilistic rational programming language. In Proceedings of the 17th International Joint Conference on Artificial Intelligence (IJCAI'01), B. Nebel, Ed. Morgan Kaufmann Publishers, Inc., 733--740. Google ScholarDigital Library
- Pfenning, F. and Davies, R. 2001. A judgmental reconstruction of modal logic. Math. Struct. Comput. Sci. 11, 4, 511--540. Google ScholarDigital Library
- Pless, D. and Luger, G. 2001. Toward general analysis of recursive probability models. In Proceedings of the 17th Conference on Uncertainty in Artificial Intelligence (UAI'01), J. Breese and D. Koller, Eds. Morgan Kaufmann Publishers, 429--436. Google ScholarDigital Library
- Rabiner, L. R. 1989. A tutorial on hidden Markov models and selected applications in speech recognition. Proc. IEEE 77, 2, 257--285.Google ScholarCross Ref
- Ramsey, N. and Pfeffer, A. 2002. Stochastic lambda calculus and monads of probability distributions. In Proceedings of the 29th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages. ACM Press, 154--165. Google ScholarDigital Library
- Rudin, W. 1986. Real and Complex Analysis 3rd Ed. McGraw-Hill, New York, NY. Google ScholarDigital Library
- Russell, S. and Norvig, P. 1995. Artificial Intelligence: A Modern Approach. Prentice Hall. Google ScholarDigital Library
- Sabry, A. and Wadler, P. 1997. A reflection on call-by-value. ACM Trans. Program. Lang. Syst. 19, 6, 916--941. Google ScholarDigital Library
- Saheb-Djahromi, N. 1978. Probabilistic LCF. In Proceedings of the 7th Symposium on Mathematical Foundations of Computer Science, J. Winkowski, Ed. Lecture Notes in Computer Science, vol. 64. Springer, 442--451.Google Scholar
- Thrun, S. 2000a. Probabilistic algorithms in robotics. AI Mag. 21, 4, 93--109.Google Scholar
- Thrun, S. 2000b. Towards programming tools for robots that integrate probabilistic computation and learning. In Proceedings of the IEEE International Conference on Robotics and Automation (ICRA).Google ScholarCross Ref
- Thrun, S. 2002. Robotic mapping: A survey. In Exploring Artificial Intelligence in the New Millenium, G. Lakemeyer and B. Nebel, Eds. Morgan Kaufmann. Google ScholarDigital Library
- Welch, G. and Bishop, G. 1995. An introduction to the Kalman filter. Tech. rep. TR95-041, Department of Computer Science, University of North Carolina—Chapel Hill. Google ScholarDigital Library
Index Terms
- A probabilistic language based on sampling functions
Recommendations
A probabilistic language based upon sampling functions
Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languagesAs probabilistic computations play an increasing role in solving various problems, researchers have designed probabilistic languages that treat probability distributions as primitive datatypes. Most probabilistic languages, however, focus only on ...
A probabilistic language based upon sampling functions
POPL '05: Proceedings of the 32nd ACM SIGPLAN-SIGACT symposium on Principles of programming languagesAs probabilistic computations play an increasing role in solving various problems, researchers have designed probabilistic languages that treat probability distributions as primitive datatypes. Most probabilistic languages, however, focus only on ...
A calculus for probabilistic languages
TLDI '03: Proceedings of the 2003 ACM SIGPLAN international workshop on Types in languages design and implementationAs probabilistic computation plays an increasing role in diverse fields in computer science, researchers have designed new languages to facilitate the development of probabilistic programs. In this paper, we develop a probabilistic calculus by extending ...
Comments