Brandon Amos
Research Scientist
Facebook AI (FAIR)


I am a research scientist at Facebook AI (FAIR) in NYC and study foundational topics in machine learning and optimization, recently involving reinforcement learning, control, optimal transport, and geometry. My research is on learning systems that understand and interact with our world and focuses on integrating structural information and domain knowledge into these systems to represent non-trivial reasoning operations. A key theme of my work in this space involves the use of optimization as a differentiable building block in larger architectures that are end-to-end learned. I believe that science should be open and reproducible and freely publish my research code to GitHub.


Ph.D. in Computer Science, Carnegie Mellon University (0.00/0.00)

Differentiable Optimization-Based Modeling for Machine Learning
Advisors: J. Zico Kolter (2016 - 2019), Mahadev Satyanarayanan (2014 - 2016)

2014 - 2019
B.S. in Computer Science, Virginia Tech (3.99/4.00)
2011 - 2014

Research Internships

Intel Labs, Santa Clara (Host: Vladlen Koltun)


Google DeepMind, London (Hosts: Misha Denil and Nando de Freitas)


Adobe Research, San Jose (Host: David Tompkins)


Honors & Awards

NSF Graduate Research Fellowship 2016 - 2019
Nine undergraduate scholarships

Roanoke County Public Schools Engineering, Salem-Roanoke County Chamber of Commerce, Papa John's, Scottish Rite of Freemasonry, VT Intelligence Community Conter for Academic Excellence, VT Pamplin Leader, VT Benjamin F. Bock, VT Gay B. Shober, VT I. Luck Gravett

2011 - 2014


Representative publications that I am a primary author on are highlighted.
[Google Scholar]


Cross-Domain Imitation Learning via Optimal Transport
Arnaud Fickinger, Samuel Cohen, Stuart Russell, and Brandon Amos
ICLR 2022
[1] [abs]


On the model-based stochastic value gradient for continuous reinforcement learning
Brandon Amos, Samuel Stanton, Denis Yarats, and Andrew Gordon Wilson
L4DC 2021 (Oral)
[2] [abs] [code] [slides]
Riemannian Convex Potential Maps
Samuel Cohen*, Brandon Amos*, and Yaron Lipman
ICML 2021
[3] [abs] [code] [slides]
CombOptNet: Fit the Right NP-Hard Problem by Learning Integer Programming Constraints
Anselm Paulus, Michal Rolínek, Vít Musil, Brandon Amos, and Georg Martius
ICML 2021
[4] [abs] [code]
Scalable Online Planning via Reinforcement Learning Fine-Tuning
Arnaud Fickinger, Hengyuan Hu, Brandon Amos, Stuart Russell, and Noam Brown
NeurIPS 2021
[5] [abs]
Aligning Time Series on Incomparable Spaces
Samuel Cohen, Giulia Luise, Alexander Terenin, Brandon Amos, and Marc Peter Deisenroth
[6] [abs] [code] [slides]
Learning Neural Event Functions for Ordinary Differential Equations
Ricky T. Q. Chen, Brandon Amos, and Maximilian Nickel
ICLR 2021
[7] [abs] [code]
Neural Spatio-Temporal Point Processes
Ricky T. Q. Chen, Brandon Amos, and Maximilian Nickel
ICLR 2021
[8] [abs] [code]
Improving Sample Efficiency in Model-Free Reinforcement Learning from Images
Denis Yarats, Amy Zhang, Ilya Kostrikov, Brandon Amos, Joelle Pineau, and Rob Fergus
AAAI 2021
[9] [abs] [code]
Neural Fixed-Point Acceleration for Convex Optimization
Shobha Venkataraman* and Brandon Amos*
ICML AutoML 2021
[10] [abs] [code]
Sliced Multi-Marginal Optimal Transport
Samuel Cohen, Alexander Terenin, Yannik Pitcan, Brandon Amos, Marc Peter Deisenroth, and K S Sesh Kumar
NeurIPS OTML 2021
[11] [abs]
Input Convex Gradient Networks
Jack Richter-Powell, Jonathan Lorraine, and Brandon Amos
NeurIPS OTML 2021
[12] [abs]
Imitation Learning from Pixel Observations for Continuous Control
Samuel Cohen, Brandon Amos, Marc Peter Deisenroth, Mikael Henaff, Eugene Vinitsky, and Denis Yarats
NeurIPS DeepRL 2021
[13] [abs]
MBRL-Lib: A Modular Library for Model-based Reinforcement Learning
Luis Pineda, Brandon Amos, Amy Zhang, Nathan Lambert, and Roberto Calandra
arXiv 2021
[14] [abs] [code]


The Differentiable Cross-Entropy Method
Brandon Amos and Denis Yarats
ICML 2020
[15] [abs] [code] [slides]
Objective Mismatch in Model-based Reinforcement Learning
Nathan Lambert, Brandon Amos, Omry Yadan, and Roberto Calandra
L4DC 2020
[16] [abs]
QNSTOP: Quasi-Newton Algorithm for Stochastic Optimization
Brandon Amos, David Easterling, Layne T. Watson, William Thacker, Brent Castle, and Michael Trosset
[17] [abs] [code]
Neural Potts Model
Tom Sercu, Robert Verkuil, Joshua Meier, Brandon Amos, Zeming Lin, Caroline Chen, Jason Liu, Yann LeCun, and Alexander Rives
MLCB 2020
[18] [abs]
Deep Riemannian Manifold Learning
Aaron Lou, Maximilian Nickel, and Brandon Amos
NeurIPS Geo4dl 2020
[19] [abs]


Differentiable Optimization-Based Modeling for Machine Learning
Brandon Amos
Ph.D. Thesis 2019
[20] [abs] [code]
Differentiable Convex Optimization Layers
Akshay Agrawal*, Brandon Amos*, Shane Barratt*, Stephen Boyd*, Steven Diamond*, and J. Zico Kolter*
NeurIPS 2019
[21] [abs] [code]
The Limited Multi-Label Projection Layer
Brandon Amos, Vladlen Koltun, and J. Zico Kolter
arXiv 2019
[22] [abs] [code]
Generalized Inner Loop Meta-Learning
Edward Grefenstette, Brandon Amos, Denis Yarats, Phu Mon Htut, Artem Molchanov, Franziska Meier, Douwe Kiela, Kyunghyun Cho, and Soumith Chintala
arXiv 2019
[23] [abs] [code]


Learning Awareness Models
Brandon Amos, Laurent Dinh, Serkan Cabi, Thomas Rothörl, Sergio Gómez Colmenarejo, Alistair Muldal, Tom Erez, Yuval Tassa, Nando de Freitas, and Misha Denil
ICLR 2018
[24] [abs]
Differentiable MPC for End-to-end Planning and Control
Brandon Amos, Ivan Dario Jimenez Rodriguez, Jacob Sacks, Byron Boots, and J. Zico Kolter
NeurIPS 2018
[25] [abs] [code]
Depth-Limited Solving for Imperfect-Information Games
Noam Brown, Tuomas Sandholm, and Brandon Amos
NeurIPS 2018
[26] [abs]
Enabling Live Video Analytics with a Scalable and Privacy-Aware Framework
Junjue Wang, Brandon Amos, Anupam Das, Padmanabhan Pillai, Norman Sadeh, and Mahadev Satyanarayanan
[27] [abs]


OptNet: Differentiable Optimization as a Layer in Neural Networks
Brandon Amos and J. Zico Kolter
ICML 2017
[28] [abs] [code] [slides]
Input Convex Neural Networks
Brandon Amos, Lei Xu, and J. Zico Kolter
ICML 2017
[29] [abs] [code] [slides]
Task-based End-to-end Model Learning
Priya L. Donti, Brandon Amos, and J. Zico Kolter
NeurIPS 2017
[30] [abs] [code]
Quasi-Newton Stochastic Optimization Algorithm for Parameter Estimation of a Stochastic Model of the Budding Yeast Cell Cycle
Minghan Chen, Brandon Amos, Layne T. Watson, John Tyson, Yang Cao, Cliff Shaffer, Michael Trosset, Cihan Oguz, and Gisella Kakoti
[31] [abs]
You can teach elephants to dance: agile VM handoff for edge computing
Kiryong Ha, Yoshihisa Abe, Thomas Eiszler, Zhuo Chen, Wenlu Hu, Brandon Amos, Rohit Upadhyaya, Padmanabhan Pillai, and Mahadev Satyanarayanan
SEC 2017
[32] [abs]
An Empirical Study of Latency in an Emerging Class of Edge Computing Applications for Wearable Cognitive Assistance
Zhuo Chen, Wenlu Hu, Junjue Wang, Siyan Zhao, Brandon Amos, Guanhang Wu, Kiryong Ha, Khalid Elgazzar, Padmanabhan Pillai, Roberta Klatzky, Daniel Siewiorek, and Mahadev Satyanarayanan
SEC 2017
[33] [abs]
A Scalable and Privacy-Aware IoT Service for Live Video Analytics
Junjue Wang, Brandon Amos, Anupam Das, Padmanabhan Pillai, Norman Sadeh, and Mahadev Satyanarayanan
ACM MMSys 2017 (Best Paper)
[34] [code]


OpenFace: A general-purpose face recognition library with mobile applications
Brandon Amos, Bartosz Ludwiczuk, and Mahadev Satyanarayanan
CMU 2016
[35] [abs] [code]
Collapsed Variational Inference for Sum-Product Networks
Han Zhao, Tameem Adel, Geoff Gordon, and Brandon Amos
ICML 2016
[36] [abs]
Quantifying the impact of edge computing on mobile applications
Wenlu Hu, Ying Gao, Kiryong Ha, Junjue Wang, Brandon Amos, Zhuo Chen, Padmanabhan Pillai, and Mahadev Satyanarayanan
[37] [abs]
Privacy mediators: helping IoT cross the chasm
Nigel Davies, Nina Taft, Mahadev Satyanarayanan, Sarah Clinch, and Brandon Amos
HotMobile 2016
[38] [abs]

2015 and earlier

Edge Analytics in the Internet of Things
Mahadev Satyanarayanan, Pieter Simoens, Yu Xiao, Padmanabhan Pillai, Zhuo Chen, Kiryong Ha, Wenlu Hu, and Brandon Amos
IEEE Pervasive Computing 2015
[39] [abs]
Bad Parts: Are Our Manufacturing Systems at Risk of Silent Cyberattacks?
Hamilton Turner, Jules White, Jaime A. Camelio, Christopher Williams, Brandon Amos, and Robert Parker
IEEE Security & Privacy 2015
[40] [abs]
Early Implementation Experience with Wearable Cognitive Assistance Applications
Zhuo Chen, Lu Jiang, Wenlu Hu, Kiryong Ha, Brandon Amos, Padmanabhan Pillai, Alex Hauptmann, and Mahadev Satyanarayanan
WearSys 2015
[41] [abs]
The Case for Offload Shaping
Wenlu Hu, Brandon Amos, Zhuo Chen, Kiryong Ha, Wolfgang Richter, Padmanabhan Pillai, Benjamin Gilbert, Jan Harkes, and Mahadev Satyanarayanan
HotMobile 2015
[42] [abs]
Are Cloudlets Necessary?
Ying Gao, Wenlu Hu, Kiryong Ha, Brandon Amos, Padmanabhan Pillai, and Mahadev Satyanarayanan
CMU 2015
[43] [abs]
Adaptive VM handoff across cloudlets
Kiryong Ha, Yoshihisa Abe, Zhuo Chen, Wenlu Hu, Brandon Amos, Padmanabhan Pillai, and Mahadev Satyanarayanan
CMU 2015
[44] [abs]
Global Parameter Estimation for a Eukaryotic Cell Cycle Model in Systems Biology
Tricity Andrew, Brandon Amos, David Easterling, Cihan Oguz, William Baumann, John Tyson, and Layne T. Watson
SummerSim 2014
[45] [abs]
Applying machine learning classifiers to dynamic Android malware detection at scale
Brandon Amos, Hamilton Turner, and Jules White
IWCMC 2013
[46] [abs] [code]


facebookresearch/theseus | 203 | Differentiable non-linear optimization library 2022
facebookresearch/mbrl-lib | 547 | Model-based reinforcement learning library 2021
facebookresearch/dcem | 96 | The Differentiable Cross-Entropy Method 2020
facebookresearch/higher | 1.3k | PyTorch higher-order gradient and optimization library 2019
bamos/thesis | 259 | Ph.D. Thesis LaTeX source code 2019
cvxgrp/cvxpylayers | 1.2k | Differentiable Convex Optimization Layers 2019
locuslab/mpc.pytorch | 512 | Differentiable Model-Predictive Control 2018
locuslab/icnn | 233 | Input Convex Neural Networks 2017
locuslab/optnet | 377 | OptNet experiments 2017
locuslab/qpth | 513 | Differentiable PyTorch QP solver 2017
bamos/densenet.pytorch | 735 | PyTorch DenseNet implementation 2017
bamos/block | 259 | Intelligent block matrix constructions 2017
bamos/setGPU | 98 | Automatically use the least-loaded GPU 2017
bamos/dcgan-completion.tensorflow | 1.3k | Image completion with GANs 2016
cmusatyalab/openface | 14.3k | Face recognition with deep neural networks 2015
bamos/zsh-history-analysis | 169 | Analyze and plot your zsh history 2014
bamos/cv | 339 | Source for this CV: Creates LaTeX/Markdown from YAML/BibTeX 2013
bamos/dotfiles | 233 | Linux, mutt, xmonad, vim, emacs, zsh 2012

Invited Talks

Columbia University 2021
IBM Research 2021
Max Planck Institute for Intelligent Systems (Tübingen) Seminar 2020
Montreal Institute for Learning Algorithms Seminar 2020
ECCV Deep Declarative Networks Tutorial 2020
CVPR Deep Declarative Networks Workshop 2020
Caltech CS 159, Guest Lecture 2020
SIAM MDS Minisymposium on Learning Parameterized Energy Minimization Models 2020
New York University CILVR Seminar 2019
INFORMS Session on Prediction and Optimization 2019
Facebook AI Research 2019
ISMP Session on Machine Learning and Optimization 2018
Google Brain 2018
Bosch Center for AI 2018
Waymo Research 2018
Tesla AI 2018
NVIDIA Robotics 2018
Salesforce Research 2018
OpenAI 2018
UC Berkeley 2018

Interns and Students

Eugene Vinitsky (visiting FAIR from Berkeley) 2021 - 2022
Arnaud Fickinger (visiting FAIR from Berkeley) 2021 - 2022
Samuel Cohen (visiting FAIR from UCL) 2021 - 2022
Aaron Lou (visiting FAIR from Cornell and Stanford) 2020 - 2022
Ricky Chen (visiting FAIR from Toronto, now: scientist at FAIR) 2020
Paul Liang (visiting FAIR from CMU) 2020
Phillip Wang (at CMU, now: CEO at Gather) 2018

Professional Activities


*Outstanding reviewer

NeurIPS Learning Meets Combinatorial Optimization Workshop Organizer 2020
CVPR Deep Declarative Workshop Organizer 2020
ECCV Deep Declarative Tutorial Organizer 2020
CMU CSD MS Admissions 2014 - 2015


Graduate AI (CMU 15-780), TA S2017
Distributed Systems (CMU 15-440/640), TA S2016
Software Design and Data Structures (VT CS2114), TA S2013


Programming C, C++, Fortran, Haskell, Java, Lua, Make, Mathematica, Python, R, Scala
Frameworks JAX, NumPy, Pandas, PyTorch, SciPy, TensorFlow, Torch7
Tools Linux, emacs, vim, evil, org, mu4e, xmonad, git, tmux, zsh

Last updated on 2022-01-21