by Ricardo Fernández Serrata
Similar to A9-Pie Adaptive Brightness. It's machine learning but without neural network. It generates a personalized brightness map based on system brightness changes and automatically sets the brightness based on that map and the sensor's output. It also interpolates to fill null points.
This is targeted at devices that have A8 or earlier, users who want a lite edition of Adaptive Brightness, and/or low-end devices.
Nothing is hardcoded (except the precision reducer and update interval, which are 24 and 1 respectively), so it has optimal compatibility. The precision reducer is needed to reduce memory usage, processing, training and error of discerning between user and flow.
The For Each block isn't energy-efficient here because it scans the entire user map to update the entire interpolant map instead of just the closest values to the new value in the user map. An optimized approach (without For Each) requires ~4 more blocks and some complex expressions that I don't know how to do, so this flow is the best possible non-premium approach.
Future: Use of shell scripting or JS on a self-closing Web Dialog, to do complex yet efficient computation, so that battery life improves
Reviews and ratings can be submitted in the app.