Simulate Car Traffic

I want to create a series of generative animations that look similar to the behavior to cars traveling down a road with many lanes. They will need to stay in their lane, but can also change lanes at times, snapping to following the lane they changed into. I am not concerned with cars colliding into other cars, most concerned with following paths.

I imagine the cars as individuals that have their own position, speed, color, opacity, and trail length. But they should all follow the “rules of the road.”

Originally, I thought that the concept of particles would be a reasonable place to start trying to make this work, but it seems impossible for particles to have moments of unique behavior(lane switching) that isn’t applied globally to all particles.

The more I research, the more I believe that instances is the way to go. If anyone has an any idea of where to begin with such a concept, I would be ecstatic. Cheers