Signaloid C0-microSD
Use Case Family:
Robotics and Sensors
Use Case
Uncertainty Quantification of Sensirion SHT4xIAnalog ADC Conversion Routines
The Sensirion SHT4xI-Analog is a temperature and humidity sensor with an analog interface. Sensors such as the SHT4xI-Analog are an important part of many industrial, manufacturing, and autonomous systems. This use case example quantifies the ease of implementation and the speed of execution, of automating the uncertainty quantification (UQ) of sensor data conversion firmware for the SHT4xI-Analog. The evaluation runs the software of the use case over an instance of the Signaloid Compute Engine. The output of the execution is both the usual calibrated temperature or humidity output as well as programmatically-accessible information on the uncertainty of the calibrated temperature or humidity outputs as a function of the measurement uncertainty in the raw sensor transducer voltage output. Such UQ can provide valuable design-time as well as real-time safety information. The implementation overhead and execution cost of the status quo method of Monte Carlo simulation however discourages many organizations from implementing UQ for sensor data conversion routines.
Signaloid's technology makes it possible, for the first time, to take existing transducer output calibration firmware and perform uncertainty quantification on it, with low engineering effort and with low computation overhead. These benefits open the door to pervasive implementation and use of UQ, even permitting real-time uncertainty quantification within edge-of-the-network autonomous systems.
For the Sensirion SHT4xI-Analog data conversion routine firmware, an implementation on the Signaloid C0 processor runs over 24x faster than an already fast C-language Monte-Carlo-based implementation of the same model running on an AWS r7iz high-performance instance. This makes it possible, for the first time, to consider deploying a low-power implementation of real-time uncertainty quantification using edge-of-the-network versions of Signaloid's technology, for safer temperature and humidity measurement.
Plot (see Note 1 below for details) of output distribution when running on Signaloid C0Pro-M core core that provides the 24x speedup.
Plot (see Note 1 below for details) of the output of an 250k-iteration Monte Carlo for this use case. This Monte Carlo iteration count provides the same or better Wasserstein distance to ground truth (large, converged) Monte Carlo as execution on Signaloid C0Pro-M core (which is 24x faster).
Plot (see Note 1 below for details) of ground truth (1M-iteration) Monte Carlo. The underlying distribution representations are not literal histograms.
Note 1:
The underlying distribution representations are not literal histograms: The distribution plots use an adaptive algorithm to render a mutually-consistent and human-interpretable depiction for both the Signaloid distribution representations and the Monte Carlo samples, to permit qualitative comparison.
Note 2:
Because Monte Carlo works by statistical sampling, each set of multi-iteration Monte Carlo runs (e.g., each time a 200k-iteration Monte Carlo is run) will result in a slightly different final distribution. By contrast, the results from Signaloid's platform are completely deterministic and yield the same distribution each time, for a given Signaloid C0 core type. The performance improvement over Monte Carlo results above show the performance speedup of running on Signaloid's platform, compared to running a Monte Carlo on an AWS r7iz high-performance AWS instance, for the same quality of distribution while accounting for the variations inherent in Monte Carlo. To compare the quality of distribution, we run a large Monte Carlo until convergence (e.g., 1M iterations) and use this as a baseline or ground truth reference for distribution quality (not for performance). We then compare performance of the Signaloid solution against a Monte Carlo iteration count for which the output distributions of 100 out of 100 repetitions are all at smaller Wasserstein distance (than the Signaloid-core-executed algorithm's output distribution) to the output distribution of the baseline reference. Intuitively, this analysis gives the Monte Carlo iteration count that results in an output distribution that is never worse than the Signaloid-core-executed computation's output distribution. 24x speedup achieved on a Signaloid C0Pro-M core for relative humidity conversion routine. 31x speedup achieved on a Signaloid C0Pro-S core for Celsius temperature conversion routine. 27x speedup achieved on a Signaloid C0Pro-M core for Fahrenheit temperature conversion routine. Performance data based on Spring 2024 release of Signaloid's technology.