In 1950 Alan Turing, a logician and philosopher, proposed a test of a machine's ability to imitate a human. His Turing test envisaged a human examiner evaluating a conversation with a hidden participant, and trying to deduce whether that participant is another human or an intelligent machine.
The Imitation Game, a film about Turing's life starring Benedict Cumberbatch, and the cult-classic Ex Machina with Dómhnaill Gleeson, both explore the challenge.
But more frequently, the test is in reverse: a machine needs to try and work out whether it is dealing with a human or another machine pretending to be human.
One example is the airlines’ long-standing battle with “screen scrapers”. Screen scrapers are software programs deliberately written by one company – for example, a flight price comparison site – to extract data from another company, such as Aer Lingus or Ryanair, without that company’s permission, co-operation or perhaps even knowledge.
The computer presents a screen as usual but rather than being read by a human, the display is instead analysed by scraping software to extract the target values. Scraping is an efficient way to automatically harvest large amounts of information, particularly since the technology does not require the co-operation of the data owner. It is frequently commercially offensive and often illegal.
Defence
One way in which a machine can attempt to defend itself against screen scraping is through “captchas”. These are short challenge quizzes, which are intended to be quick for a human to solve but challenging for another computer. Examples include being able to decipher deliberately-distorted text, or to select key features within a blurred photograph.
However, many people, including myself, find them highly irritating as they interrupt what you are about to do – reserve a ticket, book a place or fill in an online form.
Screen scraping is not always bad. Most offices contain many computer systems and databases, and frequently need to transfer information between them. Most modern software programs offer interfaces enabling them to become interconnected but it can require additional programming and investment to integrate the systems together. Sometimes it is simpler to allow one system to extract data out of another by mimicking the actions of a human – clicking parts of a screen or filling in fields in a form – and then scraping the data returned. Scraping inside an organisation, or between trusted partners, is legal.
The original form of screen scraping was for text-only screens on display terminals, in which both the input data and results had simple content and format. Web-based forms can now be similarly scraped, but the data may include images and other digitised content. Capture technology has evolved to include image recognition and optical character recognition to read digitally-scanned content.
Office workers frequently use different computer systems: accounts payable, stock control, customer enquiries, sales reports, marketing and corporate social media.
Often a task may involve two or more applications. For example, when processing an item returned by a customer, an email to the customer is generated to confirm receipt of the goods, then the inventory and internal accounting systems are updated, and so on.
In the worst cases, some data may need to be re-entered from one system to another, for example, keying the product codes of the returned goods back into the inventory control.
Mimicking employee tasks
Given the relative ease with which data can now be legitimately scraped from different systems, it is perhaps unsurprising that a software segment has emerged to capture repetitive business processes. Robotic Process Automation (RPA) automatically mimics the steps by which an employee completes a given task, together with the appropriate business rules to follow.
The term may be misleading, since traditional robots are not involved. Rather, a sequence of steps are described in a script: when a customer return is received it can look up their email address and send a polite acknowledgement to them. It will then find the original invoice, extract the stock code and update the inventory system with the returned quantity.
Each step may require data found in a prior step – the invoice number or customer email address – and may require various rules to handle unusual cases, such as “if the stock code appears invalid, try consulting the shipping docket”.
While the scripts of these steps appear to require programming, advanced RPA tools can partially or fully develop their own scripts. They monitor and learn from the behaviour of back-office staff, observing repetitive tasks and suggesting scripts which may be able to automate the work.
Repetitive tasks, with well-defined inputs and outputs and clear business rules, are obvious opportunities for RPA.
In a European start-up success story, two Romanian entrepreneurs in 2005 founded a company, UiPath, in Bucharest which is now one of the global leaders in RPA. The company raised $225 million last July, at a $10.2 billion evaluation, and is now considering a Nasdaq IPO.
RPA technology illustrates one scenario in which a computer can imitate a human, so much so that another computer cannot – and has no need to – tell the difference.