[Modeling] Modeling an Agent Class- register your opinion

Joaquin Peña joaquinp@us.es
Mon, 23 Jun 2003 10:33:51 +0200


Hi Jim:

That is our idea: Use role modelling techniques at analysis stage
and use design patterns at design that allows to implement roles
decoupling coordinated behaviour (interactions with other agents)
and functionality (services, knowledge, abilities, ... Agents
have).

Our motivation for supporting this approach is that we think we
need a solution until we have commercial programming languages
that supports dynamic and multiple classification.

Joaquin.


> 
> Hi Joaquin,
> 
> I agree: implementing roles with most OO languages is not 
> very straight forward.  This has been a problem with most 
> programming languages for the last 50 years.  Notice that I 
> said "most."  There are some that do support dynamic and 
> multiple classification -- and they are [shudder] object 
> oriented (e.g., KEE, Kappa, CLOS).  The point I think you are 
> making, then,
> is: 
> A) agents need an approach that supports dynamic and multiple 
> classification, and
> B) when we implement agents, we need to make sure that their 
> development platforms support dynamic and multiple classification.
> 
> Some people use variations of the State or Adapter patterns 
> to accomplish this -- which is basically like creating the 
> "proxy" as you describe. Did I understand you correctly?
> 



> -Jim
> 
> 
> 
> On 6/20/03 3:38 AM, "Joaquin Peña" indited:
> 
> > In our view, a role does not mean isolated. It only takes meaning 
> > involved in a role model.
> > 
> > As Sehl, we see role as an abstract concept using at 
> analysis stage to 
> > perform a behaviour--directed analysis and to naturally model 
> > organizational structures. That it is to say, Role Models are the 
> > representation of Goals, and tasks, are the services that an agent 
> > playing a role must provide to interact with others roles 
> in the role 
> > model to achieve this goal.
> > 
> > Thus, the description of a MAS can be seen in two levels: The Role 
> > Level is an abstract behaviour centered view (used in 
> analysis), and 
> > the Class level where roles are implemented and mapped onto agents.
> > 
> > Well, but ¿How Roles can be Implemented? Our view is an Aspect 
> > Oriented Approach where an agent is a set of pure 
> functional passive 
> > components (that provides all the services its role
> > requires) that can be only used via a set of proxy objects that 
> > represents the roles. Thus, interactions are implemented in a role 
> > class (proxy) completely separated from functionality. 
> James, I think 
> > this fit with your definition of role ¿doesn't it?
> > 
> > With our view, if an employee agent that lose it department 
> means that 
> > it lose the proxy that represent this role, thus, hereafter 
> this agent 
> > can not use the services it provides for employee.
> > 
> > We think that roles don't have a direct mappig in the 
> object Oriented 
> > paradigms.
> 
> _______________________________________________
> Modeling mailing list
> Modeling@www.fipa.org
> http://fipa.org/mailman/listinfo/modeling
>