The main motivation for this project is to improve the model of dynamical systems, beyond the physics based models, by incorporating measurements of the model outputs/states in the modeling process. This method of modeling is called Grey-Box which employs a White-Box model (physics based model) in conjunction with a Black-Box model (purely based on data). In this project, the main area of focus is the Black-Box part. We want to study and devise Machine Learning methods that can learn very complex models of real mobile robots which are hard or expensive to model, for example, a quadrotor. The idea is that having an improved model which can predict the behaviour of the system over an appropriate amount of time in the future, the model can be employed in a Model Predictive Control (MPC) scheme. Since MPC is a computationally demanding control method, the improved model can compensate for the model inaccuracies, hence lets the MPC horizon recedes much more than a single step at each control attempt. This not only saves computational resources on a small platform (such as a quadrotor) but also provides a more accurate control performance and let the vehicle follow arbitrary complex trajectories.
MODERNN
Recurrent Neural Networks (RNNs) are dynamical models with powerful representational capabilities which makes them suitable for modeling dynamical systems. However, training RNNs is generally difficult [1]. One reason might be the vanishing/exploding gradient problem [2]. There is an increasing amount of interest in using RNNs in Natural Language Processing (NLP) and other temporal pattern recognition tasks. With the rapidly growing rate of advance in hardware, using Machine Learning methods in various engineering problems is becoming a trend. In this project, we would like to facilitate the usage of RNNs in modeling and control of systems with fast dynamics, such as those in mobile robotics.
A Modular Deep Recurrent Neural Network (or MODERNN) is a general form of a structurally deep RNN which benefits from a modular design that eases the process of employing various architectures while inhibits the user from re-deriving the cumbersome process of Gradient calculations. Introducing a structural depth increases the modeling capacity of a MODERNN [3]. A simple MODERNN with three layers is shown in the Figure 1.
In [3] we have shown that MDOERNN outperforms two widely used methods in modeling and control of dynamical systems, namely Non-linear AutoRegressive eXogenous model (NARX) and Recurrent MultiLayer Perceptron (RMLP) in modeling the altitude of a simulated quadrotor. In [4] we have shown that MODERNN can be model a full-nonlinear dynamic model of a simulated quadrotor with no prior knowledge. The validity of the model prediction over more 5 seconds is illustrated.
We are currently applying the MODERNN framework for learning the altitude of a real quadrotor: AscTec Pelican. Fascinating results are to come!
[1] Pascanu, Razvan, Tomas Mikolov, and Yoshua Bengio. “On the difficulty of training recurrent neural networks.” arXiv preprint arXiv:1211.5063 (2012).
[2] Bengio, Y., Simard, P., and Frasconi, P. “Learning long-term dependencies with gradient descent is difficult.” IEEE Transactions on Neural Networks, 5(2), 157–166.
[3] Mohajerin, Nima, and Steven L. Waslander. “Modular deep Recurrent Neural Network: Application to quadrotors.” Systems, Man and Cybernetics (SMC), 2014 IEEE International Conference on, 2014.
[4]Mohajerin, Nima, and Steven L. Waslander. “Modelling a Quadrotor Vehicle Using a Modular Deep Recurrent Neural Network” Systems, Man and Cybernetics (SMC), 2015 IEEE International Conference on, 2015 .