Nitin Kamra
Ph.D. Student in Machine Learning
University of Southern California


I am a Ph.D. Student in the Computer Science Department at University of Southern California (USC). I work with Prof. Yan Liu in Melady Lab on Artificial General Intelligence and Machine Learning.

I also have interest in studying adversarial game theory and work in collaboration with Prof. Milind Tambe (Teamcore group, USC) and Prof. Fei Fang (CMU) on finding optimal strategies for Stackelberg Security Games with Deep Learning.

Previously, I have also worked with Prof. Nora Ayanian in the ACT Lab at USC. Here, my work was on multirobot coordination and on developing planning algorithms for efficient resource delivery.

Before this, I attended Indian Institute of Technology, Delhi where I got my undergraduate degree in Electrical Engineering. My primary focus was on Control Theory and Signal Processing and I was advised by Prof. Shouribrata Chatterjee .
I was also the Technical Secretary of Electrical Engineering Society at IIT Delhi (Aug 2012 - Aug 2013) and served as the General Secretary of the Electronics Club (August 2013 - May 2014) during my final year.

I am originally from New Delhi, India. I started my Ph.D. in Spring 2015 and currently live in Los Angeles, California.

Research Interests

My primary interest lies in understanding "understanding" itself. I want to figure out how the human mind works.

I work with Reinforcement Learning and Deep Learning to model agents capable of autonomous planning and learning. My goal is to develop structures and algorithms which would mimic human intelligence and would allow artificial agents to achieve at least the same level of understanding as humans.

My desire to understand the structure of intelligence has exposed me to Machine Learning, Psychology and Neuroscience although being a computer scientist, I have always focused more on the computational aspects of learning and intelligence.

I also work with adversarial game theory and develop algorithms to learn optimal strategies in Stackelberg Security Games. Previously, I have also worked with path planning and scheduling algorithms for autonomous Multirobot Resource Delivery Systems.


Deep Generative Dual Memory Network for Continual Learning
Neural networks can learn multiple tasks when trained on them jointly, but lose performance on previously learnt tasks when tasks arrive sequentially. This phenomenon called catastrophic forgetting is a fundamental challenge to overcome before neural networks can learn continually from incoming data. In this work, we derive inspiration from human memory to develop an architecture capable of learning continuously from sequentially incoming tasks, while averting catastrophic forgetting. Specifically, our contributions are: (i) a dual memory architecture emulating the complementary learning systems (hippocampus and the neocortex) in the human brain, (ii) memory consolidation via generative replay of past experiences, (iii) demonstrating advantages of generative replay and dual memories via experiments, and (iv) improved performance retention on challenging tasks even for low capacity models. Our architecture displays many characteristics of the mammalian memory and provides insights on the connection between sleep and learning.
Nitin Kamra, Umang Gupta and Yan Liu
Policy Learning for Continuous Space Security Games using Neural Networks
In this paper, we consider a continuous space security game model with infinite-size action sets for players and present a novel deep learning based approach to extend the existing toolkit for solving security games. Specifically, we present (i) OptGradFP, a novel and general algorithm that searches for the optimal defender strategy in a parameterized continuous search space, and can also be used to learn policies over multiple game states simultaneously; (ii) OptGradFP-NN, a convolutional neural network based implementation of OptGradFP for continuous space security games. We demonstrate the potential to predict good defender strategies via experiments and analysis of OptGradFP and OptGradFP-NN on discrete and continuous game settings.
Nitin Kamra, Umang Gupta, Fei Fang, Yan Liu and Milind Tambe
Thirty-Second AAAI Conference on Artificial Intelligence, February 2018
Handling Continuous Space Security Games with Neural Networks
In this paper we propose: (i) a continuous space security game model that considers infinite-size action spaces for players; (ii) OptGradFP, a novel and general algorithm that searches for the optimal defender strategy in a parametrized search space; (iii) OptGradFP-NN, a convolutional neural network based implementation of OptGradFP for continuous space security games; (iv) experiments and analysis with OptGradFP-NN.
Nitin Kamra, Fei Fang, Debarun Kar, Yan Liu and Milind Tambe
IJCAI International Workshop on A.I. in Security (IWAISe), August 2017
DynGEM: Deep Embedding Method for Dynamic Graphs
In this work, we present an efficient algorithm, namely DynGEM, based on a deep autoencoder which produces embeddings for graphs evloving in time, in order to perform tasks like graph visualization, link prediction and node classification etc. The major advantages of DynGEM include: (1) the embedding is stable over time, (2) it can handle growing dynamic graphs, and (3) it has better running time than using static embedding methods on each snapshot of a dynamic graph. We test DynGEM on a variety of tasks including graph visualization, graph reconstruction, link prediction and anomaly detection (on both synthetic and real datasets). Experimental results demonstrate the superior stability and scalability of our approach.
Nitin Kamra*, Palash Goyal*, Xinran He and Yan Liu
IJCAI International Workshop on Representation Learning for Graphs (ReLiG), August 2017
Combinatorial Problems in Multi-Robot Battery Exchange Systems
This paper addresses combinatorial problems that arise in multi-robot battery exchange systems. Our multi-robot systems are characterized by two types of robots: (a) task robots that provide services at requested locations; and (b) delivery robots that deliver charged batteries to task robots when required. Combinatorial problems arising in these systems involve multiple aspects of resource scheduling and path planning and are at least as hard as the multiple TSP problem. We present several heuristic algorithms for solving these combinatorial problems, inspired by techniques from AI and approximation algorithms. We demonstrate performance in simulation and analyze scaling with size of the multi-robot system.
Nitin Kamra, T. K. Satish Kumar and Nora Ayanian
IEEE Transactions on Automation Science and Engineering (T-ASE), 2018
A mixed integer programming model for timed deliveries in multirobot systems
We present a solution that enables robots to operate in long-duration missions with minimal interruption for recharging or refreshing other resources. Consider a set of deployed "task robots" that request resources (e.g. batteries) from a distribution center, which can deploy "delivery robots" to fulfill those requests. We address the scheduling problem with multiple incoming time-bound requests from the task robots. Our proposed framework incorporates priorities on working robots that can be adjusted by a human operator during scheduling, since mission priorities can change over time. The framework allows a relaxed delivery schedule when available resources are scant and permits dynamic re-routing of delivery robots. The problem is posed as a variant of the Vehicle Routing Problem with Time Windows, and solved as a Mixed Integer Quadratic Program using a branch and bound based solver.
Nitin Kamra and Nora Ayanian
IEEE International Conference on Automation Science and Engineering (CASE), August 2015


Unsupervised correction of Cortana on repetitive queries
In preparation, coming soon.
Parallel Gradient Descent for Multilayer Feedforward Neural Networks
In this work, we implemented parallel gradient descent to train multilayer feedforward neural networks. Specifically, we analyzed two kinds of parallelization: (a) parallel processing of multiple training examples across several threads and (b) parallelizing matrix operations for a single training example. We implemented a serial minibatch gradient descent algorithm, its parallel multithreaded version (using Pthread library in C++), a BLAS parallelized version and a CUDA implementation on a GPU. All implementations were analyzed and compared for the speedup obtained across various network architectures and increasing problem sizes on the benchmark MNIST dataset Finally we compare our implementations to those using state-of-the-art computation graph library: Theano.
Nitin Kamra, Palash Goyal, Sungyong Seo and Vasilis Zois
Project, Spring 2016
RF-Based Relative Localization for Robot Swarms
We evaluated the radio signal strength indicator (RSSI) of an nRF5188 based robot swarm for relative localization. We presented an efficient way of high-speed data collection (upto 40K RSSI samples/sec), semi-automatic radio parameter selection and robot-assisted data collection methods. We visualized our collected data and its variance for select outdoor experiments. The data wass used to fit a novel power vs. log-distance model, which in turn provided the foundation for a centralized anchor-free localization algorithm. We presented a simple gradient descent based localization approach which is computationally simple, easily extensible to distributed swarms, and scales efficiently to large number of robots in a swarm.
Wolfgang Hoenig and Nitin Kamra
Project, Spring 2015
Predicting Rainfall with Polarimetric Radar Data
We explored a set of polarimetric radar data and rain gauge readings collected in the Midwestern US over several months, while aiming to improve existing rainfall prediction techniques with various supervised learning algorithms. We applied various preprocessing techniques, used Linear Regression and Neural Networks on summarized data and evaluated against the Marshall-Palmer baseline. This competition was sponsored by the Artificial Intelligence Committee of the American Meteorological Society and hosted by Kaggle here.
Nitin Kamra and James Preiss
Kaggle Competition, Fall 2015
Output Power Maximization in Energy Harvesting Applications
This project was my undergraduate thesis and focused on increasing the efficiency of an Energy Harvesting Integrated Circuit (EHIC) architecture being developed by Prof. Shouri Chatterjee’s team in the ICE group at IIT Delhi. The project consisted of two parts, spanning over one full year.
The first part was an exploratory step to evaluate the possibility of using a Discrete Time Parametric Amplifier (DTPA) for boosting the charging speed of a DC-DC converter in the EHIC. The DC-DC converter was explored and the functioning of the DTPA was thoroughly analyzed in simulations. Afterwards, I attempted to integrate the DTPA with the DC-DC converter to gain faster clocking rate and increase the charging speed of the output capacitor. However, in the end I managed to prove that the DTPA cannot give any appreciable gains in the harvesting performance, rather it would only cause deterioration.
The second part focused on maximum power point tracking for the Energy Harvesting IC. It involved developing an algorithm to track the frequency of charging cycles which would lead us to harness the maximum output power from the Energy source. I also implemented a digital controller to emulate the algorithm on-chip. To further minimize idle time between consecutive charge cycles, the algorithm was improved to incorporate charging from three independent sources in parallel, while sharing the charging infrastructure and carefully arbitrating between charging cycles. The algorithm was successfully demonstrated in simulations.
Nitin Kamra and Shouribrata Chatterjee
Undergraduate Thesis, 2014
ROSHNI: Indoor Navigation System for Visually Impaired
This project involved the design of an indoor navigation system for visually impaired people. This is a long-term ongoing project at Indian Institute of Technology, Delhi supervised by Prof. M. Balakrishnan. The project was initially started by Dhruv Jain and I joined the project in 2012 to improve the circuit design and sensing of infrared modules.
The navigation system relied on three essential modules:
  1. A wall-mounted module fixed at multiple points on the building's walls. It acted as a checkpoint for localizing the visually impaired person by transmitting infrared pulses containing its own location. Encountering this module gave the ground truth location of the navigating person to remove accumulated error in the current position estimate.
  2. A waist-worn module worn by the visually-impaired person. It contained an IR receiver (to obtain accurate location information from wall-mounted checkpoints), an inertial measurement unit (tracked person's movements, though inaccurate over time) and an arduino microcontroller(processed these sensor readings, transmitted them to an android application via bluetooth).
  3. An android application installed on the person's phone which helped him/her navigate around by getting location information from the waist-mounted module and giving voice instructions to navigate inside.
My contributions to the design are summarized below:
  • Implemented localization and step-detection algorithm on arduino microcontroller with error of about 1m in every 10m, rectified by IR check-points for precise localization.
  • Did complete circuit redesign of wall-mounted and waist-worn module to save on-board power, reduce wiring and facilitate very compact packaging.
  • Implemented programmable interfacing for wall-mounted modules to eliminate static locations and make them programmable through IR remote control.
  • Demonstrated system by blindfolding people and making them navigate through unknown corridors successfully.
Nitin Kamra, Devesh Singh, Dhruv Jain and M. Balakrishnan
Project, Spring 2012
Elementary Iterative Methods and the Conjugate Gradient Algorithm
I attended the Indo-German Winter Academy 2012, for which only about 50 students qualify in total from all major IITs in India and FAU Erlangen, Germany. I presented on "Elementary Iterative Methods and the Conjugate Gradient Algorithm" for solving non-linear optimization problems in the High Performance Computing track.
Nitin Kamra
Presentation, Dec 2012


  • Teaching Assistant for CSCI-567: Machine Learning, USC (Fall 2016)

  • Teaching Assistant for EEL301: Control Engg - I, IIT Delhi (Spring 2014)

  • Teaching Assistant for EEL201: Digital Electronics, IIT Delhi (Fall 2013)


  • November 2017: Deep Learning Best Theory Project Award, CSCI-599: Deep Learning, Fall 2017

  • August 2014: Viterbi Graduate Ph.D. Fellowship, University of Southern California

  • April 2013: Best Mentor Award, Awarded by Mentorship Review Committee, Indian Institute of Technology, Delhi

  • 2010: SOF 3rd International Mathematics Olympiad, International Rank 16, School Topper and Gold Medalist

  • 2010: SOF 12th National Science Olympiad, National Rank 45, School Topper and Gold Medalist

  • February 2009: FIITJEE Talent Reward Exam, Zonal Topper and Gold Medalist