In the mid 1980's computers began to be advertised as having or being capable of "Fuzzy" logic. How was "Fuzzy" logic added to a computer and what was it suppose to do better than a computer without it?
Fuzzy logic was a bunch of mathematical techniques or algorithms, popularized in the 1970’s by Lotfi Zadeh former chairman of the U.C. Berkeley EECS department. Forms of it depended on fuzzy sets, where set membership or logic state could be multi-valued or statistical, rather than just a binary 1 or 0.
In some ways, fuzzy logic is a distant ancestor of some Machine Learning and Deep Neural Net algorithms, where a scattered mass of sparse low precision vector multiplies and non-linear activation functions can end up identifying a photo of a cat (etc.).
Fuzzy logic can run on any Turing complete computer. So advertising Fuzzy Logic capability was just a bit of marketing.
(Similar to the current hype around almost every new processor chip or GPU doing ML and DNN inference.)
The algorithms would likely run better on chips with faster math operations, non-linear math ops (min,max,saturate,etc.), and/or more numeric formats (floats, vectors, etc.). So maybe it was a way of marketing that a certain processor could compute or do math ops fast enough for some fuzzy logic demo.
(Or for current new processors, some ML demo.)
I came across Motorola HC12 and Hitachi SH2 series controllers in the 90s, intended for vehicle engine control units, that had some fuzzy logic capability.
Motorola had some new machine code instructions, notably
MAX, useful for implementing fuzzy control systems.
Hitachi might had something more sophisticated, but my recollection is very vague here, perhaps a fuzzy logic unit, that could be programmed to apply a sequence of functions (min, max, power, root, absolute difference, perhaps saturated arithmetic too) continuously to some input channels, freeing the processor for other tasks.
Then AMD 3DNow! appeared in 1998, and Intel SSE shortly after, that had the same kind of instructions, but I don't remember them marketed as something fuzzy, but rather as enabling faster graphics calculations.
So the same function set was called something else then, perhaps based on what the target audience understood. Industrial and vehicle control customers wanted fuzzy logic, desktop users wanted fast graphics, and the marketing department created different names for these very similar technologies.
"Fuzzy logic" is a fairly vague term, but is usually used to mean making decisions based on probabilities of events rather than hard true/false values. It can also be used for other numeric decision making models that don't map so easily to probabilities, like neural nets.
The critical thing, therefore, for hardware to be a good fit for implementing a fuzzy system, is that it needs to support fast numerical computations, using either floating point or fixed point fractions. Multiplication is a common operation, as is summing large quantities of data (or the combination of the two, calculating a scalar product), so having support for the appropriate vector operations to accelerate these was useful for larger systems, and vector processors were a big deal in the 80s (and then we all got them in the form of MMX etc coming into the early 90s).
How was "Fuzzy" logic added to a computer and
It wasn't. At least not as logic in the same sense as digital logic to build a computer. It's more of an application concept, extending the realm of control systems. Instead of using fixed thresholds and base reactions thereon, thresholds get defined in a flexible way, usually by combining several input sources and/or recorded information.
In general it was used to describe that applications do not just switch at simple hard points by time or amount, but with more variability depending on circumstances. Like a washing machine using less water if only filled partially.
Further fuzzy logic almost always include feedback loops and iterative approaches, not predefined curves.
what was it suppose to do better than a computer without it?
Real world decisions are usually not based on single facts, but a combination, with such combinations are normally not within a rigid framework.
For example think about a reservoir. It gets filled with water coming from a river. It does let a certain amount of water go downstream to keep the river floating. In addition a simple spill over mechanism is needed to drain when the reservoir is filled and more water is coming in than the outflow is set to take(*1). But after a heavy rainfall upstream, more water will come in and the overflow will increase accordingly. Up to a point where even the spill over can't handle it alone. So gates need to be opened in addition. A simple, standard logic decision would be to open the gates automatic when the water level reaches 110% - as this shows that the spill over can't handle it alone - and we don't want the dam to break, do we?
A workable solution, but with an eventual catastrophic result to downstream villages. First the flow is kept constant all the time, but flash floods are handed down basically unhindered. Not exactly what the villagers expect the dam to do.
Setting up a control system that measures incoming water, maybe already several km upstream, could be used to control the gates already before the reservoir is filled. This system will now monitor the water level in a non-binary way and do the same with incoming water. The decision on opening the gates will be made way ahead of fixed limits and in an adaptable way. With an almost empty reservoir, the gates stay closed (at standard rate) even if the supplying river starts to carry a lot more water. Opening the gates may come only late, maybe at 70%. But if the water level is maybe already at 80%, a way smaller increase in feeding might trigger a wider opening of gates.
That's fuzzy logic. No witchcraft, nothing really new, just more subtle reaction than simple on/of at certain fixed levels.
As so often it's valid to state it isn't anything new, and that's true. With humans in between, all control applications were by default fuzzy - like a reservoir warden seeing the rain and opening the gates early. Even in theory it has been used around 1800 by Hegel by his concept of multiple median. What was new in the 1980s was for one that it was en vogue among mathematicians due to development of the fuzzy set theory, as well as increasing computing capacity made it possible to implement more complex behaviour in every day appliances, from washing machines to train control.
The latter being a great example for the step taken. Driving a commuter train and stopping always at the same point along a platform isn't as easy as it seams. Brake distance differs a lot with the amount of passengers, weather condition, train conditions and much more. The engineer driving applies a lot of knowledge to even stop it within a few feet. Especially when at the same time fast transportation and thus late braking is a must. Automating this with simple pre-calculated control program needs (almost) unobtainable data and will still result in a lesser performance than done by a human engineer.
Using fuzzy logic now doesn't try to solve everything ahead, but defines a corridor of parameters, applying variable control to keep the train within to reach an approximated goal. The Sendai Subway is known to be the first incorporating these ideas and showing great results.
While being a buzzword of the late 1980s, it never went out of style - now the hype word is Machine Learning and even less deterministic :)
*1 - For this we just look at standard behaviour with a (mostly) filled reservoir, special situations like first fill and alike would just add without need.