Page 70 - Designing Autonomous Mobile Robots : Inside the Mindo f an Intellegent Machine
P. 70

Thinking More Clearly Through Fuzzy Logic

               Multipass and fratricidal fuzzy logic

               As was mentioned at the beginning of this chapter, the purpose of fuzzy logic is to infer
               the value of something that cannot be measured, from a combination of related
               things that can be measured. A passive infrared sensor does not measure intruders, it
               measures heat disturbances. A microwave sensor does not measure intruders either,
               but rather the presence of Doppler-shifted microwave reflections.
               In the previous example, we have used fuzzy logic to infer the intrusion threat prob-
               ability from these two sensors. We could easily add additional sensors at will. If a
               sensor did not detect the intruder, it would simply not contribute to the threat score.

               There are some kinds of calculations, however, where this may not be preferable be-
               cause we are trying to determine a specific value. In these cases, we do not want a
               sensor to throw an “outlier” into the calculation if it has nothing competent to add.
               One way to avoid this is to calculate the contribution for all sensors on a first pass.

               Once this has been done, we can calculate the “average” inference of all the sensors,
               and then determine if any sensors are widely out from the consensus of the others. If
               this is the case, then we can throw out the odd-ball and recalculate without it. I used
               the word “average” in quotes, because in some cases it may be best to use a median,
               or RMS (root-mean-square) value as the consensus.
                 Flashback…

                 I am reminded of an example of just how powerful simple fuzzy logic can be. It was early
                 evening and I was about to log into a warehouse installation of a security robot that we
                 had completed a few weeks earlier. It was standard practice to download log files and see
                 if anything needed tweaking
                 Just as I was connecting, the operator called me on the telephone. He told me that the
                 robot was false alarming on fire threat, that he had dispatched a security officer twice,
                 and that there was no fire threat at all. Could I make it stop false alarming?

                 When I logged into the console the most recent alarm had been cleared, but I saw that
                 the explosive gas sensor was reading very high. Suspecting a defective sensor, I look at a
                 graph of its recent history and was alarmed to see it fluctuating from almost nothing to
                 almost full scale. Since this is not a failure mode of such sensors, I looked at the alarm
                 report and saw that the robot had alarmed because of a high gas reading in the presence
                 of an open flame.

                 Next I downloaded the sensor history for the shift and plotted it on the warehouse map.
                 The pattern showed a huge dome of gas. But what about the flame? Having digital video,





                                                        53
   65   66   67   68   69   70   71   72   73   74   75