PowerPoint 2003

advertisement
MSRS - Critique on its Usability via a Path
Planning Algorithm Implementation
George Markou & Ioannis Refanidis
University of Macedonia
Greece
Microsoft Robotics (1/2)
• Microsoft Robotics Studio (MSRS) 1.0
– Originally available in late 2006
• MSRS 1.5 Refresh
– Available in late 2007
– Version we used to implement our experiments
• Microsoft Robotics Developer Studio (MRDS) 2008
– Current version (Since April 2008)
13 April 2015
AIAI 2009
2/13
Microsoft Robotics (2/2)
Features include:
– Microsoft Visual Simulation Environment (VSE)
• 3D physics-based virtual environments
• User can create / import 3-dimensional meshes into MSRS’ simulation
environment
– Support for multiple programming languages
• C#, C++, VB.NET, Iron Python
• Visual Programming Language (VPL)
– Built-in support for multiple robots
• LEGO MINDSTORMS NXT, iRobot Create, MobileRobots Pioneer P3DX, etc.
– Concurrency and Coordination Runtime (CCR)
• “manages asynchronous operations, exploits parallel hardware and deals
with concurrency and partial failure”
13 April 2015
AIAI 2009
3/13
Related Work
What others say:

– Lots of technological solutions to common robotic field problems : e.g. VPL & concurrency
control &efficient distributed message passing. (Jackson J, 2007)
– Usefulness in academic environment:
•
•
Link between language syntax already known to students and unfamiliar robotics semantics
Satisfied with the available features of the program and its support (Workman K & Elzer S,
2009))
– Will force other platforms to develop their competitive products so as to offer similar
capabilities (Tick J, 2006)

– Evident limitations: e.g. integration with low level processors (Jackson J, 2007)
– Usefulness in high school environment:
•
Main disadvantage: Visual programming language used requires detailed knowledge of an
imperative programming language (Tsai W T et al., 2007)
Our critique?
13 April 2015
AIAI 2009
4/13
Robotics Platforms Comparison
MSRS 1.5
MobileRobots
Skilligent
Orocos
Player Project
Urbi/ Webots
Open Source
No
No
No
Yes
Yes
Parts of Urbi
Free of Charge
Express Edition
No
No
Yes
Yes
No
Windows/ Linux
Yes/ No
Yes/ Yes
Yes/ Yes
No/ Yes
No/ Yes
Yes/ Yes
Other OS
No
No
No
No
Yes
Yes
Distributed Services
Yes
No
Yes
No
Limited
Yes
Drag-and-Drop IDE
Yes
No
No
No
No
Yes
Object Recognition
No
No
Yes
No
No
No
Localization
No
Yes
Yes
No
No
No
Learning/ Social
Interaction
No
No
Yes
No
No
No
Simulation Environment
Yes
Yes
No
No
Yes
Yes
Reusable Service Blocks
Yes
Yes
Yes
Yes
No
Yes
Real-Time
No
No
No
Yes
No
No
13 April 2015
AIAI 2009
5/13
Maze Domain (1/2)
• Simulated Maze
– Originally created using MSRS 1.5 Refresh
– Migrated to MRDS 2008
• Creating very realistic environment: not suited for novices
– Professional examples: see SimplySim (www.simplysim.net)
13 April 2015
AIAI 2009
6/13
Maze Domain (1/2)
• Our environment
– Simpler
– Based on the “MazeSimulator” project (Trevor Taylor http://www.promrds.com/Downloads.htm)
– Gridworld of size 7×7
– Nodes can randomly alternate their status between blocked & unblocked
(abstraction of the Robocup Rescue Simulator Competition http://www.robocuprescue.org)
13 April 2015
AIAI 2009
7/13
Maze Domain (2/2)
• Robot
– Pioneer 3DX with mounted Sick Laser Range Finder (LRF) LM200
• Movement of the robot:
– Moves in a straight line for a distance equal to the length of a node.
– Decides, based on the planning algorithm, if a turn is necessary
– Executes the turn (in angles which are multiple of 90°)
• Using LRF, the robot builds a tri-color map of the environment
– White color: Free space
– Black color : Laser hit an obstacle
– Grey color: Non explored part of the maze
13 April 2015
AIAI 2009
8/13
Implementation
• Implemented the backwards version of the Lifelong Planning
algorithm (LPA*) (Koenig et al., 2004)
– Combination of heuristic (A*) & incremental algorithm
(DynamicSWSF-FP)
– Able to repeatedly find a shortest path between two given
vertexes in a dynamic environment
• Dynamic Environment: Blocking / unblocking a maximum of
two nodes.
•
Use of C#
13 April 2015
AIAI 2009
9/13
Critique (1/2)
Why not VPL?
•
•
•
•
Preference towards languages related to our previous knowledge (in our case C#)
Diagrams tend to become exceedingly large as program’s complexity increases
Limited support for arbitrary user-defined data types
Built-in support:
–
–
–
Control flow: “if statements”
Collection of items: lists
Recursion and arrays are not natively supported
Why VPL?
•
Graphical “drag-and-drop” programming
–
•
•
Best suited for novice users
Creation of a program by “orchestrating activities” == connecting activity blocks
Most useful as a tool, especially if one is not familiar with MSRS’ environment
–
Easily create the skeleton of a basic program by wiring activities to each other &
automatically generating C# code through it
13 April 2015
AIAI 2009
10/13
Critique (2/2)
•
CCR:
– Handles the required messaging and orchestration efficiently
– Instead of writing complex code to coordinate sensors & motors functioning
simultaneously
•
Simulation environment
– Served our functional needs
– Aesthetically appealing
•
MSRS 1.5 Refresh:
 Extensive features & capabilities
• Potentially establish it as the field’s standard
• Major advantage: Vast economical & commercial support a company like Microsoft can
provide for it
 Several minor or major difficulties
• Major: Unexpected termination depending on the machine it was executed on
• Most attributed to small life cycle of the product  migration to MRDS resolved them
• Such problems could discourage researchers/educators from relying on it
13 April 2015
AIAI 2009
11/13
Future Work
• Different environment
– Induce changes to it more than once
– Coordinate MSRS’s services to communicate automatically every
time a change occurs
• More efficient, semi-quantitative evaluation
– Develop structured questionnaire
– Ask two groups of students to fill them out
– Each of them will implement a similar robotics project in MSRS &
another robotic platform
13 April 2015
AIAI 2009
12/13
Thank you!
• Comments? Questions?
• Contact us at: gmarkou/ yrefanid@uom.gr
13 April 2015
AIAI 2009
13/13
Download