Package decisionMakingSystem

Package class diagram package decisionMakingSystem
Interface Summary
DecisionModule Defines the interface which decision module gives to other modules around (like memory, agent).
 

Class Summary
Action Action is one of the core classes of this decision making modul.
Affordance Affordance contains its type, attractivity and a counter.
AgentParameters A central place to set some of the agent related parameters.
DecisionModuleImpl main decision making module - presents the logic of the bot! it takes care about everything about the main logic cycle choice of intention to be performed, action to be performed, update of fadeout, attractivity, rollback when something fails, update of attractivity of intentions etc.
DMSLogger DMSLogger logs agents activity to a file.
DMSModuleViewer What I want to show? - intention area - name, activation, parent name - daily plan - intention name and activation intervals - action area - name activation, attention - perceived items - together with visible - like make those bot perceives bold for instance - visible items - name, attention (attractivity) so I will have 4 tables ########################### # int area # act area # ########################### # daily plan # items # ############$############## # info panel # ##############
DMSModuleViewerPane Basically just a copy of DMSModuleViewer.
EItem General item class - serves to wrap all objects operable by an agent under one with additional features like affordances, attractivity, fadeout etc.
GlobalParameters holds all parameters for all agents - so its not necessary to change them everywhere singleton!
GMTTime Takes care about time or more specifically about time changes.
Intention Intention is one of the crucial classes of this decision making model it represents an "OR" node of the tree, so it contains a set of actions by which it can be satisfied (it suffices to succeed with one of them)
Inventory Inventory cares about items agent picked up.
ItemMemory This module is rather simple.
ItemRecord Item record serves to store item memory information about an item it does not store anything but the location, affordances and cathegory of the original EItem but it adds other variables - missed, found, seen, time which indicate when was the last time the record was modified and how many times bot found, missed (not found) and saw the thing on the location
PerceptiveField Perceptive field is taking care about the actions and their link with items (satisfaction of affordances) therefore it contains link to ThingManager and structures to hold currently perceived items and actions, which are active and compete to be executed
ScheduleEntry This structure is used to store the schedule entries, example: when we want agent to go to school for few months we add to the planing.xml a record with:
intention = IStudy
weeks = list of intervals of weeks -> (0-12) will tell him to go there for first 3 months
executionTimes - [(1, 1, 1.0) ; (2, 2, 0.5) ; (4, 3, 0)] will say, that bot studies every monday morning, tuesday afternoon on fifty percent and is not studying thursday evenings (though this is implicit and doesn't have to be included)
Scheduler Scheduler creates everyday plans according to the information given in the planning.xml.
ThingsManager register listeners for items, players etc.
Want dynamicaly created intention responsible for acquiring things that satisfies not already satisfied affordances
 

Enum Summary
AffordanceType Types of affordances.
IntentionStates States of the intention during execution.
ItemCathegory cathegory of an item which determines basicaly what we can do with it
MessageType  
 



Copyright © 2013 AMIS research group, Faculty of Mathematics and Physics, Charles University in Prague, Czech Republic. All Rights Reserved.