Applied Mathematics Question - 30 Lightbulbs; Desynchronization and resynchronization I have 30 lightbulbs.
I want each light bulb to switch on and off with almost imperceptibly different tempos. For example:
Lightbulb A is on for 1 second, and then off for 1 second, and then back on for 1 second and so on.
Lightbulb B is on for 1 second and 10 milliseconds, and then off for 1 second and 10 milliseconds, and so on.
Lightbulb C, 1 second and 20 milliseconds…
The differences between the tempos of all of the 30 lightbulbs should be within 200 milliseconds of each other – so a bandwidth in between 900 milliseconds and 1100 milliseconds.
The differences don't have to be evenly spread. I would prefer it if the bandwidth was even smaller - perhaps in between 950 and 1050 milliseconds (but this is not very important).
The lightbulbs initially all switch on all together and at the same time – and slowly, as time progresses, they desynchronize from one another.
What I want is for the lightbulbs to eventually (and naturally) re-align and synchronize once more – and for this to happen as soon as possible (preferably within 15 minutes - or less).
I need to choose the tempos for each individual lightbulb – and optimize my selection so that they re-align as quickly as possible.
I’m not a mathematician but this problem that I have is a problem which I don’t even know how to start to work out. I would be incredibly happy if anyone could either give me some answers or a way of working it out.
Thanks in advance!
Williams 

Probably the easiest way would be to choose the number of times each bulb blinks before resynchronization.  If we want the bulbs to resynchronize in 900 seconds and we want each bulb to blink about every second, then we could make the first bulb reach synchronization after 900 blinks, and so blink once a second = 900/900 seconds, the second bulb synchronize after 899 blinks, and so blink every 900/899 seconds, and the 30th bulb blink every 900/871 seconds.
