The protected-aggressor method is an adaptation of a game played with people in a room. I heard about this game from a talk given by Eric Bonabeau at the International Conference on Complex Systems 2002 (a NECSI conference). If you have a bunch of people in a room and tell everyone to choose two people and then to keep person A between them and person B, then each person is the protected, A is the protector, and B is the aggressor. Very quickly, everyone ends up at the edge of the room. If, instead, you tell people to stay between the two people they choose (so person A is the protected and B the aggressor, thus the name of the algorithm), the people in the room clump together very rapidly.
I've adapted this idea to networks of oscillators as follows. Once a node knows its neighbors, it chooses two of them (note that this method requires transmission of IDs, while integrate-and-fire did not) randomly, one as the protected and one as the aggressor. It attempts to fire after the protected and before the aggressor by having the protected advance its phase and the aggressor retard its phase. The idea is that if it hasn't fired by the time the protected fires, we want it to fire shortly. If it hasn't fired by the time the aggressor fires, we don't want it to fire again for some time (at least until the protected fires). So far I've only run a few simulations with this algorithm, and it is part of my current work.