Search

Brian Plancher
  • Home
  • Projects
  • Teaching
  • Publications
  • Outreach
  • Office Hours
  • CV
  • A²R Lab
Avatar

Brian Plancher

bplancher@barnard.edu

Barnard College, Columbia University

He/Him/His

Biography

I am an Assistant Professor of Computer Science at Barnard College, Columbia University where I lead the Accessible and Accelerated Robotics Lab (A²R Lab). I am also a co-chair for the Tiny Machine Learning Open Education Initiative (TinyMLedu) and an associate 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 research ways to better understand and improve diversity, equity, inclusion, and belonging in STEM education globally, as well as design and teach 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 Poster Slides Video DOI 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-BC3159-SP23: Parallel Optimization for Robotics

Instructor of Record
Many stages of state-of-the-art robotics pipelines rely on the solutions of underlying optimization algorithms. Unfortunately, many of these approaches rely on simplifications and conservative approximations in order to reduce their computational complexity and support online operation. At the same time, parallelism has been used to significantly increase the throughput of computationally expensive algorithms across the field of computer science. And, with the widespread adoption of parallel computing platforms such as GPUs, it is natural to consider whether these architectures can benefit robotics researchers interested in solving computationally constrained problems online. This course will provide students with an introduction to both parallel programming on CPUs and GPUs as well as optimization algorithms for robotics applications. It will then dive into the intersection of those fields through case studies of recent state-of-the-art research and culminate in a team-based final project.

COMS-BC3997-SP23: Projects in Computer Science

Instructor of Record
This course is designed to explore topics and skills needed for the successful completion of large computer science projects. This will be done through a mix of lecture and group work led by both the course instructor as well as guest instructors from both industry and academia. Students will exercise their development of these skills by applying them in the context of a project. For Spring 2023, students are expected to bring a project to the course. The course staff will be able to provide general support for projects but may not have the technical expertise to support projects in depth. As such, these projects will ideally already have a (technical) mentor or client sponsor who can support the student. To document their projects and begin to build their personal portfolio, students will (learn how to and) develop a website, report, and presentation about both the final result of their project as well as the journey taken.

COMS-BC3997-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.

Privacy

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

Cite
Copy Download