The Fundamentals of Control Theory
engineeringmedia.com
engineeringmedia.com
Also, why should anyone study control theory? It's the math behind making real-world systems perform what you want them to do. In particular, robotics and autonomous vehicles rely heavily on techniques from control theory.
If you watch Brian's videos, keep in mind that they bifurcated into two places: his original videos [1], and his more recent MATLAB tech talk videos [2].
The same is true for Steve Brunton. Control theory, systems theory, computational engineering and the interface of the latter to ML.
https://www.youtube.com/watch?v=g1eUIK9CihA
James Gleick, Doyne Farmer, Jim Crutchfield, Ken Wilson, or Leo Kadanoff maybe?
https://petterhol.me/2022/08/11/the-golden-age-of-complexity...
>J Gleick, 1987. Chaos: Making a New Science. Viking Penguin, New York. The name aside, Gleick’s Chaos is the quintessential complex systems book, providing a prototype for the golden age. It does an excellent job of capturing the frenzied mid-80s dynamical-systems scene, culminating* in Jeff Goldblum’s chaos theorist character in Jurassic Park (allegedly inspired by Gleick himself). But Chaos spans adjacent fields too, namechecking future Santa Fe Institute luminaries like Doyne Farmer and Jim Crutchfield and statistical physicists like Ken Wilson and Leo Kadanoff. All-in-all still a worthwhile read, not only for the zeitgeist.
This was originally created as a guide for high schoolers for robotics but goes into relative depth (the subtitle is "Graduate-level Control Theory for High Schoolers). I personally found it quite useful for intuitive understanding of how control systems work.
Prerequisites: linear algebra
The part that got me was that you could take this arbitrarily-complex LTI system and basically turn it into a matrix that encapsulates everything. Any given state the system could exist in becomes a simple vector. Lots of crazy compositional techniques exist once you get your problems into this kind of shape.
But not just every LTI system, ever sampled signal is poles and zeroes in the z-plane.
I have used that fact for years, and it still blows me away from time to time. Laplace and z-transforms are pretty magical, more so than Fourier even (which is basically a special case).
It is sometimes super useful to think about large systems with high traffic of requests/messages as something that can be controlled.
I've both BsC and MsC in control and heavily used video lectures of Brian, I am probably one of his first patrons. His lecturing skills are amazing. If you interested about the topic I also suggest to look at 'Steve Brunton' YouTube channel. He is also a legendary teacher.
If you want to talk anything about control theory, please feel free to contact me.
We have literally `Control and Automation Engineering` as a major in Istanbul Technical University (In BSc, MSc and PhD levels). It's not under any other depermant althogh it is under EE faculty.
I only have a basic understanding of machine learning however, but am I completely wrong in seeing a lot of overlap in control theory? Seems like a ML model is like a bunch of controllers (not necessarily PID, or even linear) in parallel with a weight and a bunch of outputs in parallel and the difference between your desired output and the input is your error signal.
I would recommend checking it's YouTube channel instead.
Sounds like he's still open to continue working on it in the future though:
> Perhaps something will re-motivate me in the future and I’ll get back to writing this book. In the meantime, I hope it’s of some use to you.
https://youtube.com/c/katkimshow https://engineeringspark.com/
What is observability? You can tell what is going on inside the system at any point in time. Metrics and logs are the bare minimum you need to observe the system at certain points in the code. After that you ask yourself: What else can I do to make this more observable? Usually this comes from how the code is structured and how the data flows through the system.
Same with controlability. Can I make my system do what I want it to do under any operating conditions? What are the knobs I can turn? The lowest form of controllability is static configuration. You can add more knows and even make them dynamic thinking about structure and data flow.
Having working fundamentals in the space can be a huge competitive differentiator. Everyone working in tech should have that.
Edit: Interesting, I went to a ABET accredited college and my EE counterparts did not take control systems. Where we were told that we had to take it because of our (MechE) ABET requirements.
Minor aside, the class was the best of all my electives. I picked it based on advice from a friend who said "choose your electives based on the professor, not the material." One of those bits of advice I wish I'd absorbed (I'm sure I'd been told) earlier in my school career.
Additionally I find some of controls theory to be relevant context for machine learning models, in particular backpropagation.
we for sure took mandatory signals and controls, and we basically regarded ourselves as EEs whose circuits tended to be squishy and alive.
A disgustingly useful class, and damn hard.
Chemical plants and oil refineries operate using optimal control (MPC) that control lower level PI loops. There are layers and layers of controls.
The controls in oil refineries are so optimization driven that some of the leading edge optimization solvers actually come from ChemE research groups. Oil was the old tech industry and they poured a lot of money into optimization and control R&D.
The alternative is statistical process control. In practise, it performs about the same for basic tasks, but it gives you qualitative insights into many other things too: (registration-walled) https://www.qualitydigest.com/inside/operations-column/proce...
It is more economical, in my experience, to start from the idea that unless there's been an actual consistent change in the process, any data you're getting reflects noise around the process mean. SPC is designed to tell those two cases apart.
[1] https://en.m.wikipedia.org/wiki/Statistical_process_control
https://www.youtube.com/controllectures
Control theory is a really fundamental topic that is useful in many disciplines. The field has some very pragmatic approaches.
https://youtube.com/channel/UCV3CS_ygnzwGzjBXKjVdQIQ
The channel should be brought to life soon. :)
Time to market is always important, I think calculating mathematical models might work out quicker than trying to shove ML on it? Our tools for making math models will improve.
(all of this is speculation, no one can predict the future)
Philipp K. Janert
https://janert.me/books/feedback-control-for-computer-system...
He starts talking about PID controllers at around 3:40.