||This article includes a list of references, but its sources remain unclear because it has insufficient inline citations. (January 2009)|
ELIZA is a computer program and an early example of primitive natural language processing. ELIZA operated by processing users' responses to scripts, the most famous of which was DOCTOR, a simulation of a Rogerian psychotherapist. Using almost no information about human thought or emotion, DOCTOR sometimes provided a startlingly human-like interaction. ELIZA was written at MIT by Joseph Weizenbaum between 1964 and 1966.
When the "patient" exceeded the very small knowledge base, DOCTOR might provide a generic response, for example, responding to "My head hurts" with "Why do you say your head hurts?" A possible response to "My mother hates me" would be "Who else in your family hates you?" ELIZA was implemented using simple pattern matching techniques, but was taken seriously by several of its users, even after Weizenbaum explained to them how it worked. It was one of the first chatterbots.
Weizenbaum said that ELIZA, running the DOCTOR script, provided a "parody" of "the responses of a nondirectional psychotherapist in an initial psychiatric interview". He chose the context of psychotherapy to "sidestep the problem of giving the program a data base of real-world knowledge", the therapeutic situation being one of the few real human situations in which a human being can reply to a statement with a question that indicates very little specific knowledge of the topic under discussion. For example, it is a context in which the question "Who is your favorite composer?" can be answered acceptably with responses such as "What about your own favorite composer?" or "Does that question interest you?"
First implemented in Weizenbaum's own SLIP list-processing language, ELIZA worked by simple parsing and substitution of key words into canned phrases. Depending upon the initial entries by the user, the illusion of a human writer could be instantly dispelled, or could continue through several interchanges. It was sometimes so convincing that there are many anecdotes about people becoming very emotionally caught up in dealing with DOCTOR for several minutes until the machine's true lack of understanding became apparent.
In 1966, interactive computing (via a teletype) was new. It was 15 years before the personal computer became familiar to the general public, and three decades before most people encountered attempts at natural language processing in Internet services like Ask.com or PC help systems such as Microsoft Office Clippy. Although those programs included years of research and work, ELIZA remains a milestone simply because it was the first time a programmer had attempted such a human-machine interaction with the goal of creating the illusion (however brief) of human-human interaction.
In the 1976 article "Computer Power and Human Reason", an excerpt of which is included in The New Media Reader edited by Noah Wardrip-Fruin and Nick Montfort, Weizenbaum notes how quickly and deeply people became emotionally involved with the computer program, taking offence when he asked to view the transcripts, saying it was an invasion of their privacy, even asking him to leave the room while they were working with the DOCTOR script.
Given these common responses to ELIZA and similar programs, it's interesting to contrast the relative simplicity of ELIZA's programming logic in relation to the requirements for Turing's Test for Artificial Intelligence. Perhaps the bar for "apparent" AI isn't as high as it might be supposed.
Weizenbaum's original MAD-SLIP implementation was re-written in Lisp by Bernie Cosell. A BASIC version appeared in Creative Computing in 1977 (although it was written in 1973 by Jeff Shrager). This version, which was ported to many of the earliest personal computers, appears to have been subsequently translated into many other versions in many other languages.
Another version of Eliza popular among software engineers is the version that comes with the default release of GNU Emacs, and which can be accessed by typing
M-x doctor from most modern emacs implementations.
Influence on games
ELIZA had an impact on a number of early computer games by demonstrating additional kinds of interface designs. Don Daglow wrote an enhanced version of the program called Ecala on a DEC PDP-10 minicomputer at Pomona College in 1973 before writing the computer role-playing game, Dungeon (1975). Both these games appeared some nine years after the original ELIZA.
Response and legacy
Lay responses to ELIZA were disturbing to Weizenbaum and motivated him to write his book Computer Power and Human Reason: From Judgment to Calculation, in which he explains the limits of computers, as he wants to make clear in people's minds his opinion that the anthropomorphic views of computers are just a reduction of the human being and any life form for that matter. In the independent documentary film Plug & Pray (2010) Weizenbaum said that only people who misunderstood ELIZA called it a sensation.
The Israeli poet David Avidan, who was fascinated with future technologies and their relation to art, desired to explore the use of computers for writing literature. He conducted several conversations with an APL implementation of ELIZA and published them – in English, and in his own translation to Hebrew – under the title My Electronic Psychiatrist – Eight Authentic Talks with a Computer. In the foreword he presented it as a form of constrained writing.
There are many programs based on ELIZA in different programming languages. For example, in 1980, a company called "Don't Ask Software", founded by Randy Simon, created a version called "Abuse" for the Apple II, Atari, and Commodore 64 computers, which verbally abused the user based on the user's input. Other versions adapted ELIZA around a religious theme, such as ones featuring Jesus (both serious and comedic) and another Apple II variant called I Am Buddha. The 1980 game The Prisoner incorporated ELIZA-style interaction within its gameplay. George Lucas and Walter Murch incorporated an Eliza-like dialogue interface in their screenplay for the feature film THX-1138 in 1969. Inhabitants of the underground future world of THX would retreat to "confession booths" when stressed, and initiate a one-sided Eliza-formula conversation with a Jesus-faced computer who claimed to be "Omm". In 1988 the British artist and friend of Weizenbaum Brian Reffin Smith created and showed at the exhibition 'Salamandre', in the Musée du Berry, Bourges, France, two art-oriented ELIZA-style programs written in BASIC, one called 'Critic' and the other 'Artist', running on two separate Amiga 1000 computers. The visitor was supposed to help them converse by typing in to 'Artist' what 'Critic' said, and vice versa. The secret was that the two programs were identical. GNU Emacs formerly had a
psychoanalyze-pinhead command that simulates a session between ELIZA and Zippy the Pinhead. The Zippyisms were removed due to copyright issues, but the DOCTOR program remains.
ELIZA has been referenced in popular culture and continues to be a source of inspiration for programmers and developers focused on Artificial Intelligence. For example, when Siri (Apple's voice activated service) was asked "Who would you vote for – Mitt Romney or Barack Obama?", Siri replies "I can't vote. But if I did, I would vote for ELIZA. She knows all." Users can also repeatedly tell Siri "tell me a story." Eventually, it will tell a story about how it was chosen to work for Apple Inc. and mentions ELIZA in the story. Users can even ask about ELIZA to Siri and it will respond talking about ELIZA.
Partial list of implementations
- Using Java, and based very closely on Weizenbaum's published description of the program: http://www.chayden.net/eliza/Eliza.html
- Using Z80 assembly language on the TI-83 Plus: ticalc.org
- Trans-Tex Software has released shareware versions for Classic Mac OS and Mac OS X
doctor.el(circa 1985) in Emacs lisp: http://www.cs.cmu.edu/Groups/AI/areas/classics/eliza/emacs/doctor.el. Current version.
- Source code in Tcl: http://wiki.tcl.tk/9235
- Source code in BASIC: http://www.atariarchives.org/bigcomputergames/showpage.php?page=20
- Used in AGT: Automatic Goblin Therapist (World of Warcraft add-on) http://www.wowinterface.com/downloads/fileinfo.php?id=9780#info
- Written in TDBS for the Kakadu Konnection BBS in Darwin Australia and widely distributed to other TBBS bulletin boards in 1989.
- Source code in Guile Scheme: https://github.com/apgwoz/chatter
- Lisp reimplementation (apparently based on the Apple II Basic version): 
- online Prolog demo complete with source code 
- Editing source code, Darius Steighler brings a new version of Eliza. ( ELIS  )
- Perl CPAN Module http://search.cpan.org/~neilb/Chatbot-Eliza-1.05/lib/Chatbot/Eliza.pm
- Python Eliza implementation http://www.jezuk.co.uk/cgi-bin/view/software/eliza
- Weizenbaum 1976, p. 188
- Weizenbaum 1976, pp. 188–189
- Markoff, John (2008-03-13), "Joseph Weizenbaum, Famed Programmer, Is Dead at 85", The New York Times, retrieved 2009-01-07
- Coders at Work: Bernie Cosell
- The Genealogy of Eliza
- Big Computer Games: Eliza - Your own psychotherapist
- Plug & Pray, documentary film featuring Joseph Weizenbaum and Ray Kurzweil
- Avidan, David (2010), Collected Poems 3, Jerusalem: Hakibbutz Hameuchad, OCLC 804664009
- Davidson, Steve (January 1983), "Abuse", Electronic Games 1 (11)
- "lol:> psychoanalyze-pinhead".
- Trans-Tex Software
- McCorduck, Pamela (2004), Machines Who Think (2nd ed.), Natick, MA: A. K. Peters, Ltd., ISBN 1-56881-205-1
- Weizenbaum, Joseph (January 1966), "ELIZA—A Computer Program For the Study of Natural Language Communication Between Man And Machine", Communications of the ACM 9 (1): 36–45, doi:10.1145/365153.365168
- Weizenbaum, Joseph (1976), Computer power and human reason: from judgment to calculation, W. H. Freeman and Company, ISBN 0-7167-0463-3
- Whitby, Blay (1996), "The Turing Test: AI's Biggest Blind Alley?", in Millican, Peter & Clark, Andy, Machines and Thought: The Legacy of Alan Turing 1, Oxford University Press, pp. 53–62, ISBN 0-19-823876-2
- This article is based on material taken from the Free On-line Dictionary of Computing prior to 1 November 2008 and incorporated under the "relicensing" terms of the GFDL, version 1.3 or later.
- A page dedicated to the genealogy of Eliza programs.
- dialogues with colorful personalities of early AI, a collection of dialogues between ELIZA and various conversants, such as a company vice president and PARRY (a simulation of a paranoid schizophrenic)
- Weizenbaum. Rebel at work – Peter Haas, Silvia Holzinger, Documentary film with Joseph Weizenbaum and ELIZA.
- CounterCounseling – Source code in C, Windows
- WoWInterface AGT[dead link] – Automatic Goblin Therapist, an ELIZA-based add-on for the massive online game World of Warcraft
- Eliza Chat Bot – This Chat Bot is an implementation of Weizenbaum's original software
- Eliza, Computer Therapist Online