As you may have noted, several people have asked me what I thought about "Fuzzy Logic" (abbreviated to F.L.). When I was finally able to stop laughing, I agreed that if its name wasn't so weird, it would be easier to take it seriously (Bob's Mailbox, July 9, 1992, p. 80F). Then several people wrote in (Bob's Mailbox, Oct. 1, 1992, p. 74) to explain that F.L. was just a set of simplified analog/digital conventions that weren't really so new after all.
All this time I kept inquiring, what does Fuzzy Logic do that you can't do in conventional or traditional ways. I kept hearing, "Oh, you can do wonderful." And, "You can get better results than with conventional logic." But in the back of my head, I remembered the magazine article where I first learned about F.L. a few years ago. The writer explained that if you use ordinary logic to run a subway train, it will accelerate up to high speed, then jerk on the brakes, accelerate viciously again, brake, accelerate, brake, accelerate, and finally jam on the brakes to arrive in the station with a screech, after knocking all of the passengers off their seats. Whereas, he claimed, by using Fuzzy Logic, you can accelerate smoothly, hold a constant top speed, and decelerate smoothly to the station.
Well, anybody who has ever ridden a subway or streetcar knows that they never accelerate and jerk viciously like that. Even the guy who wrote the article must have known that. So why did he set up such an absurd straw man??? Why does he insist that F.L. is superior to a jerky system that has never existed? Even in the 1890s, electric trains and trolleys were operated smoothly with the "new" Westinghouse controllers. I know—I have ridden 90-year-old trolleys, and they operate almost as smoothly as modern ones (such as BART).
Now, I have never studied all the detailed languages of Fuzzy Logic, and I probably never will. But I have studied motion controllers of various types, both analog and digital. There are lots of modes of operation. If you want to provide good smoothness (to minimize the "jerk"=da/dt=d3x/dt3), there are many ways to do that. And if you just want to get there fast, there are ways to do that, too.
Of course, if you used the crudest possible bang-bang controller, you might get some of the disadvantages cited by the fans of F.L. But that's unfair. When you use some sensor (analog or digital) to detect where you are, you may use inexpensive data converters to get the information into either the analog or digital domain to tell the computer where you are, with adequate resolution. Then the controller can decide where you want to be, and how to converge smoothly on the correct answer without undesirable overshoot or jerk. It's not hard to make a controller do that, whether you rely on analog servos or digital servos. Further, even F.L. controllers may require sensors for position, velocity, etc. They cannot work optimally in a vacuum of information on the parameter to be controlled without any sensors—not any more than a conventional controller can.
But I kept reading strange claims in the literature. One engineer stated that he could use Fuzzy Logic to control a switch-mode voltage regulator, which was better than a conventional, committed controller IC could do. But I never saw any results, just wild claims. Then another person claimed that Fuzzy Logic would be ideal for making a better elevator controller, because without Fuzzy Logic, the elevator would surely lurch and come to a rough halt, knocking everybody off their feet.1 Now, REALLY!
Another author stated that a controller for pressure in a steam boiler had greatly improved response when a Fuzzy Controller was added—including a rise-time that was at least twice as fast. 2 Don't look now, but you get 2x faster rise-time by applying twice as much power. If Fuzzy Logic seems to be achieving that advantage for you, that's only because the conventional system must have been terribly designed.
And various readers kept sending me copies of articles, ads, claims, even several examples of poetry—all KINDS of obscure observations on how WONDERFUL it must be to use Fuzzy Logic. I bounced some of these claims off my old friend Tom Harper in the Embedded Controller group at NSC. Tom observed that if you really know what you want to do, Fuzzy Logic does not always offer much of a performance advantage (if any) over a conventional or "deterministic" controller. In other words, maybe a F.L. power controller can do better than an old LM3524, but so can lots of other more modern controllers.
So it's not obvious where the actual advantage is if the "improvement" is just claimed to be the inherent advantage of the Fuzzy Logic. However, Tom pointed out, in some cases where nobody knows how to control the system, the F.L. controller may be able to control things better.3 Then by watching the Fuzzy controller, you may learn how to control the system even better than the Fuzzy controller.
But the claims kept coming in. "Fuzzy controllers have inherent advantages." And, "The Japanese are putting Fuzzy controllers in refrigerators and washing machines and cameras." Well, if the Japanese are doing it, it must be superior, right??
Another example I heard on the radio: An "expert" stated that some new cars have an automatic transmission that uses Fuzzy Logic. They are much superior to transmissions without F.L., because transmissions without F.L. always shift at the same speed, whereas transmissions with F.L. can shift at different speeds. 4 Hey, get a life! Don't try to tell me about the right way to design automatic transmissions when you've apparently never even driven a car!
One day I was talking with Frank Goodenough, and I was griping that all I ever heard about F.L. was a whole lot of PLATITUDES and straw-man arguments, and about the OBVIOUS INHERENT SUPERIORITY of Fuzzy Logic. Then I just cracked—I got ticked off and pointed out to Frank that so far, everybody says that F.L. is so great, but we never see any real advantages, not any real examples. OKAY, here's a solution to this vexing situation. I will send out this CHALLENGE to any reader:
Show me a system—your system or somebody else's system—where Fuzzy Logic is claimed to provide performance advantages over conventional controllers or systems. You can show me any kind of system, whether it's electronic, electrical, electromechanical, a switch-mode-regulator, or whatever.
But, it cannot be just a conceptual system, or a block diagram, or just a computer simulation. For a fair comparison, it has to be something that really works—that really does something. Furthermore, you must show me the corresponding conventional controller, and the advantages of the Fuzzy system in terms of actual performance. You must also show the actual interface, including the sensor that provides the inputs to the controller, and the actuator that converts the controller's commands into the real world. Then I can build one if I want to.
HOWEVER, I reserve the right to point out that perhaps the CONVENTIONAL system was a real clunker, so it was no wonder the F.L. controller could do better than that. In fact, I may be able to show that any thoughtfully designed system could do better than the Fuzzy Controller. If you just set up a straw man and knock him down easily, you can be sure I will stand up that straw man and put some steel in his backbone, and we'll try again.
So, if there really is a place where Fuzzy Logic is better than ordinary controllers, you show me, and I'll check it out, and I'll concede that there are some interesting advantages. But if you make unrealistic comparisons, I may just show that you were sand-bagging.... Therefore, you'd better show me the improvements in a realistic system. And it must be in a format where I can really evaluate the results. Either build up a circuit and send me both versions, or show me how to build it.
As you can see, I am kinda tired of hearing all these platitudes and vacuous claims and unbelievable advantages and other BULLBLEEP. And theoretical stuff that ain't gonna hold no water. If Fuzzy Logic is better at everything (which some people claim, but which I doubt), we'll find out. If it really is better at a small class of special cases, that we will find out, too.
For example, if we both set up a controller to run a train, and it really runs very well in tests with the train empty, does it still stop safely when the train suddenly fills up with passengers? You might like to argue that your Fuzzy controller can make a train start and stop faster and more optimally when full, empty, or under any other load conditions. Then I'll surely reply that making a train stop at 0.7 Gs is not really practical if the improved performance knocks all of the passengers off their feet and makes them ill. So you had better have a rational improvement, with REAL numbers for REAL examples, because I won't be fooled by platitudes and baloney and bluster and bullbleep. And if in fact you're just trying to fool yourself and me, we'll just publish it... and we'll have a good laugh.
Since Frank Goodenough and I will be the judges, I think we will see some interesting situations: "I can sing anything higher than you can." No, you can't." "Yes I can...." We shall see. Meanwhile, readers' comments on, where F.L. really does and does not provide advantages, are invited. But no bullbleep, and no platitudes. And Frank and I reserve the right to use anything we want to, vacuum tubes or digital multipliers or analog multipliers, to show that conventional controllers are adequate, or just as good, or better, or whatever. And after Frank and I do our judging, and write up our results, YOU can study what we say, and YOU can make your own judgments.
Note, some thoughtful people are beginning to admit that F.L. controllers don't necessarily offer much better performance than a conventional digital controller. A Fuzzy controller may even be able to bring a boat to its dock just about as quickly and smoothly (and, just as jerkily) as other controllers. But the Fuzzy controllers are adequate, and they're claimed to have an advantage of being relatively easy to program.
Now I'll agree, that's a perfectly plausible set of advantages. But it's a little different from a writer who claims that conventional digital controllers are inherently terrible "...because a digital computer can only recognize a one or a zero."5 Haven't these clowns noticed that computers don't operate on just one bit—they operate on bytes? Because a byte with 8 (or more) bits can represent a signal with a resolution of 1 part in 256 (or more), a well-designed digital controller can obviously operate as smoothly as you would like. I have yet to see proof that statement applies to Fuzzy Logic controllers.
Furthermore, some knowledgeable engineers do NOT agree that F.L. is any easier to program or optimize... they observe that Fuzzy Rules can be hard to write well. Emdad Khan in NSC's Intelligent Systems group cautioned that "for complex systems, developing Fuzzy Rules is very difficult, especially if the system needs more than 20 rules and has more than 3 inputs and/or outputs. At this point, the designer starts losing the capability to relate the rules together; in other words we lose the main capability of Fuzzy Logic."
NOW, it's true that some controllers do exhibit a sawtooth curve like the subway train example I mentioned earlier. The thermostat in my house gives that exact same response when I turn it on in the morning. But that's OK, perfectly adequate, so long as the peak-to-peak temperature band is only a few degrees. I'm certainly not going to go out and buy a proportional furnace and control system for the heat in my house!
Several friends have commented: "Bob—this column sounds like you are in favor of digital control systems? How surreal!!!..." Now, don't get me wrong. I'm not saying any one kind of controller is good or bad. I am just arguing that you should think about what your computer or controller is doing for you, and try to understand it. If somebody says his new Fuzzy controller can solve all your problems with greatly improved performance and no thinking is required... think again. Think it over. Ask to see examples of things that really work. Do they show real advantages, or just conceptual advantages compared to a straw man? Do a sanity check—a reality check.
All for now./Comments invited! RAP/Robert A. Pease/Engineer
Mail Stop C2500A,
P.O. Box 58090,
Santa Clara, CA 95052-8090
- Electronic Design, June 25, 1992, p. 37, "An elevator not based on Fuzzy Logic runs at constant speed until it reaches the destination, then, comes to a rough halt". (NO, I am NOT making this up.)
- Fuzzy Logic, Daniel McNeil and, Paul Freiberger, p. 115, Simon &, Schuster, 1993; about $22, not worth, the price unless you really like platitudes.
- NeuFuz 4 control systems;, announced by National, Semiconductor, April 1993. It's not, just Fuzzy Logic, but a whole lot, more. For information, call 1-(800), 272-9959.
- Daniel McNeill interviewed on, "Marketplace Radio," KQED-FM, March 23, 1993 (6:49 P.M.).
- Fuzzy Logic, McNeil & Freiberger, as quoted in the San Francisco Chronicle Book Review.