German researchers have developed a program translating speech into computer code allowing people to create their own apps using natural language.
The tool created by computer scientists at the Karlsruhe Institute of Technology, Germany, automatically orders commands in the way to be executed by a computer, overcoming major shortcomings in people’s verbal descriptions, which are not always computer friendly.
“We want to get away from complicated rules for users – this is what programming languages are – towards smart computers that enter into a dialog with us,” said Mathias Landhäußer, scientist of KIT’s Institute for Program Structures and Data Organization (ITP).
“Let’s have a look at the sentence ’Before the car starts, the garage door opens.’ In our everyday language, this description is quite usual,” Landhäußer said.
Such a command would be perfectly understandable to a human listener. However, a computer wouldn’t be able to understand that the part of the command which comes first, should actually be taking place the second. As a result, the car would crash into the closed garage door.
”If such a chain of actions is not envisaged by the program, nothing happens in the best case. In the worst case, the computer crashes,” said the scientist.
To overcome the problem, the scientists taught the new software to analyse time-related signal words that indicate that the spoken text does not describe the process order in a strictly linear manner. Such signal words indicate whether something takes place before or after, first or last, irrespective of the information’s position in a sentence.
The computer scientists allocate logical formulas to these words in order to generate a chronological order in the source text. When applied to the example given above, the formula for the signal word “before” moves the main clause automatically to the front. The result is: The garage door opens before the car starts.
The researchers believe that teaching computers to understand people is a more viable approach than trying to make people to speak computer friendly. The German team ran experiments with people without programming knowledge which have shown that not only do people not give commands in a chronological, they also tend to use synonyms, which are clearly understandably to humans but not to computers.
“It is our objective that the computer adapts to the way the user speaks, and not the other way around,” Landhäußer said.
The programme created by the KIT team could serve as a natural language interface for any type of application. In the first phase, existing apps and programmes would only be operated using spoken language before moving to the programming stage.