Graduation Year


Document Type




Degree Name

Doctor of Philosophy (Ph.D.)

Degree Granting Department

Computer Science and Engineering

Major Professor

Yu Sun, Ph.D.

Committee Member

Lawrence Hall, Ph.D.

Committee Member

Sudeep Sarkar, Ph.D.

Committee Member

Rajiv Dubey, Ph.D.

Committee Member

Chad Dube, Ph.D.


learning from demonstration, trajectory generation, velocity generation


Robots excel in manufacturing facilities because the tasks are repetitive and do not change. However, when the tasks change, which happens in almost all tasks that humans perform daily, such as cutting, pouring, and grasping, etc., robots perform much worse. We aim at teaching robots to perform tasks that are subject to change using demonstrations collected from humans, a problem referred to as learning from demonstration (LfD).

LfD consists of two parts: the data of human demonstrations, and the algorithm that extracts knowledge from the data to perform the same motions. Similarly, this thesis is divided into two parts. The first part discusses what related datasets exist, how each dataset fits and does not fit our purpose, and how we collected our own dataset. The second part presents two approaches for generating robotic manipulation motions.

The first approach uses functional principal component analysis to break down a motion into simpler components, each component carrying a certain pattern of variation throughout the complete execution duration. New motions are built using those components, with certain constraints specified by the users. We used this approach to generate motions with the arm.

The second approach uses recurrent neural networks as its framework which solves the drawbacks that we identified in the first approach. The essence of the approach is a velocity generator that runs forward in time. A trajectory is generated through the execution of the velocities. We particularly used this approach to solve the problem of accurate pouring. We evaluated the approach on a physical system and achieved high accuracy when pouring water from different source containers.