10

Wikipedia gives a good summary of the AI winter of the late eighties and early nineties (the qualification is necessary since there has been more than one). Some aspects of it are clear enough, but here's one I'm still curious about:

https://en.wikipedia.org/wiki/AI_winter#The_fall_of_expert_systems

"By the early 90s, the earliest successful expert systems, such as XCON, proved too expensive to maintain. They were difficult to update, they could not learn, they were "brittle" (i.e., they could make grotesque mistakes when given unusual inputs), and they fell prey to problems (such as the qualification problem) that had been identified years earlier in research in nonmonotonic logic."

Okay, but all those things were just as true in 1980 as they were in 1990, yet XCON was very profitable in 1980 despite those problems, so why was it not still profitable in 1990? What changed?

The thing that comes to mind that might have changed is the competitive landscape. Conjecture: in 1980, the alternative to XCON was pen, paper and the occasional subproblem set up in VisiCalc. In 1990, the alternative was increasingly sophisticated ERP systems written with conventional technology, and the occasional use of Excel. XCON would still have been useful in 1990 had it been the only game in town, but the conventional alternatives were now good enough that it was no longer necessary to pay for the maintenance of an unconventional program.

Is that the reason, or is there something else I'm missing?

  • 6
    Did they fail? Something like IBM Watson is still around and thriving, apparently. – tofro May 11 '18 at 18:46
  • 4
    @tofro, Watson is nothing like those old "expert" systems. The heart of an expert system was a structured knowledge base coupled to an inference engine. The developer was expected to interview experts in some domain of knowledge, and encode everything that the experts knew as facts in the KB and as rules in the inference engine. Watson, on the other hand, is based on full-text search. It uses natural language processing to turn a question into a good full-text query, and then additional NLP to choose a good "answer" from the search results. – Solomon Slow May 11 '18 at 18:56
  • 3
    @manassehkatz, A classic expert system does not know anything except specific coded facts and rules that were deliberately entered into it, plus any new facts that it can infer from the original facts by applying the rules. Watson, in its original form (I don't really follow it today) did not deal with coded facts or rules (i.e., it did not do "inference"): Instead, it found its answers within a corpus of natural language text which may be limited in scope (e.g., all the academic papers from some database) or, which may be everything they could grab off the web. – Solomon Slow May 11 '18 at 20:28
  • 2
    @manassehkatz - I'm with James Large on this one... there is a critical difference in approach between an expert system and modern systems like Watson. Expert systems relied on human engineers to determine the rules for the system, then applied computer power to calculate the consequences of those rules. The modern approach is to just give the computer raw data and let it build its own rules. That's a critical distinction, and understanding the reason why the change was needed is important. – Jules May 12 '18 at 0:53
  • 5
    That is a line of argumentation that is like "Computers were a failure because the Z80s and 6502 of the 80ies are no longer around have been replaced with technology that works marginally different." The 80ies expert systems derived (or rather, entered) inferencing rules from patterns observed in real data by engineers. Modern systems do the same thing but find the patterns themselves. – tofro May 12 '18 at 10:52
14

They failed because they didn't live up to the hype. What was touted as a technology with broad applicability turned out not to be as generic and general purpose as was hoped.

Today, expert systems are "settled science" and routinely employed in all sorts of fields. But, when they're used, they tend to be buried behind the scenes as support functionality, rather than a fundamental core idiom of development and design.

For example, and I likely have the details of this anecdote incorrect, there is (was) a service in the Windows OS around the networking stack, and they chose to write that little piece in Prolog. Prolog is, essentially, a programming language with a built in "expert system". The rule set for the task was a good match for Prolog.

But it's not like "Windows is written in Prolog", or any other grand thing.

Expert systems have their place, and are a powerful tool. But a combination of over promising the hope behind AI, the performance of the AI systems, and then delivered end product simply didn't meet the expectations of the market.

Today, you see headlines about how "AI" people are the experts in demand. Modern AI is focused on a completely different direction than the AI of the 80's. And only through the modern machines and, as important, the modern infrastructures of "Big Data" and massive multi-processing has modern AI been able to come to the fore front of the market.

  • 1
    Basically the term AI, like sturctured programming is widely misused and means different things to different people. In some contexts, it is a meaningless buzz word. As the wiki article says, the different branches just got renamed to be more specific, like knowledge based systems. – cup May 13 '18 at 5:52
  • Definitely over-hype (mostly, but probably not exclusively) by people who didn't know what the systems were and how they worked. On a similarly over-hyped note, who remembers The Last One ... the (greatly over-hyped) promise was that no one would ever have to program again! (Although in this case, I think the creators were as responsible for the hype as anyone). – TripeHound May 14 '18 at 14:09
  • 1
    Definitely the hype. And many things contributed to that. To name just one: They could not at the time (and still can't) explain how they got their results. So when they got the wrong result you couldn't figure out which explicit fact you needed to manually add to the rule base, nor what impact that new fact would have on all previous (correct or incorrect) results. (Today, if I understand correctly, you can attempt to retrain or refine your model with an additional bollix of test data... ) – davidbak May 21 '18 at 0:26
  • 3
    @davidbak Actually many systems did have a "why" feature. For most chaining inference engines, it's simply a trace of the rules that actually fired on the way to finding the complete answer. In the end, you still had to "hand tune" such rulesets, add prioritization, discriminator rules or values, etc. Now, neural networks and such, that's a completely different story. But AI of the "AI Winter" were mostly inference engines. – Will Hartung May 21 '18 at 3:38
  • @cup +1 - " the term AI... is widely misused" - remember when every body advertised "fuzzy" logic, virtual reality, and now it is being "connected to the cloud". Gees, every 1960's university computer or home computer with a modem was connected to the "cloud"! – jwzumwalt Aug 23 '18 at 6:38
7

Expert systems didn't fail per se - the technology is still around in today's rule engines (e.g. Drools) and there are still plenty of applications for that technology. The technology got a lot of hype in the 1970s-1980s as there was a lot of DARPA funding available for AI research at the time. Like most 'next great thing' tech, expert systems1 found their real applications without changing the world as much as their proponents would have liked us to believe.

The computer industry is driven by hype - the winner takes all nature of the industry means that there is a lot of money to be made in being the dominant player in a sector, and nothing much left over for second or third place. This means that any product in a trending industry will get hyped by any means possible in order to attract customers and investors. The hype tends to get picked up and echoed by lots of folks who don't really understand the technology.

You can see similar phenomena with big data or machine learning today or previous fads such as semantic web or any of the fads in I.T. that have come and gone over the past 50 years. In this respect there's nothing special about expert systems. Like many technologies that have trended in the past, they found their applications and the folks generating the hype got bored and moved on to other things.

1 In the case of expert systems it might be better to say that the technology found its natural applications, but the term 'expert system' died out. It's certainly not the only technology in the history of computing to have acquired a different name over the years.

  • 1
    Good comment. The look ahead typing of the Unix Bash shell (and now in cell phones) and spell checkers would have been considered an expert system in the 1970's. People thought ELIZA (~1965) could think! (en.wikipedia.org/wiki/ELIZA) – jwzumwalt Aug 23 '18 at 6:45
  • 2
    One of the things that almost everyone ignore is the make program. make is genuinely an expert system where the rules are dependencies and make have to figure out in what order things must be executed. – slebetman Apr 1 at 7:45
1

The answer is in your question:

"By the early 90s, the earliest successful expert systems, such as XCON, proved too expensive to maintain. They were difficult to update, they could not learn, they were "brittle" (i.e., they could make grotesque mistakes when given unusual inputs), and they fell prey to problems (such as the qualification problem) that had been identified years earlier in research in nonmonotonic logic."

It took time for people to realize that things which worked in strictly controlled academic settings often don't translate well to the "real" world.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.