Home > Agent Core > AgentAlpha Architecture

AgentAlpha Architecture

September 3rd, 2008 heckel Leave a comment Go to comments

The first revision of the AgentAlpha architecture (temporary name, given the current state of the engine) has five major parts:

AgentCore

  • Handles administrivia (reading in XML files, setting up logging)
  • Manages data coming in from the game world (what agent has access to what data? granularity of data?)
  • Manages actions going out from the agent
  • Manages multiple agent threads (most likely, one instance of AgentAlpha per team)

GameController

  • Connects to the game server and services (such as SSPS)
  • Receives percepts from game and services
  • Sends actions to game
  • Spawned by AgentCore

AgentController

  • One per agent
  • Builds individual agent configurations
  • Prioritizes agent behaviors
  • Manages system resources
  • Spawned by AgentCore

AgentThread

  • Runs individual behavior objects
  • Number of threads dependent on system resources
  • Spawned by AgentController

BehaviorObjects

  • Implements individual primitive behaviors
  • Each object provides generator function
  • Any-time: calling generator function next() method returns progressively better answers
  • Objects instantiated by AgentController, managed by AgentThread

Graphical representation of the architecture at the thread level (objects not represented here):

AgentAlpha Architecture

AgentAlpha Architecture

Categories: Agent Core Tags:
  1. No comments yet.
You must be logged in to post a comment.