About Eliza

Eliza is an early natural language processing computer program created from 1964 to 1966 at the MIT Artificial Intelligence Laboratory by Joseph Weizenbaum (see the Communication of the ACM V09N2, pg. 36).

Eliza is the first chatbot, responding to user’s inputs with a computer generated dialog. It is the ancestor of such chabots like Alexa or SIRI.

Eliza

Weizenbaum named his program “Eliza” after Eliza Doolittle in the Hollywood production of “My Fair Lady”, which in it’s turn is an adaptation of George Bernard Shaw’s “Pygmalion” which in it’s turn is an adaptation of the Greek legend of “Pygmalion”.

Functionality

Eliza simulated conversation by using a ‘pattern matching’ and substitution methodology that gave users an illusion of understanding on the part of the program, but had no built in framework for contextualizing events.

Impact

Eliza was one of the first chatterbots and was the first to pass the Turing test, a test of a machine’s ability to exhibit intelligent behavior equivalent to, or indistinguishable from, that of a human. A Turing Test is like a duck test, “If it walks like a duck and quacks like a duck, it’s a duck”, but applied to human speech. Eliza had the appearance of being a person.

There is an anecdote that Weizenbaum observed his secretary ‘talking’ to Eliza. When his secretary noted Weizenbaum’s presence, she requested that he leave, saying that the conversation was private. Effectively this meant that although she knew that she was talking to a machince, nonetheless she emotionally felt that the machine’s responses came from a person.

Architecture

The prgram Eliza is composed of three sections:

  • Script: Which contains the substitution rules to be applied to the input dialog. The script is not part of the program. It is a separate piece of data.
  • (Eliza): Software to apply the substitution rules to a user input and to compose an output message.
  • (Slip): An Application Programming Interface to support graphs.

Changing the script allows Eliza to participate in multiple domains of knowledge. The original script, DOCTOR, acts as a Rogerian Psychotherapist and is the default script used in the program. The original program was written in a language called MAD for Michigan Algorithmic Decoder. The current version is written in C++.

Running the Program

In order to execute the program you must be in an operating system shell. Although the program is standalone, it is not designed to be graphical. The program mimics the original Eliza. It is based on a teletype (terminal) input and output. It has been designed to be operationally identical to Weizenbaum’s 1966 Eliza.

Depending on the operating system shell, the following will work.

   <run>Eliza <options>
                    
   where:
      run     is the command used to execute a program
      options are optional
              -H/--Help   help file
            


Additional Information

There are a large collection of people and organization with an active and published interest in exploring Eliza. One excellent source, run by Jeff Shrager, is https://sites.google.com/view/elizagen-org

Distribution

The distribution includes: