Mobile Robot Programming by Demonstration

Programming by demonstration is an End-user development technique for teaching a computer or a robot new behavior by demonstrating the task to transfer directly instead of programming it through machine commands. In this paper we propose two new techniques to obtain the control code for a mobile robot through "programming by demonstration". Initially, a robot is controlled by a human operator who manually guides the robot through a desired path this is called teaching phase, and then the robot will navigate autonomously with taught information this is called execution phase. In contrast to traditional robot programming techniques, these methods does not require specialized technical or programming skills, but translates demonstrated behavior immediately into executable code. This has obvious implications for the widespread use of personal service robots.