Package net.sf.tweety.agents
Class RoundRobinProtocol
- java.lang.Object
-
- net.sf.tweety.agents.AbstractProtocol
-
- net.sf.tweety.agents.RigidProtocol
-
- net.sf.tweety.agents.RoundRobinProtocol
-
- All Implemented Interfaces:
Protocol
- Direct Known Subclasses:
GroundedGameProtocol
public class RoundRobinProtocol extends RigidProtocol
This class models a round robin protocol for multi-agent systems. This protocol assumes some order of the agents and asks each agent for some action which is directly executed in the environment. This process is repeated for all agents. The protocol can optionally be defined as rigid, i.e. if at any time an agent performs a "NO_OPERATION" he cannot perform any other action thereafter.
This protocol terminates when there has been no actions for a full round or (if the protocol is defined to be rigid) after all agents performed one NO_OPERATION.- Author:
- Matthias Thimm
-
-
Constructor Summary
Constructors Constructor Description RoundRobinProtocol(MultiAgentSystem<? extends Agent> multiAgentSystem)
Creates a new (non-rigid) round robin protocol for the given multi-agent system.RoundRobinProtocol(MultiAgentSystem<? extends Agent> multiAgentSystem, boolean isRigid)
Creates a new (non-rigid) round robin protocol for the given multi-agent system.
-
Method Summary
-
Methods inherited from class net.sf.tweety.agents.AbstractProtocol
addProtocolListener, removeProtocolListener
-
-
-
-
Constructor Detail
-
RoundRobinProtocol
public RoundRobinProtocol(MultiAgentSystem<? extends Agent> multiAgentSystem)
Creates a new (non-rigid) round robin protocol for the given multi-agent system.- Parameters:
multiAgentSystem
- a multi-agent system.
-
RoundRobinProtocol
public RoundRobinProtocol(MultiAgentSystem<? extends Agent> multiAgentSystem, boolean isRigid)
Creates a new (non-rigid) round robin protocol for the given multi-agent system.- Parameters:
multiAgentSystem
- a multi-agent system.isRigid
- whether this protocol is rigid.
-
-