News and Events

Charles River Analytics Principal Scientist Releases New Book: “Practical Probabilistic Programming”

Dr. Avi Pfeffer, principal scientist at Charles River Analytics is writing Practical Probabilistic Programming. The book introduces readers to probabilistic programming and enables those without experience in machine learning to create rich probabilistic modeling applications using Figaro™, a probabilistic programming language developed by Dr. Pfeffer. The first chapters have been released by Manning Early Access Program (MEAP) at

“Machine learning and data science are gaining tremendous attention nowadays,” said Dr. Pfeffer. “Probabilistic reasoning is a principled and widely applicable approach to machine learning. In short, probabilistic reasoning allows you to infer unknowns from knowns when the relationships between them is uncertain. In probabilistic reasoning, you build a model that describes a probability distribution over your domain and use it to infer query results from observed evidence.”

“Most existing frameworks, such as Bayesian networks, are quite limited in the kinds of models that can be built,” Dr. Pfeffer continued. “Ad hoc solutions can be developed for many specific models, but these require significant effort and expertise. Probabilistic programming provides a general-purpose solution, in which you represent your model by writing a program in a programming language, while the built-in algorithms of the language automatically apply to your model. Figaro is rich in the kinds of models that can be expressed, and is also integrated as a Scala library, making it easy to integrate into Scala and Java applications.”

Topics in the book include:

  • An introduction to probabilistic modeling and probabilistic programming
  • Writing probabilistic programs in Figaro
  • Using functional and object-oriented programming styles to build probabilistic models
  • Using dynamic models to keep track of systems that change over time
  • How to use probabilistic programs to create samples
  • Creating decision models and decision making algorithms
  • Explanations of algorithms used in probabilistic programming

Figaro is open-source software that can be downloaded for free from

For more information about the book or Figaro, contact Avi Pfeffer at Figaro (@)

Solutions to serve the warfighter, technology to serve the world™

Charles River Analytics brings foundational research to life, creating human-centered intelligent systems at the edge of what’s possible, through deep partnerships with our customers. 

To learn more about Charles River or our current projects and capabilities, contact us