A CASE Tool For Robot Behavior Development

A CASE Tool For Robot Behavior Development
Angeliki
1
Topalidou-Kyniazopoulou ,
Nikolaos I.
[email protected]
1
2
Spanoudakis
and Michail G.
[email protected]
1
Lagoudakis
[email protected]
Department of Electronic and Computer Engineering, Technical University of Crete, Greece
2 Department of Sciences, Technical University of Crete, Greece
Summary
Agent Systems Engineering Methodology
We present KSE (Kouretes StateChart Editor), a CASE (Computer-Aided ‐ Applies a Model-Driven Engineering approach
Software Engineering) tool designed for developing robot behaviors or ‐ In the Analysis phase we define liveness formulas that describe and connect the activities
multi-agent systems by using ASEME’s models and transformations and a
included in the desired behavior in a formal way, similar to regular expressions
source code generator for the Monas robot software architecture.
‐ Each liveness formula is a rule decomposing one capability (shown on the left side) into a
KSE supports:
number of interconnected smaller activities (shown on the right side)
‐ Automatic generation of the initial abstract statechart model using
‐ Liveness formulas are transformed to statecharts
compact liveness formulas
‐ In the Design Phase, we define the Intra-Agent Control (IAC) models as statecharts. A
‐ Graphical editing of the statechart model and its transition expressions
statechart is a formal model that describes complex processes and control structures using
‐ Automatic source code generation for compilation and execution on the
a directed graph with nodes (states) and edges (transitions).
robot
‐ Each node has a name, type, label and is
Methodology
associated with an activity
The Statechart
‐ Each transition is characterized by an expression
Metamodel
e[c]/a (e, c and a are all optional)
‐ e, the event triggering the transition
‐ c, the condition that needs to be
satisfied for the transition to take
place when e occurs or the previous
state activity finishes execution
‐ a, actions executed when the transition is taken
KSE Graphical Interface
KSE Technology
‐ Eclipse Rich Client Platform (RCP)
‐ Eclipse Modeling Framework (EMF)
‐ Graphical Modeling Framework
(GMF)
‐ OCL tools
‐ Xpand SDK
‐ Xtext SDK
‐ Deltapack
Use the
palette
objects
to draw
elements
in the
graph
The KSE CASE Tool
- Liveness Formula Editor, text editor
‐ Liveness2IAC transformation tool
‐ Graphical Statechart Editor
‐ Validation Tool
‐ Link model to local code repository
‐ Source Code Generator
‐ Code Generator Customization
‐ Runs on Windows and Linux
StateChart Model’s Graphical Representation
Transition Connection → directed edge, Node Element → several types:
OR →
AND →
BASIC →
CONDITION →
START →
END →
The properties of the selected transition
(with orange background in the graph)
Results
Statechart Example for the Noxious-Kouretes Goalie in Robocup SPL 2011
KSE Empirical Evaluation
During a lab session 28 undergraduate ECE students used KSE to design an attacker behavior
for Robocup SPL. All of them managed to complete the task and evaluated KSE positively.
70
The Liveness formula was
… to edit.
60
50
The statechart was … to
edit.
40
30
The navigation of the KSE
menu was … .
20
10
0
Very Easy
Easy
Normal
Difficult
Very Difficult
The use of KSE was ... in
general.