Desynchronization-Based Task Allocation in Multi-Agent Systems