Saturday, November 21, 2009

Fuzzy Controller is an Artificial Human Controller

Ng Khin Hooi
Universiti Teknologi Malaysia
Faculty of Electrical Engineering

Fuzzy logic was first introduced in the United States of America but the Japanese are building product out of fuzzy logic rapidly. Ironically, the state where fuzzy logic emerge is still considering the possibility of it. The Europeans now are getting into it and really developing on fuzzy logic. There are many technology now that uses fuzzy logic mostly produced by the Japanese. Some fuzzy logic is in cameras, camcorders, air conditioners and washing machines. It is funny to hear; when asked about fuzzy logic, they would reply 'Washing machines?' Probably they never heard that fuzzy logic can control the stopping of a train much better than a human operator.

When mentioned about fuzzy logic, I merely meant fuzzy logic controller and fuzzy logic is the root of all the fuzz. Fuzzy logic discusses more about the mathematics while fuzzy controller is more about the application of fuzzy logic to control. The conventional control method that 90% machines and controller use now is a PID controller which stands for Proportional, Integrator and Derivative Controller. So, if PID is so commonly used and it is such a good controller, why use fuzzy? Perhaps this is why the American still vague about fuzzy logic.

Fuzzy logic controller could be viewed as a paradigm shifting because it change the view of a controller to a new perspective. With conventional method of for example the oh-so-good PID controller, the value are always calculated to form a control signal to the plant, for example the motor. As introduced by L.A. Zadeh, the human world do not need such precise values. As true for the fuzzy controller, it do not take the value significantly but transfer it to a fuzzy 'realm' before the control signal is produced.

Fuzzy logic controller can be viewed as a decision maker by a computer with human senses. Why it is called 'human senses?' When humans decide, they will always fall in a realm of two extremes. For example when driving a car, human will always adjust the throttle of the car according to his desired speed. Humans never use full throttle or no throttle. Fuzzy controller being different from a PID controller, human too do not know the exact value of pushing on the throttle to procude a certain speed, they just estimate the amount.

Fuzzy controller is much better in a sense they can estimate the value better. They would take in the value and make the decision by themselves based on the rule set by a real human. This is why fuzzy logic controller is called an artificial intelligence. They can make decision and the decision they made is based on calculation.

Take for example of stopping a train as mentioned above. A real human will estimate the amount of deceleration to be applied to the train and slowly braking the train. But human will have hard time in making the stop unless he is very experienced driver. For the fuzzy controller, it will measure the necessary input value (such and speed) and decide on the amount of deceleration to be put to the train. In other sense, fuzzy controller can be trained to be an expert human.

Well of course someone have to teach the fuzzy logic controller. Fuzzy logic controller is based on rules. Like the train stopping, some rules are like 'if the station is still far and the speed is high, then maintain speed', 'if the station is getting near and the speed is high, slow down speed', 'if the station is really near and speed is low, then slow down speed'. Based on these rules inputted in the fuzzy controller, it will calculate the necessary value of deceleration to the train.

The possibility from a fuzzy logic controller is wide the computation steps required needs the use of a computer or embedded system like microcontroller. Unlike PID controller, it can be build from few operational amplifiers, resistors and capacitors. Probably this is why no one wants to venture into fuzzy logic. The more input required, the more computational requirement is needed. This will takes a lot of space in data memory and program memory.

But why not venture into something new? The world now is revolving around AI especially fuzzy logic. At least the passengers in KTM commuter need not be jerked forward when the train stops.

No comments: