The prevailing trend is to offload computation from user devices to the cloud. But of late, there is a countermovement — “onloading” computation to the devices themselves, the data source, which we call “on-device computation.” This is true especially for the Internet of Things (IoT), the network of connected objects — anything from coffee makers to heart monitors to jet engines — that use sensors to gather data to drive actions and analytics.
This data is typically offloaded from the sensors via wireless connectivity to local networks and data centers in the cloud for processing. But the massive amounts of data we are collecting today from our physical environment via the IoT — from smart buildings, smart cities, industrial machinery, digital farms, etc. — does not all need to be transferred to servers in the cloud for processing and storage.
Some, if not most, of this data can be kept close to its source for local processing and decision making; this is called “edge” computing, where processing power and intelligence are embedded in, or in close proximity to, the devices generating the data. Typically, sensors on a device collect data that the device may need to take action through its actuators. These actions can vary in their latency, or lag time.
For example, autonomous vehicles need to react instantly as driving circumstances dictate, requiring extremely low-latency actions of the order of 10 milliseconds in a self-driving scenario. For some agricultural livestock IoT applications, on the other hand, we may need to infer if some livestock are showing abnormal behavior and decide on interventions in the order of tens of minutes.
Privacy concerns also point toward onloading — call it the IMBYO phenomenon. In many cases, we want to keep the data “In My Back Yard Only” and not have it leave the premises. Onloading computation to the devices on those premises, and perhaps sending a digest or summary to the cloud, means keeping that important information on devices that you control and trust. This mode of keeping some data close to the source also provides redundancy and backup against cloud outages, lowers cloud costs, and lessens bandwidth congestion, especially for beefier workloads such as video streams.
I am focused on collecting information about physical spaces and things through video and sensors so it can be analyzed in real time to make changes that improve productivity, increase our safety at work and at home, and enhance the energy efficiency of the resources we use. For example, in agriculture, we can sense the soil carbon concentration and decide how much microbiome suspension or organic fertilizer to apply to increase yield in a crop-specific manner. We can analyze streams of video to determine which way a forest fire is spreading, so algorithms can direct crews to the right spots for containment.
To onload computation to devices themselves, it is critical to make the devices reliable, secure, predictable, and as self-sustaining as possible. We are designing algorithms that can reduce the amount of data sent from the data nodes to decrease the energy drain and significantly increase the lifespan of the devices (to avoid the tedium of changing batteries on these devices). We are working on determining how to run demanding computer-vision applications on devices that have much less computational power than the servers in the cloud. These devices are often built as System on a Chip, or SoC. We are also developing algorithmic approximation techniques to balance the accuracy of the computation with how long it takes to run on these SoC devices. This is particularly important in the applications where we need to react fast to the sensor inputs.
The goal is a collaborative learning system — a partnership between sensors, edge computing, and the cloud — where on-premises data and in-memory databases are favored for low-latency applications and made more resistant to adversarial attacks or failures. People have demonstrated, in experimental settings, devastating attacks in which multiple devices are compromised and collude to launch coordinated assaults, leading to complete failure of the autonomous system. Securing our IoT-based autonomous systems against such strikes is vital to self-driving cars, drones in digital agriculture, and many other applications.
My lab, Innovatory for Cells and Neural Machines (ICAN), investigates two fascinating avenues of applied data science and engineering principles: genome engineering on the one side and IoT and edge computing on the other. We are working to decode the computations of living cells, through pattern matching, natural language processing, and graph theory. We are then looking to modify such computations, such as through influencing gene regulatory networks, toward health and vitality. Speculating about future possibilities, we may be able to learn from how these living cells operate in order to design resilient and energy-efficient IoT networks.
We need to develop resilient IoT systems in the event that some nodes and communication links fail or are attacked by adversarial entities. The best-case outcome will be that we run these applications on inexpensive, low-energy-usage devices. Each device will do its part within the federation, aided by algorithms that help it keep pace with the rate at which data is being generated. This will enable all the devices to cooperate, with or without a centralized hub, in large analytics jobs, like decision-making for smarter farms, or real-time driving decisions by an automobile cruising on the freeway.
Somali Chaterji, PhD
Assistant Professor, Agricultural and Biological Engineering
Director, Innovatory for Cells and Neural Machines (ICAN)
Leadership team member, Wabash Heartland Innovation Network (WHIN) for Digital Agriculture
College of Engineering, Purdue University