The user plays a game with Fitness Fortuna, in which the user has to beat the step count value predicted by the HTM model within the next time-step. If the user beats the model's predicted step count by exercising/walking/working out within the next time step, rewards (currently points) are given for the user's accomplishments. The user's health and fitness levels improve as they beat the step-count predictions.
It has been only 3 weeks since we started learning about CLA (HTM) and NuPIC. We were instantly intrigued by the capabilities offered by this new learning algorithm modeled after the human Neocortex.
We wanted to use this framework to make a consumer facing application that will be useful throughout the day with minimal user interaction. We quickly learned that temporal data with high velocity is very suitable for HTM learning and hence chose a wearable (Apple Watch) to get Step count data, use it to make predictions about user's activity patterns.
After a bit of brainstorming, we decided to make the user play a game with the HTM algorithm. By participating in the game, the user is providing active feedback to the HTM about stepcount and activity pattern, thereby making the prediction more accurate over time.
What it does
This is an iPhone app that collects real-time step count data from HealthKit (Apple Watch+iPhone) and feeds it to a server running HTM prediction and anomaly detection using NuPIC. The server return a prediction for the number of steps in the next time interval, back to the app.
How I built it
Server: NuPIC, Python iPhone: Swift
What's next for Fitness Fortuna
- Combine multiple data source from wearables
- Make effective use of anomaly detection inference
- Natural language user interface to humanize the HTM algorithm