Fuzzy Logic

Not everything is so simple as true or false. Even declarative statements may evaluate outside {0,1}. So let’s introduce the kind-of: truth ∈ [0,1].

Examples of non-binary declarative statements:

  • Shooting trap, my bullet nicked the clay pigeon but didn’t smash it. I 30%-hit the mark.
  • I’m not exactly a vegetarian. I purposely eat  of my meals without meat, but — like yogini Sadie Nardini I feel weak if I go 100% vegetarian. So I’m  contributing to the social cause of non-animal-eating, and I’m a ⅔ vegetarian.
  • I’m sixteen years old. Am I a child, or an adult? Well, I don’t have a career or a mortgage, but I do have a serious boyfriend. This one is going to be hard to assign a single number as a percentage.

So that’s the motivation for Fuzzy Logic. It sounds compelling. But the academic field of fuzzy logic seems to have achieved not-very-much, although there are practical applications. Hopefully it’s just not-very-much-yet (Steven Vickers and Ulrich Höhle have two interesting-looking papers I want to read).

I see three problems which a Sensible Fuzzy Logic must overcome:

  1. Implication. Classical logic (“the propositional calculus”) uses a screwed up version of “If A, then B”. It equates “if” to “Either not A, or else B is true, or else both.”

    Fuzzy logic inherits this problem — but also lacks one clear, convincing “t-norm”, which is the fuzzy logic word for fuzzy implication.  Can you come up with a sensible rule for how this should work?:

    • A implies B, and A is 70% true. How true is B?
    • Furthermore, should there be different numbers attached to “implies” ? Should we have “strongly implies” and “weakly implies” or “strongly implies if Antecedent is above 70% and does not imply at all otherwise” ?

    You can see where I’m going here. There is an 2 of choices for the number of possible curves / distributions which could be used to define “A implies B”.

  2. Too specific. Fuzzy logic uses real numbers, which include transcendental numbers, which are crazy. Bart Kosko’s book explains FL with familiar two-digit percentages, which are for the most part intuitive. So I can accept that something might be 79% true — but what does it mean for something to be π/4 % true? Or e^e^π^e / 22222222222 % true?

    We’re encumbering the theory with all of these unneeded, unintuitive numbers.

  3. One-dimensional.  For all of the space, breadth, depth, and spaceship adventures contained in the interval [0,1], it’s still quite limited in terms of the directions it can go. That is [0,1] comprises a total order with an implied norm. Again, why assume distance exists and why assume unidimensionality, if you don’t actually mean to. There are alternatives.

    Unidimensionality excludes survey answers like

    • N/A
    • I don’t know
    • Sort of
    • Yes and no
    • It’s hard to say
    • I’m in a delicate superposition

    , — or rather it maps effectively different answers onto the same number.  

    • Sometimes things are both good and bad;
    • sometimes they are neither good nor bad;
    • sometimes things are not up for evaluation;
    • sometimes a generalised function (distribution) expresses the membership better than a single number;
    • sometimes the ideas are topologically related or order related but not necessarily distance related;
    • sometimes an incomplete lattice might be best. 

So those are my gripes with fuzzy logic. At the same time, Kosko’s book was my introduction to an interesting, new way of thinking. It definitely set my mind spinning. For the logical mind that wants a rigorous framework for understanding ambiguity, vagueness, and gray areas, fuzzy logic is a good start.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s