swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Swarm-Support] Concurrent Schedulling


From: Ken Cline
Subject: Re: [Swarm-Support] Concurrent Schedulling
Date: Fri, 14 May 2004 06:21:01 -0700 (PDT)

Of course you could use the scheduling mechanism to achieve the
double-buffering, eg:
   - step {
      [self senseWorld];
      [self scheduleChangeTo: [self nextState] // null ==> no change
                          at: [self getCurrentTime] ];
   }

Ken.

--- Paul Johnson <address@hidden> wrote:
>
> I'm not sure concurrent scheduling will really get you where
> you want to go.  Recall Swarm is a discrete event simulation, 
> things happen one after another.
> 
> If you really do mean simultaneous action, it means that each
> acts without observing any actions from the others at the
> same instant.  That's not really a scheduling thing, its a 
> model/environment design thing.
> 
> If you are working in the Cellular Automata tradition, you
> can use the double-buffering ideas in swarm ca elements to
> have all cells update against a "snapshot" of the situation.  
> Mostly, we have been trying to get away from that synchronous 
> paradigm in agent-based modeling, people would rather have
> agents do their thing one at a time and observe what the other
> guys are doing.
> 
> The Swarm Concurrent apparatus is there in case actions are
> inserted into the schedule at the same time.  How should
> they be processed?  Should it be "first in first out" or
> "randomized" or what not. It may have been on the agenda to
> have some sort of approximation to "true simultaneous" action
> on parallel systems, but I don't know if that is actively
> pursued.
> 
> In other words, there are plenty of fiddles you can make
> with schedules, to deal with actions thrown in for the same 
> discrete time step, but none of them will result in true 
> simultaneity.  If you want something like that, you need to
> diddle the environment and the agent's knowledge of it.
> 
> I think the program "activists" that I did with Dave Brichoux
> has a pretty big component that differentiates agent behaviors
> on this premise.  You can run the model in SYNCHRONOUS mode,
> so that all agents update their behavior at each step in light
> of a "frozen snapshot" of the state of all the others, or they
> can be ASYNCHRONOUS, which means that each one who acts plunks
> his impact on the environment for the next guy to see.  Look
> for it in http://lark.cc.ku.edu/~pauljohn/Swarm/MySwarmCode.
> 
> good luck
> 
> pj
> 
> Triki Amel wrote:
> > Hi !!
> >  I'm a new user of the Swarm libraries. I have been writing
> >  a program in java using Swarm and have a problem with the 
> >  schedulling and specifically concurrent schedulling. I have
> >  a List of agents that have to hear, move and scan to
> >  displays in the same time. I dont find how to manipulate 
> >  ConcurrentGroup and  concurrentSchedule.
> >  
> >  If there is an example in java, it will help me a lot.
> >  Thank you very much for your help !!
> >  amel


=====
_________________________________________________________
 Ken Cline                             W: (443) 287-2636
 address@hidden


reply via email to

[Prev in Thread] Current Thread [Next in Thread]