Flower pollination is an intriguing process in the natural world. Its evolutionary characteristics can be used to design new optimization algorithms. In this paper, we propose a new algorithm, namely, flower pollination algorithm, inspired by the pollination process of flowers. We first use ten test functions to validate the new algorithm, and compare its performance with genetic algorithms and particle swarm optimization. Our simulation results show the flower algorithm is more efficient than both GA and PSO. We also use the flower algorithm to solve a nonlinear design benchmark, which shows the convergence rate is almost exponential.