Regarding using different agents, that's easy enough to set up. Something like 5 clones of ping with different names, and use one for each 20 or so devices. But wouldn't DUDE kick them all off one right after another?
It occurred to me I might change the interval for groups of devices. For example have some 40 seconds, 45 seconds, 50, 55, and 60 seconds. Then perhaps the groups at 40 seconds would be pinged at 40, 80, 120, 160, 220, etc. Every few time intervals one or more would collide and get pinged at the same time. Or perhaps 41, 47, 53, 50, 63, 65. Those would not collide as much.
Seems like a somewhat messy work around, and we would need to track which 'interval ping' was being used with what IP address, and group them in some way. Perhaps include in a group addresses in different branches of the network. A bit of a maintenance issue to keep up with.
Would that work?