Localization is a critical issue for Underwater Acoustic Sensor Networks (UASNs). Existing localization algorithms mainly focus on localizing unknown nodes (location-unaware) by measuring their distances to beacon nodes (location-aware), whereas ignoring additional challenges posed by harsh underwater environments. Especially, underwater nodes move constantly with ocean currents and measurement noises vary with distances. In this paper, we consider a special drifting-restricted UASN and propose a novel beacon-free algorithm, called MAP-PSO. It consists of two steps: MAP estimation and PSO localization. In MAP estimation, we analyze nodes’ mobility patterns, which provide the priori knowledge for localization, and characterize distance measurements under the assumption of additive and multiplicative noises, which serve as the likelihood information for localization. Then the priori and likelihood information are fused to derive the localization objective function. In PSO localization, a swarm of particles are used to search the best location solution from local and global views simultaneously. Moreover, we eliminate the localization ambiguity using a novel reference selection mechanism and improve the convergence speed using a bound constraint mechanism. In the simulations, we evaluate the performance of the proposed algorithm under different settings and determine the optimal values for tunable parameters. The results show that our algorithm outperforms the benchmark method with high localization accuracy and low energy consumption.