Procrastination is like masturbation: It's great at first, but then you realize that you are only fucking yourself.
― unknown (first seen in a post on Slashdot)
Projects
World's Smallest Autonomous Robotic Stair-Surmounting System
Scouts are cylindrical robots just 10 cm in length with only rudimentary computational resources. The lack of intelligence necessitated the use of either teleoperation, which fatigues the human operator quickly, or undesirable open-loop control. By tracking a Scout with an external camera using topologically adapting snakes and relaying control commands to the robot, I was able to create the world's smallest autonomous robotic stair-surmounting system. The Scout situates itself at an advantageous position and subsequently jumps onto the next step, as demonstrated in a short video (89s, 15 MB). The steps only appear big in comparison to the robot; they were constructed according to building codes.
The robot was also most notably featured on Slashdot, The Daily Show with Jon Stewart, CNN Headline News, and the BBC in a program — oops: programme — titled "Seven Ways to Topple Saddam".
Topologically Adapting Snakes
I have improved the tracking performance of active contour models by allowing snakes to split and merge. This can be useful for handling occlusions (e.g., pedestrian tracking) and objects that undergo topological changes (e.g., globule in a liquid motion lamp). Enjoy the relaxing video (14s, 2.3 MB).
Distributed Software Architecture for Heterogeneous Robot Team
Wrangling a large number of heterogeneous mobile robots is a tough challenge that can only be alleviated by introducing intelligence. In order to optimize usage of the available resources, I co-led a team to design and implement a distributed software architecture, allowing the robots to communicate with each other and the human operator. By hiding the system's complexity in the CORBA-based middleware, our group was able to quickly create autonomous applications that proved themselves in realistic tests by the U.S. military. The architecture employed XML to describe the varying capabilities of robots, rather than write yet another parser for a proprietary description language, as was the standard then. The UML diagram depicts the component startup.
Regrasping
Manipulators in contemporary workcells are optimized for fast throughput by employing part feeding mechanisms and assuming single-grasp operations. This approach is ill-suited for unstructured environments, in which no guarantee for the initial placement of parts
can be made. Several grasps may be required to achieve the goal
pose. In this project, my partner and I developed a framework for
automatically generating a sequence of grasps to transfer a part with
known geometric properties from its initial pose to the desired
pose. Regrasping provides manipulators with increased flexibility to
handle unforeseen situations.
University of Minnesota LaTeX Thesis Package
Because the University of Minnesota's Graduate School does not provide a template for the dissertation, I created a simple LaTeX package myself. I tried to follow the at times self-contradictory and confusing formatting guidelines as closely as possible. (Could this be the reason the U lacks an official style?) Several options (e.g., spacing) can be selected in the main file umnthesis.tex. Templates exist for mandatory pages (title, copyright, etc.) that are output in the correct order. To start writing your thesis, download the file umnthesis.tar. Feel free to use and distribute it.
Dissertation
This is the abstract of my Ph.D. thesis "Vision-based Control of Miniature Jumping Scout Robots". (Email me if you're interested in the whole document.)
In this dissertation, the problem of vision-guided control of miniature mobile robots is investigated. Untethered mobile robots with small physical dimensions of around 10 cm or less do not permit powerful onboard computers because of size and power constraints. These challenges have in the past reduced the functionality of such devices to that of a complex remote control vehicle with fancy sensors. Teleoperation, however, is a very tedious task for humans and does not scale well when deploying large numbers of robots.
As autonomous control cannot be achieved by the miniature robot itself, a proxy-processing scheme is proposed. With the help of a computationally more powerful entity such as a larger companion robot, the control loop can be closed. Using the miniature robot's video transmission or that of an observer to localize it in the world, control commands can be computed and relayed to the inept robot. The result is a system that exhibits autonomous capabilities.
The framework presented here requires the detection and tracking of a miniature robot in a video stream. A tracking method is presented that places active closed contour models over a color video stream. The menace of the crossover problem is robustly addressed by a novel method that allows the active contour to undergo topological changes during its minimization process. This is achieved by split and merge operations that dynamically create and destroy tracking contours as needed.
The methods developed are tested on a real-world miniature robot, the Scout. Autonomously surmounting the steps of a staircase by means of the Scout's unique locomotion mode, the jump, is chosen as an exemplary task. A detailed kinematic model is developed to analyze the robot's range of motions. The model allows the generation of plans to safely guide the robot up the stairs.