Locomotion synthesis in complex physically simulated environments
MetadataShow full item record
Understanding and synthesizing locomotion of humans and animals will have far-reaching impacts in computer animation, robotic and biomechanics. However, due to the complexity of the neuromuscular control and physical interactions with the environment, computationally modeling these seemingly effortless locomotion imposes a grand challenge for scientists, engineers and artists. The focus of this thesis is to present a set of computational tools, which can simulate the physical environment and optimize the control strategy, to automatically synthesize locomotion for humans and animals. We first present computational tools to study swimming motions for a wide variety of aquatic animals. This method first builds a simulation of two-way interaction between fluid and an articulated rigid body system. It then searches for the most energy efficient way to swim for a given body shape in the simulated hydrodynamic environment. Next, we present an algorithm that can synthesize locomotion of soft body animals that do not have skeleton support. We combine a finite element simulation with a muscle model that is inspired by muscular hydrostat in nature. We then formulate a quadratic program with complementarity condition (QPCC) to optimize the muscle contraction and contact forces that can lead to meaningful locomotion. We develop an efficient QPCC solver that solves a challenging optimization problem at the presence of discontinuous contact events. We also present algorithms to model human locomotion with a passive mechanical device: riding a bicycle in this case. We apply a powerful reinforcement learning algorithm, which can search for both the parametrization and the parameters of a control policy, to enable a virtual human character to perform bicycle stunts in a physically simulated environment. Finally, we explore the possibility to use the computational tools that are developed for computer animation to control a real robot. We develop a simulation calibration technique which reduces the discrepancy between the simulated results and the performance of the robot in the real environments. For certain motion planning tasks, this method can transfer the controllers optimized for a virtual character in a simulation to a robot that operates in a real environment.