ARGO - A Customized Jason Architecture for Programming Embedded Robotic Agents
-
Upload
carlos-eduardo-pantoja -
Category
Software
-
view
77 -
download
1
Transcript of ARGO - A Customized Jason Architecture for Programming Embedded Robotic Agents
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 1
ARGO: A Customized Jason Architecture for Programming Embedded Robotic Agents
1. Instituto de Matemática e Estatística (IME), Universidade de São Paulo (USP), Brazil2. Escola Politécnica (EP), Universidade de São Paulo (USP), Brazil
3. Centro Federal de Educação Tecnológica (CEFET/RJ), Brazil4. Universidade Federal Fluminense (UFF), Brazil
Laboratório de Técnicas Inteligentes - LTI
Carlos Eduardo Pantoja 3,4
Márcio Fernando Stabile Junior 1Nilson Mori Lazarin 3
Jaime Simão Sichman 2,1
III Workshop on Engineering Multi-Agent SystemsEMAS@AAMAS 2016
Singapore 09/05/2016
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 2
ARGO
The Argo by Lorenzo Costa
Argo was the ship that Jason
and the Argonauts
sailed in the search of the
golden fleece in Greek
mythology.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 3
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 4
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 5
Motivation
MAS A robot is a physical entity, composed by customized hardware, sensors and actuators
How can we program and control a robot including reactive and goal-directed behaviours? .
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 6
BDI model
[http://www.inf.ufrgs.br/prosoft/bdi4jade]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 7
Jason
[Bordini et al. 2007]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 8
Motivation
Programming robotic agents using Jason has revealed to be a difficult task• Bottlenecks can occur
» high cost of processing perceptions» large intention stack is generated
• Integration with hardware is not implemented• Hence, the robot may not succeed !
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 9
Motivation
Javino [Lazarin and Pantoja 2015]• middleware for communication between Java and
microcontrolers (Arduino)• However, using several sensors may compromise the
robot execution time
Perception filters [Stabile Jr and Sichman 2015] • filters are able to improve Jason agent's performance
in a significant way
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 10
Motivation
Instead of taking into account all perceptions ....
MAS
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 11
Motivation
One can filter perceptions!
MAS
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 12
Objectives
ARGO provides a customized Jason architecture for programming embedded robotic agents• Javino + Perception filters
Layered robot architecture Experiments using a ground vehicle platform in a
real-time collision scenario Evaluations of filters impact
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 13
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 14
Jason [1]
• AgentSpeak Interpreter [2]
[1] [Bordini et al. 2007] [2] [Rao 1996]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 15
Jason [1]
• AgentSpeak Interpreter [2]
Most time-consumingprocesses
[1] [Bordini et al. 2007] [2] [Rao 1996]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 16
Profiling
86% of total processing time
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 17
Profiling
99% of total processing time
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 18
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 19
Perception filters
[van Oijen and Dignum 2011] • Integrating agents (2APL, Jadex and Jason) to
computer games;• Middleware responsible for perception filtering;• Interest Subscription Manager.
[Bordeux et al. 1999] • Extend AGENTlib with a perception mechanism;• Perception filter types:
» Range filter;» Field of view filter;» Type detector filter.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 20
Perception filters
Example of Jason perceptions• List of annotated literals
temperature(right,36)temperature(back,38)light(left,143)distance(front,227)distance(right,30)
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 21
Perception filters
Example of our perception filter specification<PerceptionFilter> <filter>
<predicate>temperature</predicate> </filter> <filter>
<predicate>light</predicate> </filter> <filter>
<predicate>distance</predicate><parameter operator="NE" id="0">front</parameter>
</filter></PerceptionFilter>
distance(front,227)[source(percept)]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 23
Perception filters
Example of filter change internal action• Name of file passed as parameter
+!carry_to(R)<− ! take (object, R); .change_filter(search); −object (r1); !!search(slots).
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 24
Perception filters
[Bordini et al. 2007]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 25
Perception filters
[Bordini et al. 2007]
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 26
Perception filters
Changes in Agent class
public void buf(List<Literal> percepts) { if (percepts == null) { return; } int adds = 0; int dels = 0; long startTime = qProfiling == null ? 0 : System.nanoTime();
filter(percepts);
Iterator<Literal> perceptsInBB = getBB().getPercepts(); while (perceptsInBB.hasNext()) { ...
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 27
Perception filters
Changes in Agent class
private static void filter(List<Literal> percept) { if(currentObjective==null){ return; } Iterator<Literal> it = percept.iterator(); while (it.hasNext()) { if (remove(it.next())) { it.remove(); } }}
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 28
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 29
Javino
Javino is a protocol for exchanging messages:• between low-level hardware and a high-level
programming language• double-side library for communication• provides error detection
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 30
Operation modes
Listen mode• only from hardware to software
AGENTsend a message in
every loopget when it
wants
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 31
Operation modes
Request mode• from software to hardware;• the hardware answers.
AGENTrequest a message
answer with a message
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 32
Operation modes
Send mode• from software to hardware;• the hardware executes an action.
AGENTsend a
messageexecute a low-level command
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 33
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 34
ARGO is:• a customized architecture for Jason• employs both Javino middleware and perception
filters » Javino provides a bridge between the intelligent agent
and the robots sensors and actuators» Perception filters act blocking specific perceptions in
runtime ARGO aims to be a practical architecture for
programming automated embedded agents using BDI agents
ARGO
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 35
It directly controls the actuators at runtime It receives perceptions from the sensors
automatically within a pre-defined time interval It enables changing filters at runtime It enables changing accessed device at runtime ARGO agents may communicate with others
Jason Agents It enables to decide when to perceive the real
world at runtime
ARGO overview
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 36
ARGO overview
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 37
Overview of Robot’s Architecture
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 38
Receiving percepts
Sensors capture raw data from the real world and
send them to the microcontroller employed.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 39
Receiving percepts
In the firmware layer, raw data is transformed into
perceptions based on the AOPL chosen.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 40
Receiving percepts
Javino is responsible for sending the percepts to the reasoning layer using serial
communication
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 41
Agent’s reasoning
The agent is able to reason with percepts coming
directly from real world and the MAS can be
embedded in single-board computers (Raspberry,
etc.) or a computer with USB interface
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 42
Executing an action
Agent deliberates and if an action has to be executed, an action
message using Javino is sent.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 43
Executing an action
Javino sends the action message to the
microcontroller connected in the USB port described
in the message.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 44
Executing an action
All possible actuator’s functions are programmed to be executed in response to serial messages coming
from Javino.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 45
Executing an action
The actuator is activated.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 46
Jason’s reasoning cycle with filters
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 47
ARGO’s reasoning cycle
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 48
Customized architecture
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 49
Customized architecture
Customized architecture created to differentiate Argo
agents from common Jason’s
agents
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 50
Customized architecture
Javino instance for each Argo agent.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 51
Customized architecture
Returns the ARGO agent’s Javino
instance.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 52
Customized architecture
The serial port from which the agent is receiving perceptions and executing
actions.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 53
Customized architecture
Defines if the agent has to perceive or not
the real world.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 54
Customized architecture
A time interval, in milliseconds, for the
next real world sensing
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 55
Customized architecture
Function responsible for returning the perceptions
from the real world if:
i) the perceptions is not blocked;
ii) the time limit was reached;
iii) the agent is an ARGO agent
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 56
Customized architecture
Responsible for filtering perceptions, as stated
before.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 57
Customized architecture
Changes in TransitionSystem class
public boolean reasoningCycle() {…ag.buf(this.realWorldPerceptions());…}
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 58
Customized architecture
New realWorldPerceptions function
public List<Literal> realWorldPerceptions() {long perceiving = System.nanoTime();List<Literal> percepts = new ArrayList<Literal>();
if(((perceiving - lastPerceived) < this.limit) || this.blocked)return null;
lastPerceived = perceiving;
if (this.agArch.getArgo().requestData(this.agArch.getPort(), "getPercepts")) {String rwPercepts = this.agArch.getArgo().getData();String perception[] = rwPercepts.split(";");
for (int cont = 0; cont <= perception.length - 1; cont++) {percepts.add(Literal.parseLiteral(perception[cont]));
}return percepts;
}
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 59
Internal Actions
ARGO Internal Actions:• .limit(x)
» defines the sensing interval in milliseconds• .port(y)
» defines which serial port should be used by the agent• .percepts(open|block)
» decides whether or not to perceive the real world • .act(w)
» sends to the hardware an action to be executed by a microcontroller • .change_filter(filterName)
» defines the filter to constrain perceptions in runtime
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 60
Limitations Limit of 127 serial ports
• Due to limitation of USB Connection to one port at a time
• Avoids competition• It can be changed at runtime
Only ARGO agents can control devices• Common Jason agents do not have access to Javino
ARGO agents must be atomic• Cannot create more than one instance of the same agent
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 61
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 62
Case study
• The robot configuration: • 4 distance sensors• 4 light sensors• 4 temperature sensors• 1 Arduino board • 1 Arduino 4WD chassis
• Initial distance of 2m from the wall• The robot moves at constant speed• The robot should stop before
achieving a specified desired distance from the wall
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 63
Evaluating the experiment
Experimental design guidelines defined by [Jain 1991] Essential terms: Response variable
• Processing time» from the moment the robot perceives the wall until it stops
• Final distance » from the position the robot stops to the wall
Primary Factors• Desired distance • Perception interval • Filter
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 64
Evaluating the experiment Essential terms:
• Levels» Values that a factor can assume
Factor LevelsDesired distance 40 cm 80 cm 120 cm
Perception Interval 25 ms 35 ms 50 ms
Filter No Filter Front Side Front Distance
• Replications» Three times for each experiment (81 experiments)
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 65
Evaluating the experiment
Desired distance
Initial distance
2 m
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 66
Filters
Front side filter<PerceptionFilter> <filter>
<predicate>temperature</predicate><parameter operator="NE" id="0">front</parameter>
</filter> <filter>
<predicate>light</predicate><parameter operator="NE" id="0">front</parameter>
</filter> <filter>
<predicate>distance</predicate><parameter operator="NE" id="0">front</parameter>
</filter></PerceptionFilter>
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 67
Filters
Front distance filter <PerceptionFilter> <filter>
<predicate>temperature</predicate> </filter> <filter>
<predicate>light</predicate> </filter> <filter>
<predicate>distance</predicate><parameter operator="NE" id="0">front</parameter>
</filter></PerceptionFilter>
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 68
Evaluating the experiment Agent code:
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 69
Evaluating the experiment Agent code:
Set serial port COM8. Arduino device.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 70
Evaluating the experiment Agent code:
Set an interval of 25ms for perceiving
the real-world
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 71
Evaluating the experiment Agent code:
Open the selected port to start receiving
percepts
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 72
Evaluating the experiment Agent code:
Activates frontSide filter
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 73
Evaluating the experiment Agent code:
Send a message to the microcontroller to move ahead
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 74
Evaluating the experiment Agent code:
Keep moving ahead while
the perceived distance is
greater than the distance
limit
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 75
Evaluating the experiment Agent code:
Stop when it perceives the
wall
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 76
Evaluating the experiment Agent code:
Some additional
plans
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 77
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 78
Perception Interval 20
Perception Interval 35
Perception Interval 50
Perception Interval 20
Perception Interval 35
Perception Interval 50
Perception Interval 20
Perception Interval 35
Perception Interval 50
Desired Distance 40 Desired Distance 80 Desired Distance 120
0
20
40
60
80
100
120
No filter Front Side
Front Distance
Fina
l Dis
tanc
e
Experiments
In all experiments, the robot
collided with the wall!!!
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 79
Perception Interval 20
Perception Interval 35
Perception Interval 50
Perception Interval 20
Perception Interval 35
Perception Interval 50
Perception Interval 20
Perception Interval 35
Perception Interval 50
Desired Distance 40 Desired Distance 80 Desired Distance 120
0
20
40
60
80
100
120
No filter Front Side
Front Distance
Fina
l Dis
tanc
e
Experiments
In some experiments, the robot
didn’t collided with the wall!!!
But it stopped closer to
wall compared to
the front distance
filter
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 80
Perception Interval 20
Perception Interval 35
Perception Interval 50
Perception Interval 20
Perception Interval 35
Perception Interval 50
Perception Interval 20
Perception Interval 35
Perception Interval 50
Desired Distance 40 Desired Distance 80 Desired Distance 120
0
20
40
60
80
100
120
No filter Front Side
Front Distance
Fina
l Dis
tanc
e
Experiments
In quite all the
experiments, the robot
didn’t collided with the wall!!!
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 81
Experiments
The use of the filter was important for obtaining a better response time
Factor Variation attributedDistance Limit (L) 1,415%Perception Interval (I) 0,165%Filter (F) 88,965%Interaction between L and I 0,525%
Interaction between L and F 3,715%
Interaction between I and F 0,265%
Interaction between L and I and F 1,725%
error 3,285%
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 82
Outline
1. Introduction
2. Building Blocks: Jason / Perception Filters / Javino
3. ARGO
4. Case Study
5. Obtained Results
6. Conclusions and Further Work
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 83
Conclusions
The main contribution of ARGO is to offer an open architecture that enables Jason agents to integrate with hardware and to use perception filters• Reduction processing
It allows an agent to decide in runtime:• when to start or to stop perceiving• the interval between each perception• which filters to use
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 84
Further work
Different filtering methods Extending ARGO for multi-robot systems Testing ARGO in different domains Provide other hardware-side libraries
• PIC16F, Intel and STM32.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 85
References
[Bordini et al. 2007] Bordini, R.H., Hubner, J.F., Wooldridge, M. Programming Multi-Agent Systems in AgentSpeak Using Jason. John Wiley & Sons Ltd., 2007.[Lazarin and Pantoja 2015] Lazarin, N.M., Pantoja, C.E. A Robotic-Agent Platform For Embedding Software Agents Using Raspberry Pi and Arduino Boards. In: Proc. 9th Software Agents, Environments and Applications School (WESAAC 2015), Niterói, RJ, Brazil, 2015.[Rao 1996] Rao, A.S. AgentSpeak(L): BDI Agents Speak Out in a Logical Computable Language. In: de Velde, W.V., Perram, J.W. (eds.) Proc. of the 7th European Workshop on Modelling Autonomous Agents in a Multi-Agent World (MAAMAW 1996). Lecture Notes in Artificial Intelligence, vol. 1038, pp. 42-55. Springer-Verlag, Secaucus. USA, 1996.[Stabile Jr. and Sichman 2015] Stabile Jr., M.F., Sichman, J.S. Evaluating Perception Filters In BDI Jason Agents. In: Proc. 4th Brazilian Conference on Intelligent Systems (BRACIS 2015), Natal, RN, Brazil, 2015.
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 86
Acknowledgements
Pantoja, Stabile, Lazarin and Sichman 2016 EMAS@AAMAS 2016, Singapore, 09/05/16 ARGO 87
END
THANKS FOR YOUR [email protected]
[email protected]@cefet-rj.br