Implementation of several inference and learning algorithms for various PGMs without using any standard libraries. Includes some projects from the PGM specialization on Coursera offered by Stanford University.