Classification of Complex Robot Swarm Behaviors
MAS622J Final Project - Aisha Walcott - Fall 2006

Introduction

Data

Features

Methods and Results

Conclusions
Data

Data Collection
Data was collected from the Swarm executing four complex behaviors: Cluster, Disperse, Flock, Orbit, and Bubble Sort. Each of these behaviors were executed by the Swarm several times, to create a total of 80+ samples (instances) of the Swarm. Note that any number of robots were selected to execute a behavior each time a behavior was executed.

An example of a typical raw data file is shown below. The first column is the time stamp in milliseconds (ms), the second column is the robot ID, the third and fourth columns are the x and y position in millimeters, the fifth column is a number representing which behavior is being performed, and the sixth column is the number of hops to the source. The source is identified by having 0 hops. Each frame contains data from a set (ideally all) of robots. An example data file is shown below.
Sample Raw Data File
------------------------------------------------------------------------------------------------------------------------------------
%BUBBLE_SORT[8]
40318.0  14.0  2007.0  2426.0  8.0  0.0 
40328.0  29.0  438.0  1721.0  8.0  3.0 
40328.0  35.0  843.0  1692.0  8.0  3.0 
40338.0  37.0  581.0  1071.0  8.0  3.0 
    -1    -1    -1    -1    -1    -1
40568.0  14.0  2007.0  2426.0  8.0  0.0 
40578.0  29.0  438.0  1721.0  8.0  3.0 
40578.0  35.0  843.0  1692.0  8.0  3.0 
40588.0  37.0  338.0  1080.0  8.0  3.0 
40618.0  40.0  2010.0  1847.0  8.0  1.0 
40638.0  46.0  758.0  663.0  8.0  3.0 
------------------------------------------------------------------------------------------------------------------------------------

Preprocessing
An overhead IR camera system is used to determine the x,y position in millimeters (mm) of each robot. At times, the system detected phantom robots, that is robots that were not actually there. A Java program was implemented to do further processing. Specifically, to cope with the more obvious errors in the raw data such as, the redundant robot IDs on each line, incorrect time stamps (which were removed), and the position system errors (such as, robot is at (0,0)). Also, sometimes the source robot was mis-identified this was remedied by finding the robot most often labeled with 0 hops. The data is  made publicly available here (see table below).

Behavior
Data Files
1. Cluster
cluster.zip
2. Disperse
disperse.zip
3. Orbit
orbit.zip
4. Bubble-sort
bubble_sort.zip