Search

Brian Plancher
  • Home
  • Projects
  • Teaching
  • Publications
  • Outreach
  • CV
Avatar

Brian Plancher

bplancher@barnard.edu

Barnard College, Columbia University

Biography

I am an incoming Assistant Professor of Computer Science at Barnard College, Columbia University, co-chair of TinyMLedu, and junior co-chair for the IEEE RAS TC on Model Based Optimization for Robotics.

My research is focused on developing and implementing open-source algorithms for dynamic motion planning and control of robots by exploiting both the mathematical structure of algorithms and the design of computational platforms. As such, my research is at the intersection of Robotics and Computer Architecture, Embedded Systems, Numerical Optimization, and Machine Learning.

I also want to improve the accessibility of STEM education. I enjoy teaching and designing new interdisciplinary, project-based, open-access courses that lower the barrier to entry of cutting edge topics like robotics and embedded machine learning.

I enjoy spending my free time with my wife, daughter, and puppy, and ski racing in the winters.

Interests

  • Realtime Optimal Control
  • Parallel Computing on CPUs, GPUs and FPGAs
  • Robot Locomotion and Manipulation
  • Embedded Machine Learning
  • STEM Education

Education

  • PhD in Robotics, 2022

    Harvard University

  • MEng in Robotics, 2018

    Harvard University

  • Advanced Study Non-Degree Student, 2016

    Massachussets Institute of Technology (MIT)

  • BA in Computer Science, 2013

    Harvard University

Featured Publications

GRiD: GPU-Accelerated Rigid Body Dynamics with Analytical Gradients

We introduce and release GRiD, an open-source, GPU-accelerated library for computing rigid body dynamics with analytical gradients. GRiD was designed to accelerate nonlinear trajectory optimization through optimized code generation, GRiD provides as much as a 7.2x speedup over a state-of-the-art, multi-threaded CPU implementation and maintains as much as a 2.5x speedup when accounting for I/O overhead.
Brian Plancher , Sabrina M. Neuman , Radhika Ghosal , Scott Kuindersma , Vijay Janapa Reddi
PDF Code Video Benchmark Experiments

Robomorphic Computing: A Design Methodology for Domain-Specific Accelerators Parameterized by Robot Morphology

We introduce robomorphic computing; a methodology to transform robot morphology into a customized hardware accelerator morphology. In this work, we (i) present this design methodology; (ii) use the methodology to generate a parameterized accelerator design for the gradient of rigid body dynamics; (iii) evaluate FPGA and synthesized ASIC implementations; and (iv) describe how the design can be automatically customized for other robot models. Our FPGA accelerator achieves speedups of 8x and 86x over CPU and GPU latency, and maintains an overall speedup of 1.9x to 2.9x deployed in an end-to-end coprocessor system. ASIC synthesis indicates an additional factor of 7.2x.
Sabrina M. Neuman , Brian Plancher , Thomas Bourgeat , Thierry Tambe , Srini Devadas , Vijay Janapa Reddi
PDF Slides Video DOI Extended Abstract

Accelerating Robot Dynamics Gradients on a CPU, GPU, and FPGA

In this paper, we detail the designs of three faster than state-of-the-art implementations of the gradient of rigid body dynamics on a CPU, GPU, and FPGA. Our optimized FPGA and GPU implementations provide as much as a 3.0x end-to-end speedup over our optimized CPU implementation by refactoring the algorithm to exploit its computational features, e.g., parallelism at different granularities.
Brian Plancher , Sabrina M. Neuman , Thomas Bourgeat , Scott Kuindersma , Srini Devadas , Vijay Janapa Reddi
PDF Code Slides Video DOI

Realtime Model Predictive Control using Parallel DDP on a GPU

In this extended abstract we extend our previous work by using our Parallel DDP implementation for MPC on a physical Kuka arm. We demonstrated the feasibility of this approach in the presence of model discrepancies and communication delays between the robot and GPU and found that higher control rates generally lead to better tracking performance across a range of parallelization options.
Brian Plancher , Scott Kuindersma
PDF Code Poster Video

Featured Courses

COMS-3997-F22: Introduction to Robotics Engineering from Bits to Electrons

Instructor of Record
Robots are cyber-physical systems – leveraging computational intelligence to sense and interact with the real world. As such, robotics is a very diverse, cross-disciplinary field. This introductory course exposes learners to the vast opportunities and challenges posed by the interdisciplinary nature of robotics. While grounded and focused in computation this course also explores hands-on electromechanical and ethical topics that are an integral part of a real-world robotic system. Topics will include: a survey of the algorithmic robotics pipeline (perception, mapping, localization, planning, control, and learning), an introduction to cyber-physical system design, and responsible AI. The course will culminate in a team-based final project.

HarvardX: Tiny Machine Learning MOOC

Teaching Staff Lead
In this exciting Professional Certificate program offered by Harvard University and Google TensorFlow, you will learn about the emerging field of Tiny Machine Learning (TinyML), its real-world applications, and the future possibilities of this transformative technology. TinyML is a cutting-edge field that brings the transformative power of machine learning (ML) to the performance-constrained and power-constrained domain of embedded systems. The program will emphasize hands-on experience and is a collaboration between expert faculty at Harvard’s John A. Paulson School of Engineering and Applied Sciences (SEAS) and innovative members of Google’s TensorFlow team.
Course White Paper MOOC Website Course Materials TinyML Open Education Initiative Discourse Forum

Harvard CS249r: Special Topics in Edge Computing - Autonomous Machines

Head Teaching Fellow (Head TA)
Derek Bok Center Distinction in Teaching Award
Modern embedded systems are intelligent devices that involve complex hardware and software to perform a multitude of cognitive functions collaboratively. Designing such systems requires us to have deep understanding of the target application domains, as well as an appreciation for the coupling between the hardware and the software subsystems.This course is structured around building “systems” for Autonomous Machines (cars, drones, ground robots, manipulators, etc.). For example, we will discuss what are all the hardware and software components that are involved in developing the intelligence required for an autonomous car?
Syllabus Paper List Nuts & Bolts and Robotics Intro Lecture Slides

© 2022 Brian Plancher · Powered by the Academic theme for Hugo.

Cite
Copy Download