Within the Model-Based Design environment, there is a set of “standard” of “classic” domains in which control engineers work; discrete and continuous time control, event and state based controls or physicals modeling (for closed loop simulation).
Twenty years ago the use of neural networks, adaptive controls, and fuzzy logic controls entered into the common application for practical control systems. Now controls engineering is starting to use the tools of deep learning algorithms.
(Note: as this post will show I am just starting to enter into using machine learning and deep learning algorithms. I am honestly excited about having a new domain to work in! This post is not intended to provide information on how to develop a deep learning or machine learning algorithm, rather it is to remind us that there are always new fields to exploreee.)
The game changes, the goal remains the same…
The controls community (and well beyond) have started to adopt deep learning algorithms for a simple reason, the problems we are trying to solve now are to complex for classical control domains. (Note: there needs to be care taken here, don’t use a new tool just because it is new, there is still a lot of life in classical controls) Developing controls systems that leverage deep learning methodologies requires a different mindset.
It is like a puppy…
Not really but a statement that stuck with me is
Again it is like a puppy…
In that small puppies can grow
- Run in a non-real time environment
- Run “off chip” to free up on chip processing power
- Require special hardware / more expensive hardware to run
From a controls engineering perspective, all three of these issues need to be taken into consideration. Any of them could make real time application of a deep learning algorithm impractical. However, selecting the correct framework and optimizing the algorithm (on the most critical output parameters) should enable you to deploy most of these algorithms to silicon.
Final thoughts
As I wrote at the top of this post I am still learning. Some of the links I have found useful include

