A cooperative lane change approach for heterogeneous platoons under different communication topologies