database - Generating uniformly distributed random numbers in distributed environment -
i have generate "unique random number" in wireless sensor network works on principle of gossiping.
the requirements are:
- each node has generate unique random number, without having shared knowledge of other nodes have generated.
- the distribution of generated random number should uniform respect each other.
- it preferable if range of generated random number around 10-16 bits or may lesser.
the limitations are:
- one node has no idea number other nodes in network generating.
- implementation in c, c++.
i have provision of using unique seed random number generation. seed number in range 0-2^15.
if there no way of generating such numbers, helpful if there method can meet of above requirements.
if can suggest me way achieve result helpful.
for solution work must know total number of nodes in generation network. let number n.
the basic idea generate uniformly distributed random numbers on each participating node inside given interval. n intervals of participating nodes must not overlap. shared seed not complicate matters if total number of nodes not change , each node can assigned statically integer i <= n such each number issued once. instead of generating single random number on each turn, n numbers generated, , node i takes i-th number series.
however, overall distribution of random numbers generated not uniform unless ...:
- you synchronize random number generation.
- all intervals have same size.
for information on random number generation on individual nodes see here.
Comments
Post a Comment