Stefan M. Trenkwalder
IEEE Robotics and Automation Letters, Volume 4, Issue 3, Pages 2722-2729, Jul. 2019.
Publication year: 2019

Abstract

When it comes to describing robots, many roboticists choose to focus on the size, types of actuators or other physical capabilities. As most areas of robotics deploy robots with large memory and processing power, the question “how computational resources limit what a robot can do” is often overlooked. However, the capabilities of many miniature robots are limited by significantly less memory and processing power. At present, there is no systematic approach to comparing and quantifying the computational resources as a whole and their implications.

This paper proposes computational indices that systematically quantify computational resources—individually and as a whole. Then, by comparing 31 state-of-the-art miniature robots, a computational classification ranging from non-computing to non-constrained robots is introduced.  Finally, the implications of computational constraints on robotic software are discussed.

Additional Content

In addition to the presented paper, this section provides an overview of other state-of-the-art computer systems based on their computational power. In particular, three groups of devices are investigated: Internet-of-Things (IoT)/sensor network nodes, microcontrollers, and embedded computer systems.

IoT & Sensor Network Nodes

Sensor networks and IoT uses a large number of nodes. Commonly, a node is used to sporadically measure a physical entity, such as temperature or pressure, and to transmit the data to a basis station, where the data is processed. Nodes are often designed to consume low power to maximise their operation time and to be cost-effective to allow large numbers. Therefore, many nodes provide computational resources similar to severely-constrained robots. 

On this site, 133 state-of-the-art nodes (obtained from [1]) are compared and shown in Fig. 1 and 2. The data can be downloaded from here.

Figure 1 shows a scatterplot of memory index (MI) and processing index (PI) values. Figure 2 shows a histogram of the computational index (CI) values. Based on the presented data, it can be seen that the majority of nodes (97.7 %) are severely-constrained.

Figure 1: Scatterplot of memory index (MI) and processing index (PI) values of 133 sensor & IoT nodes. Green and yellow indicate weakly- and severely-constrained devices, respectively.
Figure 2: Histogram of the computational index (CI) of Sensor & IoT nodes

Microcontrollers

Microcontrollers, also microcontroller units (MCUs), are integrated circuits that contain processors, RAM, ROM, and other components. MCUs are designed to provide all functions needed to control and manage a larger system. They are popular on mobile and low-power devices. Many robots, such as the Kilobot [2], are powered by a single MCU.

On this site, the computational resources of 2768 state-of-the-art MCUs are compared and shown in Figure 3 and 4. The data was taken from the Infineon, Microchip, STMicroelectronics, and Texas Instruments websites and can be downloaded here.

Figure 3 shows a scatterplot of the memory index (MI) and processing index (PI) values. Figure 4 shows a histogram of the computational index (CI) values. Based on the presented data, it can be seen that the majority of microcontrollers (98.1 %) are severely-constrained.

Figure 3: Scatterplot of memory index (MI) and processing index (PI) values of 2768 microcontrollers. Green and yellow indicate weakly- and severely-constrained devices, respectively.
Figure 4: Histogram of the computational index (CI) of microcontrollers

Embedded Computer Systems

This work defines embedded computer systems as a subset of computer systems, where a device was designed for a specific purpose in contrast to general purpose computers—such as personal computers. These systems are used in many aspects of modern life—for instance, networking (e.g., routers), home assistants (e.g., Amazon Alexa Echo or Google Home), mobile phones, single board computers (e.g., Raspberry Pi), and robotics.

On this site, the computational resources of 2326 state-of-the-art embedded computer systems (obtained from [3]) are shown in Figure 5 and 6. The data can be downloaded here.

Figure 5 shows a scatterplot of the memory index (MI) and processing index (PI) values. Figure 6 shows a histogram of the computational index (CI) values. Based on the presented data, it can be seen that the majority of embedded computer systems (99.4 %) are weakly-constrained.

Figure 5: Scatterplot of memory index (MI) and processing index (PI) values of 2326 embedded computer systems. Green and yellow indicate weakly- and severely-constrained devices, respectively.
Figure 6: Histogram of the computational index (CI) of embedded computer systems

Discussion

When comparing the presented systems, it can be seen in Figure 7 that sensor nodes tend to provide the fewest resources. As indicated in Figure~7 (top), this could stem from lower operation frequency (i.e., lower power consumption). It is not surprising that both—MCUs and sensor nodes—populate a similar region as sensor nodes are often MCU-based.

While the populated regions of all types have a fluent transition when considering PI (Figure 7 [top]), it can be seen that MI (Figure 7 [right]) and CI (Figure 8) show two distinct regions similar to the list of robots (black). As described in the manuscript, this probably stems from the deployment of two different technologies (integrated and discrete components). Furthermore, it is interesting to see that the threshold separating severely-constrained and weakly-constrained robots can also be applied to the presented computer systems.

Figure 7: The memory index (MI) and processing index (PI) values of 5258 devices. The devices are the 31 presented robots (black), 2768 microprocessors (red), 133 sensor nodes (green), and 2326 embedded computer systems (blue). The scatter plot (left bottom) shows the distribution of the devices and highlights the threshold between severely-constrained (i.e., C1) and weakly-constrained devices (i.e., C2). The top and the right plots are histograms of PI and MI, respectively.
Figure 8: Histogram of the computational index (CI) values of 5258 devices including robots (black), sensor nodes (green), microcontrollers (red), and embedded computer systems (blue).

References

[1] Wikimedia Foundation (2019). ‘List of common wireless sensor nodes.’ https://en.wikipedia.org/wiki/List_of_wireless_sensor_nodes. Accessed on: 17-February-2019.

[2] M. Rubenstein, C. Ahler, and R. Nagpal (2012). ‘Kilobot: A Low Cost Scalable Robot System for Collective Behaviors.’ In ‘Proc. 2012 IEEE Int. Conf. Robotics and Autom. (ICRA 2012),’ (pp. 3293–3298). Piscataway, NJ: IEEE.

[3] Wikidevi Foundation (2019). ‘List of embedded systems (WikiDevi Semantic Search).’ https://wikidevi.com/w/index.php[..]. Accessed on: 2-April-2019.