In view of the defects of the same swim step and slow velocity in the bacterial foraging algorithm, the conception of sensitivity is given to bacteria in order to regulate the swim step. The thoughts of estimation of distribution algorithms are introduced to the reproduction, and the half of bacteria population with the best values split based on the estimation of distribution. This approach increases the population diversity and improves the convergence speed. According to the energy of the bacteria, the probability of elimination-dispersion is computed, poor bacteria are randomly or assignably dispersed, which improves the global searching ability. The algorithm is tested by the high-dimensional and multimodal function. The results show that, the algorithm can effectively improve the searching speed and the accuracy, and can be applied to multidimensional and constrained practical engineering problems.