Pages

Monday, September 20, 2010

The Religions of Control Engineers

I recently attended the American Institute of Aeronautics and Astronautics (AIAA) Guidance, Navigation, and Control (GNC) conference. I've been to this conference before and I really enjoy it. It's not the top-of-the-line academic performance, but there's a lot of great papers, and most of the top engineers attend. Plus, at least for aerospace engineering in dynamics and controls, in particular, it is probably the flagship conference.

This year I noticed something interesting. But first a bit of background. During the time of WWII, a lot of important advancements were made in signal processing, control, ans stochastic processes. Obtaining optimal solutions (particularly stochastically, in a MMSE sense) were very important. Norbert Weiner had discovered the MMSE filter, but it was not easily applicable to problems of a sequential nature (which all control systems are). Rudolf Kalman, and Richard Bucy had developed a sequentialized version of the Weiner filter, which revolutionized the signal processing, and more particularly the controls industry.

Thus the Kalman filter was born. It has some major limitations, most notably in that it only works for linear time-invariant (LTI) systems. As everyone knows, most systems aren't linear. But it turns out that with some rough approximations (and a helping of the central limit theorem) most systems are almost linear, and the Kalman filter has been applied to many many systems and been surprisingly, and somewhat remarkably good. Extensions to the Kalman filter have been numerous: the extended Kalman filter (EKF, attempts to handle non-linear systems), the unscented Kalman filter (UKF, also attempts to handle non-linear systems more elegantly than the EKF), the consider Kalman filter, iterated extended kalman filter (IEKF), and the list goes on and on. But even with all the advances, the ability to truly handle complex non-linear systems has been a challenge to the controls community for a long time.

As computers became faster, monte carlo methods have become an important tool in signal processing and controls as they can solve problems for ANY system, even highly non-linear ones. In particular, the particle filter (PF) is a sequential monte carlo method that has found a great deal of success in this area. It runs very quickly, and can produce near optimal results (though for the PF there is no guarantee of true optimality like there is for a KF).

In the controls community, KFs, PFs, EKFs, and UKFs have obtained a sort of notoriety for attracting people. In fact, if a paper uses one of these filters, or otherwise pontificates on the strengths or weaknesses of these filters, it is sure to attract a room-busting audience.

Sometimes this gets ridiculous, even to the point of approaching a religion. I attended one paper presentation in which a PF, EKF, and UKF were compared in filtering a particular non-linear system for an Unmanned Air Vehicle (UAV). After the presentation, the discussion bordered on absurd. One guy is quick to point out that the authors missed a technical detail on their implementation of the PF and should have gotten better results for the PF. Another guy points out the theoretical superiority of the UKF and insists that they must have done something wrong since it was not clearly the winner. And on and on it goes each setting forth the reasoning for why his favorite filter is superior. By the end, all I could think was "look people, it's just a filter!"

It reminds me of the dreaded Windows vs. Linux vs. Mac debate that plagues the pages of Slashdot and Engadget. Each filter, like each operating system, has its strength and weaknesses. Rather than viewing it as some competition of optimality in which one gets the nod of academicians while the others get a hairy eyeball, I view each as a tool in my toolbox to be selected with prudence and wisdom in applying a control algorithm to my system. But despite my confusion people will continue to justify, validate, and argue for their filter of choice as if the filters cared about our loyalty to them. Who says scientitst and engineers are above religious arguments anyway? Seems to me they just have different religious arguments. Seriously people, it's just a filter!