YNT: Randomness in robocup-rescue simulator system

From: Baris Eker (eker@uekae.tubitak.gov.tr)
Date: Tue 16 Dec 2003 - 10:22:47 GMT


Hi,

Thanks for your answer. But, then what is this statement that passes
in rules means?

"We have to ensure that the competition field for competing teams is
identical not only parameters but also the seeds of random numbers used
in simulators, -- the miscsimulator, collapse simulator, fire
simulator."

If we put network problems aside(if we run simulators and agents in same
machine we can minimize it), there should be a way to reply simulations.
I believe that we can do this by starting simulators
that includes randomness from same seed. As far as I understand,
above statement also tells this. But, I couldn't find how to
do it, although I looked at simulator codes a bit. I believe
that if simulators always start from same seed, simulations
should be same due to the nature of random number generation.
As you know randomness comes from initial seed, when you make
it constant, you obtain always same numbers in order.

I'll be happy to get your article.

Best regards,
Baris Eker

-----Özgün İleti-----
Kimden: Sergio Lo Cascio [mailto:Sergio.Lo.Cascio@dis.uniroma1.it]
Tarih: Tuesday, December 16, 2003 12:05 PM
Kime: eker@uekae.tubitak.gov.tr
Konu: Randomness in robocup-rescue simulator system

>I'm using version 0.43. Although I'm using same
>configuration I get different scores in different
>runs. This means that most probably some simulators
>starts from different initial seeds in different runs.
>How I can ensure that simulators start always from
>same initial seed?

I was NEVER able to have two identical simulation runs!
I think it depends on several factors. One of my last discoveries was
that
also the scheduling of agents can be different between two runs (!).

I wrote an article about this, and here I send you the interesting part:

---8<---------------------------------------------
The main problem about rescue simulation is the high unreliability of
the
simulation evolution: it strongly depends on the hardware and software
configuration over which the simulation takes place. Since the
simulation
can
be run along a distributed system, two main issues are cause of
unpredictive events development: (i) network reliability and (ii)
processor
speed. The first
issue is crucial as the simulation system is composed by several modules
(seven for the simulation and six for the agents), each of which
communicate
with the kernel module massively over the network for each simulation
step.
The protocol used by the modules to communicate is derived from UDP,
thus causing some messages not to arrive
at destination (ever or just in time). This leads to a lot of different
situations: for example evolution of fires can be different in two
simulations
just because at a certain simulation step the network loses a message by
the firesimulator and the spreading of fire is thus delayed. Processor
speed
is also crucial for
simulation evolution since each agent has a limited time to plan an
action;
if the agent has not issued an action within this time it loses the
turn.
Hence, more
sophisticated action planning techniques leads to more loss of action
cycles,
if not supported by adequate CPU power of the host machine.

The cycles loss is due to the fact the simulation is desinged to be
real-time;
the objective of robocup-rescue project is to provide a decision support

system to
manage operation of search & rescue of injuried people in large scale
disasters; by this point of view a quik reactiveness is required by the
simulator.
On the other hand the simulator system itself is not well suited as an
off-line analysis tool of rescue teams since it is not possible to
replicate
identical experiments.
---8<---------------------------------------------

If you are interested in the (short) article I can send it to you.

>Best regards,
>Baris Eker
>RoboAkut

Sergio Lo Cascio



This archive was generated by hypermail 2.1.3 : Tue 16 Dec 2003 - 10:24:19 GMT