# Machine Learning Control

Machine Learning and Control Systems share many similarities. Some might even say that Machine Learning is just a segment of Optimal Control, one of the most crucial branch of Control Systems. Optimal Control deals with finding a control strategy that minimizes a given cost function. Sounds familiar to minimization of cost from Machine Learning right? Both these fields also deal with minimizing the error in similar manner (Gradient Descent algorithm for instance). The important place where they differ is that in dealing with control system problems our main requirement is that we understand the dynamics of the system under consideration fairly well. This 'understanding' can be in terms of differential equations or transfer functions describing how the system behaves. Of course, complete knowledge of the system is nearly impossible since there will always be some small unaccounted dynamics. These unaccounted dynamics can be of the form of small frictional losses, loss due to noise etc. *The goal of a control system is to find an input in such a way that the required output can be achieved*. These goals can also be translated to 'designing a system in such a way so as to drive an input to a required output'. A feedback control system is one of the most common control system design that also has the property to be able to drive an input to the required output despite the presence of noise. This has been shown in the figure obtained from 'Machine Learning Control – Taming Nonlinear Dynamics and Turbulence'

The limitation with this control system approach is that it is necessary to know the dynamics of the system. And even if the dynamics are known, it is not necessary that a control system can be properly designed for such systems (eg. if the system is highly non-linear, its behavior is highly unpredictable). The problem of non-linearity is being addressed by linearizing the systems about an equilibrium point (finding an approximate linear function that acts like the non-linear function). The problem arises when the systems are highly non-linear and simply linearizing the systems would not yield satisfactory results. Turbulence in flow is one such application. Turbulence is one problem where scientists and engineers have still not been able to tackle with conventional control systems and hence new techniques are being tested to tackle this issue, including Machine Learning.

Machine Learning has seen a steep rise in the past few years. This is mostly due to faster computation and large data storage being available. Machine Learning, in the domain of Control Systems problems, aims to identify the dynamics of the system just from the input signals and the output signals learned from the sensors. In dealing with highly non-linear systems, this technique has proven to be almost as accurate as advanced control systems strategies but much more robust. The parameters learned from Machine Learning algorithms can be transferred across systems having similar dynamics. This, with even the advanced control systems strategies would result in disastrous errors being obtained. The block diagram of a Machine Learning Control System obtained from the book mentioned above has been shown below: