human-centered design with the use of machine learning

Designing with AI

my menu

Introducing myMenu, a user-friendly AI-based meal planner that dynamically adjusts to individual goals, preferences, and activity levels. Powered by a supervised learning model and extensive food databases, myMenu creates personalized weekly meal plans tailored to users' lifestyles and nutritional needs. By continuously learning user preferences and considering metabolic changes, myMenu maximizes the likelihood of goal attainment.

SYSTEM DESIGN

Machine Learning Diagram

The machine learning algorithm uses the user's static and dynamic user data along with pre-labeled derived from food databases to deliver a weekly meal plan. Static data includes gender, age, weight (can be automatically updated via Smart Scale), height, specific diet options (such as Keto or Low-Carb), a section to define food allergies or general dislikes, how many times a day the user eats, and the user's weight goal. The system also allows users to select an initial exercise/activity level.

myMenu also utilizes the user's dynamic data. Dynamic data includes calories burned via updated biometrics from a smartwatch or step counter (Apple Watch, Fitbit, etc.) to measure the user's actual activity and provide the user a way to tell the AI that they don't like a specific meal recipe. 

BMR and Caloric Calculations

Some initial calculations must be considered before the AI can build meal plans. First, the AI needs fundamental values to determine the person's caloric requirements. The standard Basal Metabolic Rate (BMR) equations for men and women are used:

  • Women: BMR = 655 + (4.35 X weight in pounds) + (4.7 X height in inches) – (4.7 X age in years)

  • Men: BMR = 66 + (6.23 X weight in pounds) + (12.7 X height in inches) – (6.8 X age in years)

Next, the system uses the dynamic activity data from the activity tracking biometrics reported by the user's smartwatch. This determines which category below the user should be placed in for their caloric requirements about the user's goals. For instance, the following equations are used for the "Maintain Weight" goal in the user's static data section: 

  • Sedentary (little or no exercise): BMR X 1.2 = daily calorie needs

  • Lightly active (light exercise one to three times a week): BMR X 1.375 = daily calorie needs

  • Moderately active (moderate exercise three to five times a week): BMR X 1.55 = daily calorie needs

  • Very active (hard exercise six to seven times a week): BMR X 1.725 = daily calorie needs

  • Extra active (very hard exercise/sports/physical job): BMR X 1.9 = daily calorie needs

AI Decision Tree

The values in the equations are adjusted accordingly for weight gain or weight loss goals. Using these calculations and the user-defined meals per day, the AI navigates a decision tree to determine the appropriate meal recipes to recommend for users by referencing the pre-labeled database. The result is a weekly meal plan specific to the user's biometrics and goals. 

Persona Storyboard

UI Design

UI Design Summary

For the UI, we prototyped two of the three sections in the myMenu application: myMeals and myProfile. These three sections are accessed by the toolbar at the bottom of the myMenu app.

The app always opens to the home screen with a daily motivational quote to help inspire the user and keep them consistent with their goals.

In myProfile, users enter some initial data: their name, their birthdate (that determines age), gender, height, weight, any allergies or specific dislikes of ingredients or food, their initial activity level, their goal, any particular type of diet (e.g., Keto), and how many meals per day they prefer. Users may edit any of these settings at any time. 

myMeals shows the weekly meal plan generated by the AI. The UI is scrollable, and tapping on a meal will reveal its recipe card. Users can use the thumbs-down button in the weekly meal plan or the recipe card to tell the app they are dissatisfied with the meal selection.

Once the user marks the meal as disliked, the app displays a series of questions for the user to answer to help the AI learn more about the user's meal preferences. Users can select either the meal category (Soup) or specific ingredients.

The AI then references past and present preferences, queries the pre-labeled database, and generates a new meal in the old slot.

Evaluations, Findings, and Design Changes


Final Thoughts & Pitfalls


Determining how the AI would work and developing a decision tree was difficult. We have a general idea of how AI works, but applying it to a design seemed arduous. Having more experience or perhaps taking an AI class before this might have helped with this design aspect. Designing the AI in relation to HCI/UXD wasn't as tricky. 

We also acknowledge some user segments that the design excludes, requiring future considerations for those segments. One segment could include people with specific medical conditions, such as diabetes, where the AI would need to consider users' insulin levels in relation to diet and goals. This may be included in the calculations by using modern-day smart insulin monitors. Another segment might be the trans or transitioning communities, where identifying as one gender over another would also affect the calculations of calories in relation to their goals. 

Overall, we believe the design is a possible start to an actual product. The design requires accurate AI and UXD testing, as there are likely variables and considerations we haven't considered that would be tackled in iterating the design. However, we are confident that using dynamic biometric data will help ensure users have good meal plans that meet their caloric needs for their specific goals. 

Documents, Materials & Downloads