James McLurkin
Assistant Professor
Rice University, Department of Computer Science


James McLurkin's Research Projects

Robotics — The Next Generation
Much of the current robotics research aims to create practical robots that can function in today’s society. Through the advent of robots designed to perform certain human tasks, robots can be deployed for difficult and dangerous missions that may otherwise jeopardize human lives.

Swarm Reporting for Duty
To create robots that can explore caves, landmines or even Mars, the robots must be plentiful and autonomous. The Swarm, a fleet of 100 robots, runs on the Swarm Operating System (SwarmOS), which is based on distributed algorithms that allow the input or commands to be divided among multiple recipients. This software is also scalable, so that the number of robots in the swarm can increase or decrease without affecting the work accomplishments of the group. While a centralized system is easier to program and control, it is not readily scalable and thus does not react well if one member of the group fails to perform during the task. Distributed algorithms also set the platform for local communications among the robots so each can work independently toward achieving one common goal.

Mother Nature’s Secrets
As lead scientist at iRobot, McLurkin began the Swarm project in 1999 with colleagues Jim Frankel and Jennifer Smith. The aptly named Swarm was inspired by the biology of bees and ants, both swarm insects that are reproductive labors and work autonomously but toward a common goal such as collecting nectar. The Swarm was a progression of McLurkin’s robotic ants, which he built as a freshman at MIT. Software research for the Swarm was sponsored by the Defense Advanced Research Projects Association (DARPA) from 2002-2004.

Off To Work They Go
The Swarm project is a hardware simulation, in which the software is written and tested on a real swarm robot prototype. The five-cubic inch robots are equipped with light sensors, drive motors, a bump skirt and more. In deploying the Swarm, hands-free maintenance is crucial and implemented with Robot Ecology™, a physical extra-structure composed of a beacon navigation, camera, testing station, and chargers to enable the Swarm to work at its optimal performance, sans direct human contact. The beacon navigation is a long-range navigation center that acts like a compass to inform the swarm where they are going — particularly used to direct the robots to the docking stations to charge. The beacon is turned to guide the robots in the correct path of the dock. The chargers along the docking station resemble the robots, so that the Swarm will be attracted to them when they need to refuel. It is critical that the chargers are hands-free, because it would be an overwhelming task to charge 100+ robots by hand — impeding work by the Swarm.

The Art of Communicating
LEDs, radio and audio serve as output to keep humans informed of what the Swarm is doing while at work. Illustrating feedback through these methods allows humans to watch the robots directly rather than study a computer screen to observe their actions or see if anything has gone awry. Human connection is made through the HIVE™ interface, a centralized system that collects data, debugs, turns them on and off, and controls their functions. During the tasks, certain robots can be designated as Swarm leaders to take on a higher post and delegate specific orders among the fleet.

The Swarm robots communicate with each other via lateral inhibition (a gradient communications system). Each robot has a unique serial number I.D. When the robots are working in a small group, the robot with the lowest number is usually appointed the leader and the other robots obey or disregard its message based on their own I.D. being higher or lower with respect to the number of the leader. The robots have a communications range of approximately three feet. Hence, they use other robots as landmarks to transmit information. The message will “hop” from the source to the targeted receiver, using the shortest range possible. The message is disregarded by the robots that pass the message along based on the number of each one’s I.D. with respect to the source.

LEDs signify the behaviors of the robots. The tasks/commands can be implemented as a primitive (single) being, duo or other numbers of groups. The robots “clump” to form distinct groups to execute specified tasks. Some examples of other typical commands are:

  • Orient to robot
  • Follow the leader
  • Cluster (robots group into same spot)
  • Orbit robot
  • Disperse uniformly
  • Avoid robot

    In working with a fleet of robots, a multiple of navigational functions are necessary, because generally all the robots would not be sent to the same spot to do the same function. Instead different groups within the Swarm will be assigned to specific tasks to get the job done.

    Swarm Status
    Research on the Swarm is ongoing. Certain improvements that may be worked on are increased accuracy with the commands and the ability of the robots to travel in a straight line (when necessary). The Swarm represents the future of robotics and will help humans to accomplish otherwise daunting tasks.

    Swarm Videos

    Click here for swarm videos.

    James McLurkin