Computational co-optimization of design parameters and motion trajectories for robotic systems

Sehoon Ha, Stelian Coros, Alexander Alspach, Joohyung Kim, Katsu Yamane

Research output: Contribution to journalArticle

Abstract

We present a novel computational approach to optimizing the morphological design of robots. Our framework takes as input a parameterized robot design as well as a motion plan consisting of trajectories for end-effectors and, optionally, for its body. The algorithm optimizes the design parameters including link lengths and actuator placements whereas concurrently adjusting motion parameters such as joint trajectories, actuator inputs, and contact forces. Our key insight is that the complex relationship between design and motion parameters can be established via sensitivity analysis if the robot’s movements are modeled as spatiotemporal solutions to an optimal control problem. This relationship between form and function allows us to automatically optimize the robot design based on specifications expressed as a function of actuator forces or trajectories. We evaluate our model by computationally optimizing four simulated robots that employ linear actuators, four-bar linkages, or rotary servos. We further validate our framework by optimizing the design of two small quadruped robots and testing their performances using hardware implementations.

Original languageEnglish (US)
Pages (from-to)1521-1536
Number of pages16
JournalInternational Journal of Robotics Research
Volume37
Issue number13-14
DOIs
StatePublished - Dec 1 2018
Externally publishedYes

Keywords

  • Legged robots
  • mechanism design
  • motion control

ASJC Scopus subject areas

  • Software
  • Modeling and Simulation
  • Mechanical Engineering
  • Electrical and Electronic Engineering
  • Artificial Intelligence
  • Applied Mathematics

Fingerprint Dive into the research topics of 'Computational co-optimization of design parameters and motion trajectories for robotic systems'. Together they form a unique fingerprint.

  • Cite this