Research Interests

Research Interests

Behavior Prediction for Autonomous Vehicles

PhD dissertation title: Probabilistic Framework for Behavior Characterization of Traffic Participants Enabling Long Term Prediction

Driving in urban and other complex traffic environments requires an understanding of how the traffic participants around are behaving. Developed an interaction-aware probabilistic framework for autonomous vehicles that utilizes the driving style of the observed traffic participants (IEEE CAVs 2019 paper below) for long-term behavior prediction. The framework is based on the premise that the driving style (aggressive, passive, cooperative, etc.) of an observed participant can be identified by monitoring the manner in which they are driving and can be utilized in predicting their subsequent behaviors. The resulting algorithm uses Multiple Model Adaptive Kalman Filters improving the tracking as well as behavior detection times compared to the IMM filters. Performed data-analysis on highD and NGSIM datasets for validating portions of the framework. Future steps include extending the framework for POMDPs and Reinforcement Learning.

  • Compared Autonomous Multiple Model (AMM) and Interacting Multiple Model (IMM) Kalman Filter algorithms for behavior identification
  • Explored various non-linear as well as linear motion models with IMM and AMM; evaluated the models with real-world traffic datasets (NGSIM, highD)
  • Represented the traffic participant as a Hierarchical Dynamic Bayesian Network (HDBN) and implemented it by extending the IMM algorithm. Comparison with the traditional IMM shows improvements in detection times up to a second for the identified scenarios.
  • Developed the code for Extended Kalman Filters, AMM, IMM, HDBN and the evaluation with real-world datasets from scratch with Object Oriented Programming principles (Matlab and Python). Code to be open sourced soon.

Publications

  • PhD Dissertation: Gill, Jasprit Singh, "Probabilistic Framework for Behavior Characterization of Traffic Participants Enabling Long Term Prediction" (2019). All Dissertations. 2509. (link)
  • Jasprit Singh Gill, Pierluigi Pisu, Matthias J. Schmid, "A Probabilistic Framework for Trajectory Prediction in Traffic utilizing Driver Characterization" (2019). IEEE Connected and Automated Vehicle Symposium 2019. (link)
  • Jasprit Singh Gill, Pierluigi Pisu, Venkat Krovi, Matthias J. Schmid, "Behavior Identification and Prediction for a Probabilistic Risk Framework" (2019). Dynamic Systems and Control Conference 2019. (link)

Work Experience

CUICAR – Software Architect for Autonomous Vehicle Platform

May 2015 – Aug 2017

Autonomous Mobility Motionboard is a result of the Deep Orange 8 project at CUICAR. The Motionboard is a full scale mobility concept for the year 2025 that has traction, braking, steering, energy storage, charging and autonomous driving. At the time of development, Clemson did not have the software stack for autonomous vehicle and its automotive engineering department had little expertise with software development.

Tasks involved designing and developing a modular as well as scalable system architecture for the concept autonomous vehicle, and mentoring the team for building programming skills.

The responsibilities led to following activities:

  • reviewed the state of the art of software and hardware architecture for autonomous vehicles
  • designed a Robot Operating System (ROS) and MATLAB/Simulink based scalable software architecture for a linux (Nvidia DRIVE PX2) and dSPACE platform respectively
  • scaled up on deep learning and computer vision for perception
  • identified the various algorithms used at perception, planning and control stages of the vehicle
  • Interfaced IMU (Xsens), GPS (SwiftNav Piksi and Multi), cameras (PointGrey), depth camera (ZED, PointGrey) and lidar (Quanergy M8) to ROS on NVIDIA DRIVE PX2
  • programmed the software skeleton in C++/Python over ROS; enabled socket based communications between ROS, unity and simulink for evaluation with CarSim and Unity
  • mentored a team of 6 to develop algorithms in Python on ROS
  • worked with the power management team to spec out the power requirements for autonomous systems and design the electrical architecture
  • Built the wiring harness for autonomous systems

Clemson has an indigenous autonomous vehicle architecture as a result of the Deep Orange 8 project. The functionality developed was demonstrated on a retrofitted Nissan Leaf (see the video below). The architecture also inspired the Deep Orange 10 autonomous vehicle software stack. The architecture was also adapted to scaled autonomous cars (see below).

Autonomous steering in a Nissan Leaf

Sensors used: PointGrey cameras, Xsens IMU, SwiftNav GPS, Nissan Leaf retrofitted with steering modifications

Autonomous Mobility Motionboard

The built Deep Orange 8 vehicle being tested on a Chassis Dyno at CUICAR

CUICAR – Software Architect for Scaled Autonomous Vehicles

Aug 2017 - Mar 2018

Designed a software architecture for scaled autonomous cars that educates students about different planning and control algorithms by hands-on learning and enables rapid deployment of newly developed algorithms. Programming was in Python for ROS, the scaled cars used a Hokuyo LiDAR and an IMU.

CUICAR – Software Architect for Robots in Manufacturing

Mar 2018 – Mar 2019

The automotive industry has seen significant incorporation of automation in the low variation part of the manufacturing process (body shop, paint shop). However, in automotive final assembly, operations are largely manual due to variability, unstructured environment and significant uncertainty of tasks. Smart Companion Robot (SCR) is an ARM Institute funded initiative to demonstrate the viability of an intelligent mobile manipulator that assists and augments a human worker in automotive final assembly.

Tasks involved evaluation of perception as well as planning capabilities of industry grade mobile manipulator robots, and identifying the technological challenges that need to be addressed before deploying them in automotive assembly environments.

The responsibilities focused on long term autonomy with following tasks:

  • Python based programing on Robot Operating System (ROS) based mobile robots - Clearpath OTTO 1500, Clearpath Ridgeback and Fetch (simulated) by Fetch Robotics
  • theoretical review of SLAM (simultaneous localization and mapping) and navigation fundamentals
  • configuring different localization/SLAM algorithms (AMCL, gmapping, KartoSLAM, Cartographer) and tuning the ROS navigation stack on ROS based mobile robots
  • benchmarking the navigation capabilities of the planners in the ROS Navigation stack
  • developing online map updating in a changing environment for long term autonomy

Programmed mobile robots for time consistency and identified that further efforts are needed to develop time consistent planners for a time-sensitive automotive manufacturing environment.

Torsion Bar assembly demo with SCR

Robot used is Yaskawa YMR12 Mobile Manipulator - Yaskawa MH12 manipulator on the Clearpath OTTO 1500 mobile base.

Dynamic Obstacle Avoidance

Clearpath Ridgeback configured with low speed moving obstacle avoidance for industrial environment.

Dynamic Map updating

Online map updating scenario demonstrated in a simulated Gazebo environment with a simulated Fetch robot. Changes in environment lead to time inconsistent operation and can be addressed by online map updating.

CUICAR – EMC and Connected Vehicle Engineer

Aug 2012 – Sep 2015

Evaluation of magnetic and electric field exposures for Oak Ridge National Laboratory developed stationary and quasi-dynamic wireless charging system as a part of Department of Energy FOA667. Enabled dedicated short-range communication (DSRC) based wireless communication between the wireless charging system receiver and base station for electric vehicles using C++.

Wipro Technologies Ltd. – Project Manager (last held position)

Oct 2005 – Dec 2011

Specialist and Project lead for voice over IP communications on VxWorks and Linux platform on 32 bit microprocessors. Programming language used – C and C++. Team size – 12. Responsibilities included interactions with the clients through conference calls, requirements gathering and analysis, planning and estimation, design and distribution of work, implementation and releasing the binary images for system verification. Managed a team of 12 software engineers for Customer Escalations on IP Phones. Client interface at New Jersey for 9 months as a specialist. Development on C, C++ over VxWorks RTOS for Avaya IP phones. Consultant for mobile applications on Apple iOS devices. Posted at one of the clients at Bay Area, California for 1.5 months.

Embedded Software – Team Lead

Dec 2003 – Oct 2005

Led the firmware development activities for 3 different weight based digital process controllers. Platform used was C Language with Keil IDE. Interfaced 8051 microcontrollers with ADC (AD7730) and DAC (AD420) using SPI, with EEPROM using I2C and also with LEDs and LCDs. Team size = 3. Responsibilities included requirements gathering and analysis, estimation, designing, distribution of work, implementation and developer unit testing.