An Android app to predict your mood and proactively encourage you!


By Gloria Li and M. Fay Wu

LiveWell is an Android mobile application that gives users tips to be happy! It uses different attributes such as activity (running, walking, standing), weather temperature, and weather (cloudy, sunny) and user inputted data of moods (good, bad) as a training set to predict if a user will feel bad when some of these different factors change.

How does it work?

A user will open the application and be able to input a mood (good, bad) or click the data icon to see a display with the most recent attributes - the last mood, current activity, and current weather. We have a classifier trained using machine learning to recognize patterns in the accelerometer, and stores data in the app's SQLite database of the user's activity (running, walking, standing). We also use OpenWeatherMap's API to pull the latest temperature and weather condition. There will be a trigger for each attribute that would indicate how likely a person would be in a poor mood next. The user will input their mood themselves as often as they want to, and our simple training algorithm will update the triggers for each attribute whenever the user inputs a bad mood. The app will check every set interval (currently 10 minutes) in the background to see if the passively monitored attributes have changed, and if any of them pass a trigger then a notification will pop up to give the user some encouraging messages.

Why LiveWell?

We believe that mental well-being is one of the most important aspects of our lives, and it affects everything we do in school, work, and play. There are pre-existing applications such as mood-recording applications, but they just show a user their past history of moods and leaves it up to the user to determine what to change. We wanted to utilize our rising understanding of the power of data, and passively monitor different attributes that could affect a users' moods. This would give us the ability to use machine learning to predict a users' mood with the goal of giving encouraging tips to the user proactively and before the user is upset!

Challenges & In the Future

This was our first time learning about machine learning and using it, and one of us had never done mobile development before. Thus, we only used a few attributes since we had a lot of challenges setting up the different inputs, algorithms, and displays. In the future, we want to include more attributes, such as period trackers, sleep data, and academic activity, since this could make our prediction model more accurate!

Built with

Try it out