23.08.2015 Views

Here - Agents Lab - University of Nottingham

Here - Agents Lab - University of Nottingham

Here - Agents Lab - University of Nottingham

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

1 role Thermostat {23 task AchieveTemperature {4 targetTemp : double ;5 }67 task KeepTemperature {8 inputView : UserView ;9 }1011 task DoSelfTest { }1213 understands {14 newThreshold : double ;15 }16 }1 interface Conditioner {23 obsprop isHeating : boolean ;4 obsprop isCooling : boolean ;56 operation startHeating ( speed : double );7 operation startCooling ( speed : double );8 operation stop ();9 }1 interface Thermometer {2 obsprop currentTemp : double ;3 }1 interface View {2 obsprop desiredTemp : double ;3 obsprop thermStatus : ThermostatStatus ;4 }Fig. 2. Definition <strong>of</strong> an agent role (on the left) and artifact interfaces (on the right).The overall (dynamic) set <strong>of</strong> agents and artifacts can be organized in one ormultiple logical containers called workspaces, possibly in execution on differentnodes <strong>of</strong> the network. An agent actually can eventually use concurrently andtransparently artifacts located in different workspaces, not necessarily only thosethat belong to the workspace where the agent is running.The computational model/architecture adopted for simpAL agents is a simplifiedversion <strong>of</strong> the BDI one, implementing a sense-plan-act like executioncycle [15], but using OOP instead <strong>of</strong> logic programming to represent and manipulatedata structures. An agent has a belief base, as a long term private memorystoring information about: (i) the private state <strong>of</strong> an agent, (ii) the observablestate <strong>of</strong> the environment, and (iii) information communicated by other agents.In simpAL the belief base is composed by a set <strong>of</strong> beliefs represented by simplevariable-like information items, characterized by a name, a type, and a value—which could be any data object 3 . To perform tasks, an agent exploits the plansavailable in its plan library. Plans are modules <strong>of</strong> procedural knowledge specifyinghow to act and react to the events <strong>of</strong> the environment in order to accomplishsome specific task. The set <strong>of</strong> plans in the plan library depends on the scriptsloaded by the agent. As detailed later on, scripts are modules containing thedescription <strong>of</strong> set <strong>of</strong> plans, written by the agent programmers. An agent canhandle multiple tasks in execution at a time.3 It is worth remarking that in existing agent-oriented languages beliefs are typicallyrepresented by first-order logic literals, denoting information that can be used byreasoning engines. However the logic representation is not necessarily part <strong>of</strong> thebelief concept, as remarked by Rao and Georgeff in [12]:“[beliefs] can be viewed asthe informative component <strong>of</strong> the system state” and “[beliefs] may be implemented asa variable, a database, a set <strong>of</strong> logical expressions, or some other data structure”([12],p. 313).137

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!