[Modeling] Re: Environment - Modeling Area document

Dr. Hong Zhu hzhu@brookes.ac.uk
Tue, 18 Mar 2003 13:12:11 -0000

Hi, Marc-Phillippe,

Your are quite right to say that when we talk about environment, we meant
the structure (e.g. the shape and population) and dynamics of the
environment. The question is how the structure and dynamics of an
environment can be specified. I believe that the same mechanism and notation
for the description of a system can be used for the description of
environments, because an environment plus the system under consideration is
also a system. Of course, for the elements in the environment, we would not
bother (and/or unable to) to give their full details.

For the description of the environments of MAS, I think we need to address
the following issues:
(1) Openness: elements can join and leave the environment at runtime;
(2) Mobileability: an agent can move into a system as a part of other
agents' environment;
Therefore, instead of describing the specific agents in the environment, we
would have to use some abstract notion to describe the possible 'types' of
elements in the environment and how they would interact with the agent under
consideration. That is why castes are used in my approach. In fact, castes
can implement abstract concepts like what we call roles.

Best regards,

----- Original Message -----
From: "Marc-Philippe Huget" <M.P.Huget@csc.liv.ac.uk>
To: "Dr. Hong Zhu" <hong.zhu1@btinternet.com>
Cc: "James Odell" <email@jamesodell.com>; "Renato Levy" <rlevy@i-a-i.com>;
"Radovan Cervenka" <rce@whitestein.com>; "Paola Turci" <turci@ce.unipr.it>
Sent: Tuesday, March 18, 2003 10:29 AM
Subject: Re: Environment - Modeling Area document

"Dr. Hong Zhu" wrote:

> Hello, everybody,
> Description of environment is an important part of my agent-oriented
specification language SLABS. I believe that the framework can be 'reused'
here. Essentially, it consists of two parts: static descriptions of
environment configurations and dynamic descriptions of run-time situations
in the environment.
> For the static description, in the descripton of each agent/caste (which m
ight be the same as Jim's 'Agent Class' and I will back to this issue later
with a discussion on the meta-model.), a set of castes plus a set of
specific agents can be given to indicate a subset of entities that the agent
under definition is interact with. That is, all memebers of the caste plus
the set of specific agents constitute the environment of the agent (or the
agents of the caste). A multi-agent system can be considered as an agent,
which is decomposed into a set of agents classified into castes. Variables
range over a caste can also be given as a parameter, which is initialised
when the agent is created and the agent can change the values of the
parameter at runtime. In addition to such changes to and agent's
environment, an agent can change its memebrship to a caste by joining a
caste and/or treating from a caste so that move from one environment to
another. Moreover, other agents can join the caste that is a part of the
agent's environment. In this way the agent's environment become open to
other agents. By the way, in addition to the existence of an active body, I
believe that the dynamic membership of an agent to a caste and the explicit
description of environment are the main feature that distinguishes caste
from class. Well, this is a meta-model issue.
> A dynamic description gives a typical situation in the operation of the
system from an agent's point of view (i.e. the agent's view of the state of
the system). It is described as a scenario, which is a logic combination of
the patterns (sequence of activities and state changes) of the entities in
the environment. An example scenario that can be described by SLABS is that
all agents X of a caste C are in a particular state and there is an agent Y
in caste B that is in another state. For example, the following is a
scenario: 'there is an memeber of conference steering committee nominated
agent A as conference programme committee chairman and all members of the
programme committee voted to support agent A as chairman', where steering
committee and committee are two castes. Dynamic description is a crucial
part for the description of agent's behaviour. For example, in online
auction, we would have a rule like this: 'when agent A in a caste Buyer made
a bid and no other agents make any bid afterward with two days (or whatever
period of time), then the agent win the bid and that agent must make
payment'. This rule consists of a scenario (of the environment) and an
action in that scenario.
> What do you think of the framework? If OK, I will adapt the framework to

I don't understand where environment is involved here. When I speak about
environment, I speak about the structure of the environment, its shape, the
population, the dynamics of the environment, etc. When reading your
explanations, I find something more related to role dynamics, am I wrong?


Marc-Philippe Huget

Agent Applications, Research and Technology Group
Department of Computer Science
University of Liverpool
Chadwick Building, Peach Street
L69 7ZF Liverpool
United Kingdom

email: mph@csc.liv.ac.uk