Being a new research area of machine learning, deep learning is good at solving some complex problems. As a representative of deep learning, Boltzmann machine is being widely studied. In view of the theoretical significance and practical value of Boltzmann machine, the research and development on Boltzmann machine are reviewed systematically. Firstly, some concepts about Boltzmann machine are summarized, which include configuration of Boltzmann machine as a single layer feedback network and classification of Boltzmann machine according to the topological structure, including general Boltzmann machine, semi-restricted Boltzmann machine and restricted Boltzmann machine. Secondly, the learning procedure of Boltzmann machine is reviewed in detail. Thirdly, several typical algorithms of Boltzmann machine are introduced, such as Gibbs sampling, parallel tempering, variational approach, stochastic approximation procedure, and contrastive divergence. Fourthly, the learning procedure of deep Boltzmann machine is described. New research and development on aspects of algorithms, models and practical application of Boltzmann machine in recent years are expounded then. Finally, the problems to be solved are pointed out.