The most natural way for human beings to interact is through words and over recent years technology has made it possible for machines to understand natural spoken language. At present this understanding is restricted to simple direct commands and they cannot yet capture the twists and turns of human intelligence such as double meanings.
Nevertheless, the ability to understand simple direct orders is already more than enough to enable us to direct IoT devices.
Advantages
Chatbots have a number of advantages over other interfaces:
- They are reactive and proactive. As paradoxical as it might seem, they can alert us about incidents and notifications we need to be aware of without having been asked to do so, and they can also limit the actions we want them to take (reactivity).
- They are goal-oriented. While the milestone of chatbots such as Amazon’s Alexa and Apple’s Siri is one day to have a natural conversation with the user, at present they have a fairly restricted set of commands which have to be programmed and this means we can grow them wherever we want.
- They are deliberative. We can have a ‘conversation’ – albeit limited, at least for now – with them in which they will respond to our requests and questions.
- They adapt. As we will see later on, artificial intelligence-based chatbots can ‘grow’ to cover new situations we teach them or which they may even work out.
- They are mobile. We don’t necessarily have to be right next to the object for it to “listen to us” since we can interact with it using a remote device via the cloud (we will explain this point below).
- They can be supplemented with a text interface. It won’t always be possible to use your voice; for example, grabbing your phone in the middle of a meeting to dictate to a chatbot would undoubtedly be considered extremely impolite. Many chatbots allow combining natural speech interaction with an alternative text interface which enables the user to operate them silently.
The cloud; an enabler of natural language use
Volume 2 of the Internet of Things Development Study 2017 says that more than half of developers use the cloud to connect their IoT devices to the web and to their data processing and control systems.
This architecture is an ideal opportunity to implement chatbots in their control. That’s because the only part of the chatbot’s technology which needs to be implemented locally is its mechanisms for capturing the user’s voice and the minimum processing to get it to the cloud used by the system. Once in the cloud the results will be processed and sent back, also as speech or as instructions to generate it, and the IoT device only needs to have the media to play it.
One last decision: AI or rules?
Broadly speaking there are the two kinds of chatbots available. The first are based on artificial intelligence and hence more complicated yet also more complete and able to evolve. However, they are also more prone to operational problems due to decisions taken erroneously. The second are based on a set of fixed rules and are more secure yet also more limited and do not have the ability to grow on their own.
For the second type you need to specify a closed set of voice commands which they are able to ‘grasp’ and process. By contrast, artificial intelligence-based chatbots can analyse and ‘understand’ natural language, obey new commands and indeed create new scenarios thanks to the adaptability we have seen above.
However, the maintenance and cost of AI-based chatbots are higher. In this case you might also consider using a commercial platform open to third parties such as Amazon’s Alexa and Google Now discussed above.
This usage scenario does not interfere with or prevent the use of your own chatbot specific to your device.
The IoT Solutions World Congress to be held in Barcelona from 29-31 October will include exhibitors that develop natural language processing solutions which you can use for your IoT project.