Abstract:In order to improve the basic bat algorithm's premature convergence and low solving accuracy, an improved algorithm is proposed to enhance the diversity of the swarm. Firstly, the velocity weighting factor is introduced into the bat algorithm to make it decrease linearly during the iteration. Then the position of the bat is perturbed by the random number of Cauchy distribution when the local new solution does not satisfy the acceptance condition and the nonlinear programming function is called at intervals between algorithm runs. The improved algorithm can maintain the diversity of the swarm and enhance the ability of global and local search in the optimization process. The standard function test and its application in fuzzy hierarchical analysis show that the performance of the improved bat algorithm is much better than that of the basic bat algorithm, and has better practical value.