In 1966, Joseph Weizenbaum, a professor at the MIT, wrote a simple conversation program called Eliza, which simulated a Rogerian psychotherapist. Rogerian theory postulates that patients have the answers to their own doubts, fears or problems in their subconscious.
It uses the strategy of returning questions asked by patients to make
them examine their statements and help them to discover the solutions they need.
ELIZA: I am the psychotherapist. Please describe your problem.
PATIENT: I’m sad.
ELIZA: Can you explain why you are sad?
PATIENT: My cat has died.
ELIZA: Is it important to you that your cat has died?
PATIENT: Yes, a lot.
ELIZA: I understand.
PATIENT: What can I do?
ELIZA: Do you ask what you can do for any reason in particular?
PATIENT: Because I don’t want to be sad.
ELIZA: Really you don’t want to be sad?
The programme does nothing more than detect certain patterns or keywords in the patient’s phrases, and use other patterns to make them into questions. If the patient says “X”, the programme answers, “Can you explain why X?” or “Are you sure that X?” or “Do you say X for any reason?”
Using a well-prepared range of patterns, Eliza’s behaviour is quite convincing, at least for a short while. In fact, to the surprise of its creator, some of the users thought Eliza was a real psychoanalyst and became emotionally attached to it.
Eliza was the first of what are now known as chatbots. Despite the name, they are not physical robots, but programs that you can talk to through written messages.
The development of chatbots has been traditionally associated with the Loebner Prize and the Turing Test. In 1950, Alan Turing wrote a paper entitled Computing Machinery and Intelligence in the journal Mind. In it, he asked how we could know, when the time came, whether a machine was capable of thought. His proposal was a controlled experiment in which an interrogator interacts via a chat interface with a human and with a machine. The interrogator can ask whatever he/she wants to either of the two participants. If the interrogator cannot distinguish between them, then the machine is perfectly emulating human behaviour, and therefore we can conclude that it thinks (at least as much as the human taking part in the test).
In 1990, Hugh Loebner created the Loebner Prize, with an award of $100,000 for the first machine that could pass the Turing Test. The competition is held every year and nobody has won yet, although the best systems in each edition are awarded less substantial prizes.
The objective of chatbots that take part in the Loebner Prize is to pass as humans for as long as possible. To achieve this, they must be able to answer questions of all kinds convincingly, and use strategies to avoid detection (e.g. occasionally make a spelling mistake, hesitate before answering a complex mathematical problem, etc.).
What have now become widely known as chatbots have existed for decades under the name “dialog systems”. The main characteristic of dialog systems is that they are focused on a specific task (e.g. buying a plane ticket, carrying out a bank transaction), and give users a certain amount of freedom to ask what they want, if it is within expected parameters.
SYSTEM: Good morning, how can I help you?
USER: I’d like a flight to Paris.
SYSTEM: Which day do you want to fly?
USER: Tuesday next week.
SYSTEM: Where do you want to go from?
USER: From Barcelona
SYSTEM: Looking for flights from Barcelona to Paris for Tuesday 27 June…
SYSTEM: I have found 8 flights that day. What time do you need?
USER: In the afternoon.
SYSTEM: There are 4 flights in the afternoon. The first flight is at 13:30 and the last at 18:55.
USER: How much is the first one?
Current examples of dialogue systems are the assistants Siri (Apple) or Alexa (Amazon). They have some planned tasks that you can ask them to do at any time. The systems can understand what you ask them to do and do it, but you cannot have a conversation outside of the parameters for which the system is programmed.
These dialog systems have been used for some time in customer care services, and more recently as personal assistants. They require complex programming that considers which task(s) need to be resolved, which information the system needs to carry out the task(s), and which ways users may express themselves. They also require a relatively advanced level of language processing. Altogether, they are very costly and not easy to adapt from one subject domain to another.
The current excitement and renewed interest in chatbots is due to WeChat, a Chinese app like WhatsApp. This application offers its corporate users the tools required to connect their WeChat account to a program that automatically replies to clients’ messages. Three hundred million Chinese people used this technology to send their New Year greetings cards. They simply had to send a message to the card company, stating the recipient and the message that should appear. A chatbot received the message, extracted the data, sent the card and billed the sender the right amount.
Due to this success, other social networks have gone to lengths to provide interfaces for their corporate users to interact with their clients via chatbots. We can now speak to chatbots at our telephone company, electricity supplier and bank, not just on websites or over the phone, but also through instant messaging.
Despite this boom, most chatbots connected to social networks still do very simple tasks, such as sending a greeting or telling us the balance on our phone bill. Systems that can be used for a range of complex tasks, such as Siri, are still costly to develop.
The importance of chatbots goes beyond commercial uses for these kinds of developments. Advances in the study of relationships between semantics and robotics are at the centre of new applications in the field of medicine, public transport and safety. The barrier to using language as a way of communicating with machines is about to fall for good. At TALP UPC we are working in this exciting, complex area, which is full of opportunities.
Researcher at the Center for Language and Speech Technologies and Applications (TALP UPC)