a dsl for the visualization of multi-robot systems

16
A DSL for the visualization of Multi- Robot Systems Alexandre Bergel (PLEIAD, University of Chile), Serge Stinckwich (IRD,Vietnam)

Upload: stinckwich-serge

Post on 28-Nov-2014

1.098 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: A DSL for the visualization of Multi-Robot Systems

A DSL for the visualization of Multi-

Robot SystemsAlexandre Bergel (PLEIAD, University of Chile), Serge

Stinckwich (IRD, Vietnam)

Page 2: A DSL for the visualization of Multi-Robot Systems

Problem statement

• Visualization as an aid to design complex multi-robots algorithms

• Express what need to be visualize in the context of the domain of the user (robotics experts here) and in a declarative way

• Adapt the visualization&model during the simulation (aka. exploratory modeling)

Page 3: A DSL for the visualization of Multi-Robot Systems
Page 4: A DSL for the visualization of Multi-Robot Systems

Mondrian

• Interactive information visualization engine

• Visualizations can be specified by script

• Embedded Domain-Specific Language (Smalltalk is the host language)

• Drawback: only static structure

Page 5: A DSL for the visualization of Multi-Robot Systems

From Mondrian to Calder

Page 6: A DSL for the visualization of Multi-Robot Systems

Calder: DSL for MRS visualization

• Visualize dynamic structures (graphs) dynamically and interactively

• Interact with individuals nodes and graph as a whole

• Currently applied to multi-robot systems

Page 7: A DSL for the visualization of Multi-Robot Systems

Smalltalk syntax in a nutshell

• Everything is an object

• All the computation is done through objects sending messages to other objects

• 4 types of expressions: literals, variables, messages and blocks, 11 AST nodes

• Easy to build new DSL + tools to design your own syntax (Helvetia)

Page 8: A DSL for the visualization of Multi-Robot Systems

Message sending

• Unary message: view treeLayout

• Binary message: 2+3

• Keywords message: myArray at: 1 put: 5

Page 9: A DSL for the visualization of Multi-Robot Systems

Blocks

• [3+4]

• [:x | x +1]

• [:x | x +1 ] value: 3 => 4

Page 10: A DSL for the visualization of Multi-Robot Systems

Basic Mondrian vocabulary

• Nodes

• Edges

• Layout

• Shapes

Page 11: A DSL for the visualization of Multi-Robot Systems

view nodes: classes.view edges: classes

from: [:each | each superclass]to: [:each | each].

view treeLayout.

Page 12: A DSL for the visualization of Multi-Robot Systems

view nodes: classes.view shape rectangle

height:[:each | each numberOfMethods].

view edges: classesfrom:[:each | each superclass]to:[:each | each].

view treeLayout.

Page 13: A DSL for the visualization of Multi-Robot Systems

Demonstration 1

Page 14: A DSL for the visualization of Multi-Robot Systems

Application: visualization of MRS coverage algorithms

Nikolaus Corell, Jonathan Bachrach, Daniel Vickery and Daniela Rus, “Ad-hoc Wireless Network Coverage with Networked Robots that Cannot Localize”, ICRA’09, Kobe, Japan

Page 15: A DSL for the visualization of Multi-Robot Systems

Demonstration 2

Page 16: A DSL for the visualization of Multi-Robot Systems

Conclusion&perspectives

• More general than just robotics: can be used to visualize every dynamic graph of objects

• At the moment, only visualization. Behaviour of robots can’t be changed very easily.

• Construct a vocabulary suitable to MRS visualization (motion, perception, ...) in an iterative way

• Connect to a real robotic simulation engine