26.08.2013 Views

3.1 MB - Evernote

3.1 MB - Evernote

3.1 MB - Evernote

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

14<br />

Fundamental Concepts<br />

event execution in some LPs can lead to frequent and cascaded rollbacks and result in a<br />

degradation of the effective processing rate of events. Therefore research has focused on<br />

combining the advantages of conservative and optimistic algorithms creating so-called<br />

hybrid algorithms and on controlling the optimism in Time Warp. Such attempts to limit<br />

the optimism in Time Warp can be grouped into non-adaptive algorithms, adaptive<br />

algorithms with local state and adaptive algorithms with global state. Carl Tropper [34]<br />

and Samir R. Das [5] both give a good overview on algorithms in these categories.<br />

The group of non-adaptive algorithms for instance contains algorithms that use time<br />

windows in order to limit how far ahead of the current GVT single LPs can process their<br />

events, which limits the frequency and length of rollbacks. Other algorithms in this<br />

group add conservative ideas to Time Warp. One example for this is the Breathing Time<br />

Buckets algorithm (also known as SPEEDES algorithm) [30]. Like Time Warp this<br />

algorithm executes all local events immediately and performs local rollbacks if required<br />

but it only sends events to other LPs that have been guaranteed by the current GVT and<br />

by doing so avoids cascaded rollbacks. The problem of all these algorithms is that either<br />

the effectiveness depends on finding the optimum value for static parameters like the<br />

window size or conservative aspects of the algorithm limit its effectiveness for models<br />

with certain characteristics. Finding the optimum value for such control parameters can<br />

be difficult for simulation modellers and many simulation models show a very dynamic<br />

behaviour of their characteristics, which would require different parameters at different<br />

times of the simulation.<br />

Adaptive algorithms solve this problem by dynamically adapting the control parameters<br />

of the synchronisation algorithm according to “selected aspects of the state of the<br />

simulation” [24]. Some of these algorithms use mainly global state information like the<br />

Adaptive Memory Management algorithm [6], which uses the total amount of memory<br />

used by all LPs or the Near Perfect State Information algorithms [28] that are based on<br />

the availability of a reduced information set that almost perfectly describes the current<br />

global state of the simulation. Adaptive algorithms based on local state use only local<br />

information available to each LP in order to change the control parameters. They collect<br />

historic local state information and from these try to predict future local states and the<br />

required control parameter. Some examples for adaptive algorithms using local state

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!