There is serious research on this subject in Computer Science. It has actually been presented in papers methods where you can start with a smallish random seed to generate a very large “cryptographically secure” large random sequence.
Note that the laws of randomness as used in this context means that there is no way the result is any more random than the input, but it is in some way provably less “pseudorandom” than what people are talking about here. I.e., you can generate stuff practically as good as one-time-pads using random keys a lot shorter than the message length. (But they have other nice applications.)
If you want to read such papers, I suggest the conference proceedings from The ACM Symposium on Theory of Computing or IEEE Foundations of Computer Science from about 1994 or so if my memory is correct as to when these results first came out.
Uhm, its actually suprisingly hard to think up a “good” random number generating algorithm. Paradoxically, making things more complicated quite often makes it WORSE, it some cases, much, much worse. I can guarentee that double seeding is provably no better than a good single seeding algorithm and can be worse depending on how it is implemented.
Adding two random number will give a random number with a different probability distribution. Example: one six sided die produces a random integer between 1 and 6 with a flat distribution. Adding the output of two dice produces a random number between 2 and 12 with a bell shaped distribution.
To extend the cycle length with more than one RNG and without changing the probability distribution[sup]1[/sup], simply alternate between the RNGs. The cycle length will then be the number of RNGs times product of all the cycle lengths divided by the greatest common divisor of the cycle lengths.
[sup]1[/sup] This assumes all RNGs have the same distribution.