Sascha as a toddler looking concentrated on a chess board 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)


Backup of Native Google Drive Documents

Google Takeout does not allow to backup built-in file formats (e.g., Docs, Sheets) by itself. You always have to get everything, including uploaded documents. The Google Drive client does not help either, because it merely stores links for the native file formats. Here's a bash script that allows exporting all native documents (and those only!) to local storage along with the meta-information needed to restore the files to Google Drive if it ever fails:

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. The steps only appear big in comparison to the robot; they were constructed according to building codes.
Scout hopping step

The robot was also most notably featured on Slashdot, The Daily Show with Jon Stewart, CNN Headline News, and the BBC in a show titled "Seven Ways to Topple Saddam".
Scout report on Daily Show with Jon Stewart Scout report on CNN Headline News

Topologically Adapting Snakes

Lava lampI 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. Enjoy the relaxing video of tracking the globule in a liquid motion lamp.


Sequence of regrasp operationsManipulators 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.

Distributed Software Architecture for Heterogeneous Robot Team

UML diagram for component startupWrangling 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 middleware, our group was able to quickly create autonomous applications that were validated in 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.

University of Minnesota LaTeX Thesis Package

Because the University of Minnesota's Graduate School did not provide a template for dissertations, I created a simple LaTeX package. I tried to follow the at times self-contradictory and confusing formatting guidelines as closely as possible. 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.