It's been several months since you asked, but I've had good results by making a particular object part of a family; even if it's the only one object type.
This gives you the ability to test collisions/overlap for different instances of the same sprite object. The how can be achieved through different approaches to the logic, but it essentially begins from:
01 Dude | is overlapping DudeFamily
02 X Pick DudeFamily by Unique ID| Dude.UID <-----inverted from sprite conditions or you can evaluate the instance UID (as in UID <> UID ) via system conditions
From this point you have many options, whether you test to see if one is moving faster, or at a particular angle, or pick a random instance picked from the aforementioned conditions; and then apply an every tick condition that moves or rotates one or both sprites with frame-rate independent action.
The suggestions above regarding an invisible collision-detection sprite work too and you do not have to give it solid behavior--just trigger an event that properly picks the instances and then test some different frame-rate independent actions that correspond to the trigger. This is where our old, wretched friends cos/acos, tan/atan and sin/asin can help provide more accurate behaviors in groups of sprites.
Jason