about
RL-IoT: Towards IoT Interoperability via Reinforcement Learning (arxiv.org)
5 points by Datenstrom on May 7, 2021 | hide | past | pdf | 3 comments on HN

In plain words: A system sends a device's possible protocol messages and learns by trial and error which ones do what, so it can reach a goal without any protocol documentation. On a smart bulb it completed non-trivial patterns in as few as 400 exchanges.

Abstract · RL-IoT: Reinforcement Learning to Interact with IoT Devices

Our life is getting filled by Internet of Things (IoT) devices. These devices often rely on closed or poorly documented protocols, with unknown formats and semantics. Learning how to interact with such devices in an autonomous manner is the key for interoperability and automatic verification of their capabilities. In this paper, we propose RL-IoT, a system that explores how to automatically interact with possibly unknown IoT devices. We leverage reinforcement learning (RL) to recover the semantics of protocol messages and to take control of the device to reach a given goal, while minimizing the number of interactions. We assume to know only a database of possible IoT protocol messages, whose semantics are however unknown. RL-IoT exchanges messages with the target IoT device, learning those commands that are useful to reach the given goal. Our results show that RL-IoT is able to solve both simple and complex tasks. With properly tuned parameters, RL-IoT learns how to perform actions with the target device, a Yeelight smart bulb in our case study, completing non-trivial patterns with as few as 400 interactions. RL-IoT paves the road for automatic interactions with poorly documented IoT protocols, thus enabling interoperable systems.

Giulia Milan, Luca Vassio, Idilio Drago, Marco Mellia
arXiv:2105.00884 · cs.LG, cs.AI, cs.NI · submitted May 3, 2021 · updated Sep 10, 2021
abstract · pdf · html · 9 pages, 11 figures, 2021 IEEE International Conference on Omni-Layer Intelligent Systems (COINS)

add comment on HN

Is this really what it has come to? Do we need to use deep reinforcement learning to make IoT devices useful? Should we really have to deal with such poorly documented proprietary garbage?

Reminds me of the Linux origin story with RMS and the printer[1].

[1]: https://www.fsf.org/blogs/community/201cthe-printer-story201...

Good luck trying to understand my NB-IoT protocol messages then. Raw sensor values, compressed, encrypted, basE91 encoded. No chance for any RL neither AI to understand that. No need to interoperate neither. IoT is a single private sensor connected to a single private receiver. The medium is not the message here.
If I read this correctly, this is a technique for discovery of arbitrary, unknown API. “iot” is too specific. But the former formulation sounds amazing, doesn’t it?