A multi-unmanned aerial vehicle (UAV) offers the advantages of flexibility, safety, and efficiency with respect to odor source localization. When the traditional particle swarm optimization (PSO) algorithm is used to locate the odor source, the search efficiency of the UAVs is reduced owing to unplanned search routes, and local extreme points and internal collisions may occur, making it impossible to quickly locate the odor source. In response to these problems, this paper proposes an improved particle swarm optimization (IPSO) algorithm, which combines the PSO with the Zigzag algorithm to preplan the search routes and improve the efficiency of the UAVs to search the plume. In addition, the distance between the UAVs is used as an adjustment factor to adaptively adjust the inertia weights of the particles to prevent the UAVs from falling into a local optimum during the plume-tracking stage and further improve the positioning efficiency. Finally, the PSO combined with the artificial potential field algorithm is used to avoid the internal collision of the UAVs when tracking the plume. The algorithm is verified through simulations and physical experiments. The results show that the IPSO significantly improves the efficiency and can achieve rapid and effective location of the odor source, which verifies the effectiveness and applicability of the algorithm.