How can thousand-robot swarm coordinate their moves without bumping into each other?

How can a swarm of small robots (like Kilobots) walking close to each other achieve collaboration without bumping into each other? For example, one study shows programmable self-assembly in a thousand-robot swarm (see article & video) which are moving without GPS-like system and by measuring distances to neighbours. This was achieved, because the robots were very slow.

Is there any way that similar robots can achieve much more efficient and quicker assembly by using more complex techniques of coordination? Not by walking around clock-wise (which I guess was the easiest way), but I mean using some more sophisticated way. Because waiting half a day (~11h) to create a simple star shape using a thousand-robot swarm is way too long!