Over the past 50 years, robots have been primarily used to provide increased accuracy and throughput for particular, repetitive tasks, such as welding, painting, and machining, in hazardous, high volume manufacturing environments. Automating such dirty, dull, and dangerous functions has mostly involved implementing customized solutions with relatively specific, near term value. Although a sizeable “industrial” robotics industry has developed as a result, the applications for such first generation robotics solutions have proven to be relatively narrow and largely restricted to static, indoor environments, due to limitations in the enabling technology. Within the past five years, however, tremendous advancements in robotics technology have enabled a new generation of applications.