About Eliza and Friend

Implementing artificial intelligence by means of programmed computers received much attention already in the 1950's. The famous British computer science pioneer Alan M.Turing published in 1950 an article, Computing machinery and intelligence. Mind, 59, 433-460, in which he formulated a test of a machine's ability to exhibit intelligent behaviour equivalent to, or indistinguishable from, that of a human. To pass the test, the machine has to perform so well that the human participant in the tests is unable to decide whether the communication received comes from the machine or an human being.

At MIT in US, several groups worked on artificial intelligence and related subjects. Joseph Weizenbaum was particularly interested in what was referred to as computational linguistics. In an article, Communications of the ACM, Vol. 9, #1 (January 1966): p 36-45., he reported on a program, Eliza, developed to illustrate an approcah to computational linguistics. Even though its distribution was limited at that time, it was widely tested and discussed. The name was inspired by the Phygmalion character. Fifty years later, we have more powerfull programs for artificial communication, but programs similar to the original Eliza can still be entertaining even though they do not pretend to pass the Turing test.

The Eliza programs are based on the 4 steps:
1. The user's input text in response to Eliza is preprocessed to standardized terms.
2. The standardized text is parsed and a list of all words in the user input is generated.
3, Each word in the list is compared with a stored vocabulary of keywords and matches are collected. Associated with each keyword in the list is a ranking and a set of alternative answers from Eliza. By means of the ranking and processing rules, a keyword is selected and an Eliza answer from the alternatives is chosen.
4. The chosen answer are post-processed to obtain a better syntactical structure and Eliza's answer is displayed.

A large number of implementations following the Weizenbaum scheme have been prepared and published. A script from http://www.chayden.net/eliza/instructions.txt has been central for the present Android implementation.

Return to introduction