Tuesday 24 March 2009

Fuzzy Logic on Fuzzy Logic

(Canberra Times 23 Feb 2009)

The question “is at that a glass of beer in your hand?” (or are you just pleased to see me?) is simple for a human, but very difficult for a computer. Computers use the unbending logic of zeros and ones, which is quite unlike answers such as “a bit”, or “maybe” that humans often prefer.

If you wanted a computer to identify glasses of beer, you could use fuzzy logic as part of the solution. It would incorporate rules such as “we’re in a pub, and beer is often served in pubs”, and “that’s Katie holding the glass, but she doesn’t like beer”.

Feeding these parameters in allow it to compute an answer more like what a human would give, and the result would be something like “that probably is a beer”. Of course we haven’t solved the problem of how the computer knows you’re in a pub in the first place.

Fuzzy logic is now used in many consumer applications such as the face recognition feature in cameras. Using rules about shapes, light, and colour, it will attempt to make sure any faces in the frame are in focus.

Like computers, bureaucracies also tend to find fuzzy logic difficult, and perhaps their reliance on computers tends to reinforce this. When is a person considered to be “young”? What age between zero and 25 would you chose, and what if the person is 14 years, 11 months, and 29 days old? Or perhaps you recall the GST chicken that attracts GST only when served above room temperature – whatever that is.

The result of all this is an arcane maze of complicated rules. You receive a pension if you are over 30, have assets less than $100,000, income under $50,000, live in a rural area, and do not also receive this other pension with equally twisted rules.

In fact the situation becomes so complicated, that sometimes the rules themselves become internally inconsistent. So by one chain of logic you must satisfy condition X, and by another chain, you must not.

Surprisingly, computers can help here in an unexpected way. Such errors are created by humans, but when forced to translate them into the zero-and-one logic of computers, their inconsistencies are exposed.

Another way in which human logic and computer logic differs is in a technique called “chunking”. Imagine you wanted to know how many sheep are in a paddock. One way is to force them through a gate, and count them as they go.

That’s probably what a computer would do. But that’s also quite tedious, and do you really need to know exactly? Another way is to “chunk” them into sets of say, ten. You’d figure out how many sheep occupy a certain space, then multiply it across the whole paddock. From that you estimate so-many sheep per hectare, and then how many sheep are on the whole farm.

Counting sheep seems simple and benign enough, but what about something a bit more challenging. Imagine you are on a battlefield, and being charged by several dozen ugly hairy warriors who mean to do you harm. You’re carrying a bow and arrow, but don’t have time to evaluate the enemy all at once, so you make a snap assessment. You chose the first target, and make all the calculations you need to take him down.

This is a kind of computational chunking, which tells you in the shortest possible time where to direct your energy. Ignore the mob directly ahead – they’re furthest away. Ignore those on the right because your comrades have them covered. For the moment, just focus your attention to those on your left.

This strategy helps manage complexity by breaking a large problem into pieces. It applies simplified logic that glosses over detail when there is not enough time or information to go deeper. Scientists, decision makers, and artificial intelligence systems all do this because it’s simply not possible to fully analyse every problem.

Now back to that beer, and the correct answer will be obvious when I tell you. That is, if that is a beer in your hand, I am pleased to see you.

That is not just me trying to be funny, because I’ve just done something you will never see a computer do. Not only have I made a joke, I have reframed the question. I certainly don’t expect to see a computer do that in my lifetime. And furthermore, after all this logic, I will enjoy that beer.

Technorati tags: , , , , ,

No comments: