When IoT Meets Artificial Intelligence

The Internet-of-Things provides us with lots of sensor data. However, the data by themselves do not provide value unless we can turn them into actionable, contextualized information. Big data and data visualization techniques allow us to gain new insights by batch-processing and off-line analysis.

Real-time sensor data analysis and decision-making is often done manually but to make it scalable, it is preferable to be automated. Artificial Intelligence provides us the framework and tools to go beyond trivial real-time decision and automation use cases for IoT. In this and the next couple of blog posts, I will explain how Waylay has developed a platform that uses concepts from artificial intelligence and applied those to the use case of smarter decision making in IoT.

Big data and real-time reasoning

Before we go there, it is important to understand the difference and relationship between big data and real-time reasoning. Take the car as an example. Big data analysis of sensor data retrieved from many cars will provide statistical information on reliability of the particular components and suppliers. Decision making will allow deciding whether there is need for maintenance of one particular car, judging the impact of a broken component in that car, etc. Obviously, insights retrieved via big data can be reused and integrated as part of the reasoning process. Let’s now see how Waylay uses AI techniques for IoT applications.

AI in IoT

The rational agent is a central concept in artificial intelligence. An agent is something that perceives its environment through sensors and acts upon that environment via actuators. For example, a robot may rely on cameras as sensors and act on its environment via motors.

A rational agent is an agent that does ‘the right thing’. The right thing obviously depends on the performance criterion defined for an agent, but also on an agent’s prior knowledge of the environment, the sequence of observations the agent has made in the past and the choice of actions that an agent can perform.

An agent consists of an architecture and a logic.

The architecture

The architecture of an agent typically consists of a computing device with physical sensors and actuators. The architecture allows to ingest sensor data, run the logic on the data and act upon the outcome. The logic itself is the heart of the agent that computes and reasons based on the available data and its knowledge of the environment.

Waylay has developed a cloud-based agent architecture that observes its environment via software-defined sensors and acts on its environment through software-defined actuators rather than physical devices. The advantages of software-defined sensors and actuators are manifold and will be explained in a future blog post. Suffice it to say here that a software-defined-sensor can correspond not only to a physical sensor but can also represent: social media data, location data, generic API information and many more.

The logic

At the core of the agent architecture is the logic. Waylay has chosen a graph modeling technology, Bayesian networks, as the core logical component. Graph modeling is a powerful technology that provides the flexibility to match the environmental conditions observed in IoT, but more on that later.

Finally, Waylay exposes the complete agent as a REST service, which means the agent, sensors and actuators can be controlled from the outside, and the intelligent agent can be integrated as part of a bigger solution. To sum it up, Waylay has developed a solution for real-time decision making in IoT applications. It is based on powerful artificial intelligence technology and its API-driven architecture makes it compatible with modern SaaS development practices.