Most of multi-objective optimization problems in the real-world are dynamic, so optimization algorithms are required to continuously track time-varying Pareto optimal set (POS) or Pareto optimal front (POF) rapidly with high accuracy. To meet this requirement, an improved variant based on particle swarm optimization (PSO) is proposed, in which competitive and cooperative models are combined. The competitive model is used to explore the search space, and when it fails, this model is adaptively switched to the cooperation model to exploit the search space. Co-evolution probability analysis indicates that searching solution using multiple swarms is much more efficient than using a single one. Numerical simulation also shows that the proposed algorithm is an excellent alternative for solving dynamic multi-objective optimization problems. Finally, the proposed algorithm is applied to the PID controller parameter tuning for a dynamic system and gets a satisfactory control.