Hardware Accelerators for Unmanned Aerial Vehicles MPC algorithms

Type of position: 
Master thesis
Short abstract: 
The proposed MSc internship's objective is to design HW accelerators for UAV MPC algorithms, with the goal of improving accuracy, performance, power consumption, and silicon area.
Description: 

Robots are physical agents that interact with their physical environment. Accordingly, their sensorimotor capabilities are essential and largely determine the activities that robots can perform. In recent years, great progress has been made in sensory capabilities (especially in perception), thanks to significant advances in machine learning (ML) and dedicated ML hardware. In contrast, much less progress has been made in the area of motor skills. In the current state of the art, one of the most promising approaches is Model Predictive Control (MPC), which forms the basis of the control architecture of most advanced dynamic robots.

In MPC, the control actions are optimized over a finite time horizon, considering the time evolution of robot dynamics to optimize a given cost or reward function that describes the robot motion. 

 

From a control point of view, the following properties should be fulfilled: (1) taking into account the actual morphology when modelling the dynamics of the robot, (2) a planning horizon that is as long as possible to be able to plan complex sequences and to take contacts with the environment into account and (3) a control frequency that is as high as possible to be able to meet the real-time conditions imposed by real-world physics and, if necessary, to replan the sequence of movements.

 

Using algorithm-specific hardware acceleration, which exploits the control approach's algorithmic properties, allows the implementation of safe real-time MPC with long prediction horizons and high control frequencies. However, the structure of the control algorithms is complex, and the algorithms are sensitive to numerical errors or reduced arithmetic precision. Furthermore, failures in the control algorithms can lead to catastrophic failures and unpredictable and possibly dangerous behaviors of the robot. Thus, it is necessary to apply a Hardware-Algorithm-Co-Design approach, i.e., to adapt the currently available control algorithms to the underlying hardware and to design the hardware in such a way that it is optimally suited for the control algorithms.

 

In the last years, domain-specific hardware acceleration (using GPUs or dedicated hardware) has become increasingly popular [1], [2], [3], [4]. Since GPU acceleration suffers from high power consumption and is not flexible, a recent promising approach is to consider dedicated accelerators, such as FPGAs or Application-specific integrated circuits (ASICs) [5], [6], [7]. 

 

Similarly to GPU acceleration, FPGA designs for the computational kernels behind MPC, e.g. structured Quadratic Programming (QP) that has to be solved online and repeatedly, have been recently proposed [8]. Depending on the approach, the accelerator has to focus on various low-level linear algebra routines that compose the algorithm, such as matrix-vector multiplies, linear solvers, and matrix factorization.

 

However, designing such accelerators is a challenging task, with the resulting architectures being often so specific to a particular problem instance [7], [9], [10], [11], [12], [13], such that it is difficult to reuse them even with a related application within the same domain. Even when a general approach appears, it is usually geared for data center-level applications and does not necessarily translate easily to an embedded accelerator context. Many parallel implementations exist to accelerate MPC [14] as well as studies on accelerating MPC on FPGAs [7], [15], [16], [17]. In the very resource-constrained context of small-scale UAVs, even if FPGA platforms have been used to accelerate many aspects of UAVs, such as path planning, simultaneous localization and mapping, stereo vision, system stability, state estimation, target tracking, communications, obstacle avoidance, and interfacing with peripherals [18], MPC acceleration has not yet been demonstrated. Therefore, dedicated low-power hardware implementations are needed to push forward the limits of MPC algorithms on UAVs [19].

Envisaged Activities: 

The proposed MSc internship's objective is to design HW accelerators for UAV MPC algorithms, with the goal of improving accuracy, performance, power consumption, and silicon area. 

 

In more detail, the candidate will:

  1. Study the state-of-the-art algorithms for UAV to identify HW acceleration opportunities (e.g., parallelization, pipelining).

  2. Implement hardware accelerator(s) for the identified algorithms

  3. Integration in the UAV platform, test, and result analysis

  4. Publication of the results to an international workshop/conference

Conditions: 

The intern will be supervised by the TARAN and RAINBOW teams at the Inria centre at Rennes University, IRISA laboratory, in France. The internship remuneration will follow standard French rates.

Contact information:

For more information, contact the following people at Inria Rennes / IRISA laboratory:

Requirements: 

Good knowledge/understanding of computer architectures, hardware design, and embedded systems

Hardware Description Languages (VHDL/Verilog), Hardware synthesis flow, FPGA prototyping

Basic Programming knowledge (Python, C/C++, bash scripting)

Knowledge of Robotics algorithms is a plus

Knowledge of Design Space Exploration approaches is a plus

 

Candidates must be pursuing their MSc degree (or equivalent) in Computer Engineering, Computer Science, or Electrical Engineering.

 

Languages: proficiency in written English is required. Fluency in spoken English is also required.

 

Relational skills: the candidate will work in a research team, where regular meetings will be set

up. The candidate has to be able to present the progress of their work in a clear and detailed manner.

 

Other values appreciated: Open-mindedness, strong integration skills and team spirit.
 

Most importantly, we seek highly motivated candidates.

 

Internship start date: as soon as possible 

 

How to apply: 

Interested candidates are requested to apply via this form. The position will remain open until a satisfactory candidate is found.
In case of positive feedback, you will be contacted. If not positive, you won't hear back. 
 

Applications sent directly by email and not through the web form will not be considered!!

Supervisors : 
Dr. Marco Tognon