In today's fast-paced world, emotional intelligence has become a crucial aspect of maintaining mental well-being. As technology continues to evolve, AI-powered mobile apps are playing a significant role in revolutionizing mood tracking and promoting emotional awareness.
Introduction
My journey began during my second year of university, where I had the opportunity to work on a project that aimed to develop a mobile app for mood tracking – "iMate". This innovative concept strives to be a mental health assistant for students and young people, helping them track their emotions and focus on mental health awareness.
Features
The iMate app is designed to provide users with a personalized experience. Key features include:
- A journal that tracks the user's mood over time
- Breathing exercises to ease anxiety
- A Profile and Account system for logging in, saving, and customizing the user's experience
- Resources to support mental health
The Software Architecture
To bring this vision to life, my team and I used C# as our programming language. We opted for a mobile app due to its portability and widespread adoption – with 98% of UK adults aged 16-24 now owning smartphones.
We utilized the Maui framework for the frontend and ASP.NET with a PostgreSQL database for the backend API. While time constraints limited the project's scope, we were able to develop a solid foundation that can be built upon in the future.
Determining Mood
Determining someone's mood is a complex task that requires a deep understanding of human emotions. We explored various models, including the Circumplex model and the PAD (Pleasure-Arousal-Dominance) model. The PAD model measures three scales: pleasure-displeasure, arousal-nonarousal, and dominance-submissiveness.
To implement this, we used a questionnaire based on the NHS Core-10 set of questions and extrapolated a score using a decision tree-style algorithm. Our implementation manually built a decision tree, which was traversed based on user answers to determine their mood category.
Implementation
To determine the user's mood, we employed a k-Nearest Neighbours (kNN) algorithm to decide which most closely aligns with the given moods. We used a simple kNN classifier for this purpose, outlined below:
The kNN algorithm calculates the Euclidean distance between points and returns the closest match based on the predefined dictionary of mood categories.
By leveraging AI in mobile apps like iMate, we can unlock emotional intelligence and promote mental well-being. With its unique features and innovative approach to mood tracking, "iMate" is poised to revolutionize the way we manage our emotions and prioritize mental health.