[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Scheduling question
From: |
Roger M. Burkhart |
Subject: |
Re: Scheduling question |
Date: |
Mon, 28 Sep 1998 17:04:57 -0500 |
Sven Thommasen wrote:
> I must admit to my chagrin that I am not sure if your answer really
> answered what I was trying to ask (the whole scheduling apparatus is in
> dire need of a better Usage Guide, I fear) -- so let me explain in more
> detail what the problem was, as seen from here:
>
> given a ModelSwarm that owns 3 subSwarms, each of which manages a list of
> Agents. Let's say each subSwarm schedules 3 actions, taken serially, on its
> list of agents. The subSwarms are activated in the ModelSwarm serially. We
> then get the following effective order of activity:
>
> subSwarm#1, activity #1 (for all agentType1)
> subSwarm#1, activity #2
> subSwarm#1, activity #3
>
> subSwarm#2, activity #1 (for all agentType2)
> subSwarm#2, activity #2
> subSwarm#2, activity #3
>
> subSwarm#3, activity #1 (for all agentType3)
> subSwarm#3, activity #2
> subSwarm#3, activity #3
>
> Now instead I'd like the order of execution to be:
>
> subSwarm#1, activity #1 (for all agentType1)
> subSwarm#2, activity #1 (for all agentType2)
> subSwarm#3, activity #1 (for all agentType3)
>
> subSwarm#1, activity #2
> subSwarm#2, activity #2
> subSwarm#3, activity #2
>
> subSwarm#1, activity #3
> subSwarm#2, activity #3
> subSwarm#3, activity #3
>
> The problem lies in the need (?) for all of a (sub-)swarm's activities to
> be activated at the same time in the owner swarm.
Yes, this is the problem that I tried to answer. I must admit to my chagrin
that I am not sure if my answer made it clear enough that my suggestions were
for this problem. In short, I said there was no way to do the substep
sequencing while leaving things in their current swarms, short of using
an undocumented internal facility for a "Concurrent Group Type" on the
containing model swarm.
> I see two ways out:
> (a) pull the agent lists back into the ModelSwarm; this would allow me to
> order these activities as needed;
> (b) create more subswarms, 3 for each agent type, so that each subswarm can
> schedule one activity against one agent list; they can then be activated in
> the ModelSwarm in the desired order.
>
> Do you see any other solutions?
I think I did give one other solution, the syncopated time beat based on
misusing clock units just to get the 1-2 (or 1-2-3) sequencing you're after.
My other solution is essentially your (a), take the agent lists out of their
own swarms, and just schedule them as lists with forEach: actions instead.
But your own option (b) ought to work as well; I just don't typically see
any need to make things full swarms if you already have them gathered together
as lists, and you're not doing any swarm-specific mechanisms inside them.
--Roger
==================================
Swarm-Support is for discussion of the technical details of the day
to day usage of Swarm. For list administration needs (esp.
[un]subscribing), please send a message to <address@hidden>
with "help" in the body of the message.
==================================