Newsgroups: comp.ai.alife
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!purdue!lerc.nasa.gov!magnus.acs.ohio-state.edu!math.ohio-state.edu!uwm.edu!chi-news.cic.net!newsfeed.internetmci.com!news.sprintlink.net!tank.news.pipex.net!pipex!dispatch.news.demon.net!demon!sunsite.doc.ic.ac.uk!hgmp.mrc.ac.uk!news.dcs.warwick.ac.uk!not-for-mail
From: B.Barnes@dcs.warwick.ac.uk (Benjohn Barnes)
Subject: Re: Asynchronous/Random Updating of Cells
X-Nntp-Posting-Host: tamarind
Message-ID: <1995Oct18.092803.3255@dcs.warwick.ac.uk>
Sender: news@dcs.warwick.ac.uk (Network News)
Organization: Department of Computer Science, Warwick University, England
References: <Pine.ULT.3.91.951016233328.1877D-100000@rac8.wam.umd.edu>
Date: Wed, 18 Oct 1995 09:28:03 GMT
Lines: 35

Keith Wiley <keithw@wam.umd.edu> writes:


>Well, the physical universe has a couple of traits:  analog (even though
>dna is digital), perfect asynchronity ("everyone" goes once a the same
>precise moment), and equal opportunity, everyone goes once per time unit
>(remember analog implies that there is no time unit so this is a bit
>abstract).

>All of these can be changed by external forces (randomness being a
>force), but the default is what I put above.  You said why does everyone
>need to go at the same time.  Well, because that's how it is.  This
>molecule doesn't suspend its existnace in space and time while that
>molecule over there does something.  They both act simultaneously.  Thus
>in a serial situation such as our simulations, letting various fragments
>update at different times (thus changing the evironment on which others
>will be acting at the same time) is simply unnatural.  You said why make
>sure everyone goes once before letting anyone go again.  Well, assuming
>two bullets have the exact same speed, there's no random chance of
>opportunity in who gets to progress one inch before the other one.  Not
>only do they both go at the same moment (as mentioned above) but they
>both go the same amount before the other even gets a chance to go again.
>For bullet 1 to go inch while bullet 2 waits patiently for its turn
>(already disputed as unnatural) and THEN for bullet 1 to go another inch
>without time even batting an eyelash at bullet 2 with all this exploding
>gunpowder, force, and inertia behind it is, again, unnatural.

This is all true, but when running a simulation sacrifices have to be made.
The first is that you are using a simulation, and not the real thing :)

I supose idealy you would double buffer your universe, but this doubles the
amount of memory used in one foul sweep. The next best way is I'd have thought
to update at random, (pretty good it you can be sure to do every "cell" only
once before every other cell.) Very bad is a systematic sweep. This gives
some cells a constant "advantage" over other cells. Not good.
