Fuzzy logic and g.s. ==================== Throughout _Science and Sanity_, Korzybski often referred to "infinite valued" and "non-Aristotelian" logics. At the time, I tried to understand what he was talking about by thinking of "probabilistic" or "inductive" logic, and to some degree that seems to fit. Now, however, I'm reading Bart Kosko's _Fuzzy Thinking_, and another interpretation has popped up. It looks to me like "fuzzy logic", or what little I know about it so far, is quite consistent with the "non-Aristotelian logics" that Korzybski seems to have had in mind. Oddly enough, "fuzzy" logic seems to provide a tool for making much more accurate maps of the territory than "sharp" logic (or "Aristotelian" or "two- valued" or "boolean",. 'logics'). If you already know about fuzzy logic, please skip to the end of this post. :-) For those who don't know, the basic idea behind "fuzzy reasoning" is that we make up our mental categories or classes, but the objects and events of reality only match those categories to certain degrees. For instance, you pick a "Red Delicious" apple off of a tree, but when you check it closely, you see little streaks or dots of yellow-white, small blotches of brown or green, etc.. When you look at a dozen of these apples, you find that they're all "red", but only to certain degrees, and you probably won't find an "entirely red" apple on that tree (never mind that even "redness" is a somewhat arbitrary construct). This can be represented something like this: 1.0 + +--------- "RED" | / | / 0.5 + / | / | / 0.0 +-------+---------+--------+--------- "green" "red" apples apples ... where the degree of "redness" of an apple is on the y-axis, and the apples themselves are represented in order of increasing "redness" on the x-axis. For fuzzy logical calculations, the range of set membership runs from 0.0 to 1.0. Note that Aristotelian logic has only two values: "0" for "not-red" and "1" for "red". The above map allows for being more precise as to the degree of redness, and data tables can even be made up on the basis of spectral analysis. I gather that these fuzzy truth-value graphs are usually estimated first by a person's intuition as a first order approximation. I certainly admit that such fuzzy set making is not the last word in mapping the territory, but it sure looks like an order of magnitude improvement over standard two-valued logic. Various fuzzy logical operations have been derived as well (in fact, I'd like to learn a lot more about those ... does anyone know of a decent introduction to fuzzy logic? I'd especially be interested in fuzzy propositional logic and fuzzy predicate calculus). For instance, the "NOT" operation involves a simple reversal of the graph (the values can be calculated with "1.0 - graph_values"). The Aristotelian equivalent can easily be seen: 0 goes to 1, while 1 goes to 0. 1.0 +-------+ "NOT RED" | \ | \ 0.5 + \ | \ | \ 0.0 +-------+---------+--------+--------- "green" "red" apples apples A trickier operation involves combining propositions, and I think the way fuzzy theorists handled it through mathematical operations is fairly clever. For instance, the "AND" operation can be recast as a "MINIMUM" function. If you have two propositions, X and Y, and it's the case that either one or both are "false" (value = 0), then the minimum function returns 0 in those cases. If, however, both are "true" (value = 1), then the minimum of two 1's yields "1", the value associated with "true". So, I've just shown that all the possible Aristotelian combinations are accounted for, and it works. Extending this result to fuzzy sets, one just combines graphs, takes the minimum values, and there you have your "FUZZY AND"! I'll try to come up with a non-lame, and hopefully okay, example. Suppose, for some unknown reason, red apples are generally bigger than green ones, and we make a graph of "NOT BIG" apples: 1.0 +-------+ "NOT BIG" (or "SMALL") apples | \ | \ 0.5 + \ | \ | \ 0.0 +-------+---------+--------+--------- "green" "red" apples apples And now we want to find those apples which are both small "AND" red. First I'll reproduce the "RED" graph, and then I'll calculate the result. 1.0 + +--------- "RED" | / | / 0.5 + / | / | / 0.0 +-------+---------+--------+--------- "green" "red" apples apples 1.0 + "SMALL AND RED" = MIN ("SMALL","RED") | | 0.5 + - | / \ | / \ 0.0 +-------+--------+---------+--------- "green" "red" apples apples Taking a look at the new graph, you can see that it makes a certain kind of sense! Another key operation in 'logic' is the "OR" operation, which can be recast as a "MAXIMUM" function. If either X or Y or both are "true" (in the Aristotelian sense), the resultant max values all yield "1", or "true". So we could apply that by asking for "small OR red" apples: 1.0 +-------+ +--------- "SMALL OR RED" = MAX(SMALL,RED) | \ / | \ / 0.5 + - | | 0.0 +-------+---------+--------+--------- "green" "red" apples apples You can probably see by now that fuzzy logic lends itself extremely well to computer calculations, and that seems to be almost entirely where it is currently being applied (especially in fuzzy control systems and fuzzy expert systems). (SKIP-TO POINT:) Now, here is an idea I've been chewing on: might this new logical form be incorporated into our spoken and written languages, much as Korzybski envisioned that "infinite-valued non-Aristotelian logics" eventually would be? I think it would require new words at first (perhaps "fuzzy-not", "fuzzy-and", "fuzzy-or", etc.), and would almost surely require people to train in and visualize fuzzy logic combinations and fuzzy implications. I know this looks like a lot of work, but it looks to me like an obvious step in the right direction. Also consider how much work people are putting into the "loglan" (or is it "lojban"?) language. Second question: have any general semanticists investigated this topic, or themes related to fuzzy logic? It seems so obvious to me as being relevant to g.s. efforts that I would be extremely surprised if no one has looked into this before. -- John McPherson (mcpherso@lumina.ucsd.edu) * Host, General Semantics mailing list (send posts to gs@lumina.ucsd.edu, admin to gs-request@lumina.ucsd.edu) "General Semantics ... an idea whose time was bound (to come ;-)." =========================================================================== Further reflections: What I'm going for is more of an impressionistic use of fuzzy logic, rather than a number-crunching one. I'm mostly interested in the _idea_ of it, and especially in encouraging people to use that idea to replace the old Aristotelian two-value notion. Fuzzy logic is probably only one step in the right direction, but it looks to me like an order of magnitude improvement. It's still a relatively new idea and we'll be working out implications and applications for years. Others have looked into some of the null-A infinite-value logics K kept talking about ... I've seen a book partially authored by Sanford Berman dealing with non-Aristotelian logic (mostly containing essays by Oliver Reiser). If I remember correctly, K at least mentioned the work of Jan Lukasiewicz. I wonder if any other general semanticists has picked up the thread in the last 60 years. I think K intended eventually to incorporate them into his system and perhaps to devise some language tools using them. =========================================================================== >Date: Mon, 31 Oct 94 14:58:16 GMT >From: nancy@genie.slhs.udel.edu John McPherson wrote about general semantics as being similar to fuzzy logic in a way that sounds very plausible to me. However, apples "being" red is even fuzzier than he describes. Thanks to a wonderful book called _How to See Color and Paint It_, sometimes I actually look at colors, and I've noticed that while I might think I'm seeing someone wearing a medium blue t-shirt, what I'm seeing is a shirt that is a third or less medium blue. The rest is highlights and shadows that are nothing like medium blue. I haven't acquired the eye/mind to really see how much colors reflect off of and modify each other, but I do know that the lack of such interaction is a lot of why colorized movies look funny. Nancy Lebovitz =========================================================================== >Date: Fri, 04 Apr 1997 11:15:22 -0500 >From: Richard Plourde >Subject: Fuzzy logic example Let's consider fuzzy logic and apply it to the job of a traffic cop. We'll postulate the traffic cop's 'problem' as selecting *which* driver to stop, out of a collection of many drivers who "violate the law" in different ways, to different degrees. Let's postulate a highway with a maximum speed limit of 65, a minimum speed limit of 50, and enforceable laws for erratic driving, and "yellow line violations" (crossing the center-marking of an undivided highway.) Let's further postulate that the cop is only interested in maximizing the safety of the highway. Membership in the fuzzy-set 'unsafe' goes according to: Speeds between 50 and 65 have a zero value for "unsafe," 1 'point' per mile per hour up to 75 mph, 2 points per mile-per-hour for anything faster, 3 points per mph below 50 in the right-most lane, 6 points per mph in any other lane. Erratic driving gets measured by number of intersections with the dotted white line or the shoulder marker over a particular distance, 3 points per event in each mile. Lane changes carry 2 'erratic driving' points for each one inside a mile. Yellow line violations get measured similarly at 20 points per event in each mile. The cop's algorithm might go according to, "don't stop anybody with an unsafety less than 20, but do stop the highest 'unsafety' available that goes over 20; call extra cops if necessary to stop *anyone* with a score of 40 or more." Person 1: Granny lane, 47mph, 1 'wander' over shoulder divider, unsafety=3*3+1*3=12 Person 2: 80mph, 1 lane change, unsafety=10pts(75mph)+10pts(+5mph over 75)+2(lane change)=22 Person 3: 60mph, 2 "yellow line" violations in a mile unsafety=2*15=40 pts Person 4: 75mph, 4 lane-changes, 3 'wanders' in a mile unsafety=10(75mph)+4*2+3*3=27 Person 5: 85mph unsafety=10(75mph)+20(10mph over 75)=30 Person 6: 65mph unsafety=0 Person 7: 40mph, left lane, 1 yellow-line violation, 4 wanders unsafety=60(underspeed)+30(yellow line)+4*3(wanders)=102 The cop stops person 7, reports person 3 for some other cop to deal with. Person 6 gets classified as "safe" Persons 3 and 7 get classified as "unsafe" Persons 1, 2, 4, and 5 get fuzzy-classified with varying degrees of unsafety. -R Richard Plourde .. rplourde@empire.net "The word is not the thing, the map is not the territory" http://www.crl.com/~isgs/isgshome.html http://www.general-semantics.org/