next up previous
Next: Vacuuming Strategies

A Situated Vacuuming Robot

D. Bruemmer, R. Dickson, J. Dilatush, D. Lewis, H. Mateyak
M. Mirarchi, M. Morton, J. Tracy, A. Vorobiev, - L. Meeden

Computer Science Program, Swarthmore College
Swarthmore, PA 19081
meeden@cs.swarthmore.edu

We undertook this project as an opportunity to explore design ideals of the embodied approach. At our disposal was a Pioneer robot and its Saphira software (ActivMedia 1996). Similar to subsumption architecture (Brooks 1986), the Saphira software tackles the dilemma of how to implement layered control design within a system which is inherently centralized. Brooks saw each layer as a simple and almost independent computational entity and, likewise, Saphira allows us to create a hierarchy of behaviors that each have the capacity to function simultaneously and yet asynchronously. Just as Brooks proposed a means by which one level can subsume a lower level by inhibiting its output, so behaviors can each be assigned a priority.

The main strength of Saphira's behavioral approach is not its ability to subsume or inhibit, but rather its capacity to blend behaviors. Non-conflicting behaviors run simultaneously and independently. If behaviors do conflict, their output can be combined in a number of ways. For example, if Turn90Degrees has highest priority and gives commands on the turn channel and Constant_Velocity is of lower priority and gives commands on the speed channel, then both behaviors will run completely independently. However, if Turn90Degrees gives commands on the speed channel, those commands override the activity of Constant_Velocity. If instead, both Constant_Velocity and Turn90Degrees have equal priorities then their activities will be blended, allowing smooth transitions between them.





Lisa Meeden
Wed Apr 2 09:29:49 EST 1997