Keywords

1 Introduction

In recent years, obesity has become a major health problem in the world that affects people of all ages [6]. Adolescent obesity has increased to epidemic levels in recent decades [6]. It can lead to problems including increased risk of cardiovascular disease, diabetes, and cancer in addition to psychosocial problems, functional limitations, and disabilities. Many attempts have been made to address the adolescent obesity issue that involves taking medication, doing exercise, dieting or playing games.

The main challenge in any healthcare related application lies in both sparking a subject’s interest and then sustaining it to produce sustained improvements. The advantage of using motivation and social connection to motivate versus techniques such as gaming is that friends and social acquaintances theoretically can sustain interest over long periods through social interaction. Game motivators will often lose user interest over time unless continuous novel changes are introduced. Researchers and practitioners have also advocated for a combination of approaches, such as following a diet plan and exercise [6, 7]. While the existence of the above works indicates the past and ongoing efforts to combat adolescent obesity, they are clearly not enough since it is still rising. Researchers have found that adolescent obesity control has a lot to do with combating unhealthy cravings that needs strong will power and motivation at such an age [9].

The emergence of personal mobile devices and the potential for Smartphone applications to improve adolescents’ eating behaviors is promising, given existing evidence that mobile phone-based interventions can influence health-related behaviors. Along this avenue, we have developed an application that targets adolescents towards combating obesity. In order to motivate unfit adolescents towards healthy eating, our research tries to provide them with alternative tasty yet healthier food options using a mobile application.

Our Contribution:

In this paper, we present the design and development details of a mobile application, Healthy Hankerings, which has the potential to help deal with adolescent obesity by motivating its users to choose a healthier food option when they have craving for unhealthy or junk food. The idea is based on the fact that cravings are often unhealthy, and providing healthy options could potentially help adolescent satisfy their cravings without eating unhealthy foods. To find a healthy recipe, the application uses a recognition algorithm, a decision tree based learning algorithm that considers user’s meal intake history and current cravings.

Features in Our Application:

Healthy Hankerings takes in users’ personal food hankering at any given time and provides healthy recipes that fit users’ immediate preference. It lets people discover healthy recipes based on their current cravings. In addition to this main feature, we included a grocery store locater and a custom recipe maker, taking a picture of their prepared meal and a social connection with peer feature. In our application, rather than entering in a specific food item, the user goes through a quick and fun process of selecting various flavors. We then run a query in our database, selecting recipes that are healthy and that match with the user’s preferences. Another innovative feature of our app is that it completes the entire cycle of creating a food dish. We provide the recipe, the directions to the grocery store, option to share in social platform to motivate connected friends in healthy eating.

The rest of the paper is organized as follows: Sect. 2 describes relevant related work. Section 3 briefly presents the development details of our application. Section 4 presents the prototype implementation of the application. Section 5 presents usability study results of the prototype’s user interface. Finally, Sect. 6 concludes the paper.

2 Background and Related Work

The use of smart-phones as a tool for achieving improved healthier lifestyle is on the rise, which makes mobile health technology a very promising field. There are several noteworthy apps which had significant research invested behind the development i.e. Kalico [1]. This app helps users to instantly make a healthy choice in restaurants while keeping within the budget. A study on effectivity of mobile technology to support healthy eating habit among ethnic minority students [5] proved that such interventions facilitate healthier practices using data gathered from this project. MyBehavior [4] is one such recommendation system that operationalized theories from behavior change literature i.e. low-effort [3] and self-efficacy [2] into machine-learning optimization functions to generate suggestions based on automatically logged data from the phone sensors. A 14-week study on 16 participants showed significant improvement in physical activity and dietary measures while using this app. There are a number of apps that are also focused on recipes. For instance, there is ChefTap, an app that imports recipes from websites. ChefTap is different from our app because the user selects specific recipes. It is more about organizing recipes than finding new ones. Another competitor app is Fooducate Healthy Weight Loss. Fooducate allows user to scan barcodes to see what is in your food. It has the capability to provide healthy alternatives that is what we aim to do as well. While Fooducate focuses strictly on weight loss, which has been found to be demotivating after some time to adolescent user base, Healthy Hankerings is a more casual way to help user find a healthier recipe.

3 Design and Development of Healthy Hankerings

The design diagram of Healthy Hankerings application is shown in Fig. 1. The User Interface (UI) module resides in the user’s device and it works like a client application. The UI takes input from the user and communicates with a Decision Maker (DM) module in cloud. The DM is the most important module of the application since this is in charge of using a decision tree based learning algorithm [10], which generates the keywords (i.e. ingredients, cuisine and etc.) to search the database for a healthy meal recipe that satisfies user’s current cravings. The DM module communicates with the Database module retrieves recipe result, which is then replayed back to the user.

Fig. 1.
figure 1

System design and architecture of Healthy Hankerings

The home screen of the application is implemented with a button in the center and a menu in the top right corner allowing the user to access the grocery store finder and the custom recipe creator. Within menu, there is two other activities-one corresponding to meal history and another corresponding to sharing in social network. In the main activity, there is a button “what am I hankering?” which in turn takes user to enter their cravings in another activity. The taste, spice, and cuisine activities are implemented with radio buttons. After the user submits all the craving options, they are saved using shared preferences. The recipe results activity is started, which gets the user input from shared preferences. The user input is passed on to the Decision Maker (DM) module in the cloud. The DM module then uses user cravings input along with users’ previous meal intake history to create a decision tree. This decision tree then generates some key ingredients, which is then used to run a query on the database using an HTTP get request. An HTTP response, along with a healthy recipe, generated based on the learned DM modules output, is sent back to the activity, which is parsed to display the title, a picture, and a link to the recipe. The development details of the app are briefly described in the following subsections.

3.1 Decision Tree Based Learning to Select Healthy Recipes

We use Decision Tree to train our DM module, which allows us to generate healthy keywords to be used to search the database. Decision tree are either classification trees or regression trees. If the sample for the training is given then the decision tree algorithm make trees, which has leaves containing the classification results. With a proper training dataset, the decision tree going to use a correct path from the root of the tree to the correct leave by taking step by step decisions in every branches beforehand.

The DM module is naïve at the beginning without any prior history input. The users are encouraged to enter their consumed meals couple of times a day which is stored in the cloud for training the DM. With time, as the DM module learns more information (i.e. consumed meals) about user, it can train itself to provide better key ingredients which in turn can search better recipes from the database. Since the DM does not have any meal history the first time, it uses some random key ingredients along with user craving input to generate a decision tree. Every time, user searches a healthy recipe using this app is also stored in DM module for future training. For example, if the user has consumed French fries in the past and the current craving of the user is (savory, medium spicy, American cuisine), then the decision tree in our case uses vegetable, fry, spicy as a the key ingredients to search in the database. When a query is made with these key ingredients, the database in turn determines Spicy Zucchini Fry as the output and redirects this recipe to the user.

3.2 Finding Recipe Using Yummly Database

The Yummly database is an integral part of our application. Users can select their desired tastes, spice levels, and cuisine and then receive recipes. The DM module of Healthy Hankerings connects to the Yummly database by performing an HTTP Get request, passing in the information provided by the DM module. Connecting to the database involves opening an HTTPClient through android and sending a request to the Yummly API The response is a JSON object which we then parse and create POJOs (Plain Old Java Objects). Once we have the list of recipes, we are then able to display a list of recipes on the results page. Results are shown along with a picture of the returned recipe and a link to the yummly site where the user can view the recipe in its entirety.

3.3 Custom Food Imaging with Camera Sensor

In our application, we have used camera sensor for our custom recipe feature. We allowed users to be able to take a picture of their own recipe and add its information to a local database so that it could be found after a new search. We implemented a camera feature that took a picture and displayed that image of the custom recipe page by launching camera intent and saving the image to the device and take that source’s name to the image view.

3.4 Social Connection Capabilities

As we described in the application design, in order to allow for social interaction the menu activity of the application displays all stories posted by friends of the active user. The users are allowed to share the healthy recipes they have searched. They are also allowed to share the picture of the healthy meal prepared using the recipe so the connected friends can get motivated and interested to try this instead of the unhealthy meal. For example, in case of our spicy zucchini fries, the shared post will contain the recipe link of spicy zucchini fry. The post will also contain “Try zucchini fry instead of French fry”. If a user taps on a friend’s name within the news feed, that user’s profile is displayed with latest updates from last two days. If there is no update from a friend in last two days, the activity provides an option to the user to post a “poke” message with any new healthy recipe tried within last 7 days. The healthy recipe list tried in last 7 days are displayed as a list to the user which can be selected and posted on this friend’s profile with the hope that the friend might be interested in trying this meal.

Our social connection feature also maintains a scoreboard, which lists the top 5 users who have searched for most number of healthy recipes in a week. This feature helps the user to be in a healthy competition where they want to try different healthy recipes. In future, we would like to make the scoreboard more efficient by considering who have posted picture of a prepared healthy meal, and who have helped their peers by posting a poke message.

4 Prototype Implementation

As a first step towards validating our proposal, we created a prototype application that allows users to navigate through the various activities. In our app, the home screen includes a large button in the center with our logo. Pressing this button starts the recipe discovering process. After starting, there are three screens of food options (corresponding to taste, spice and cuisine) that require selecting one option per screen. Once complete, the user presses the “What am I hankering?” button to get the recipe.

Since, the decision maker module has no user data points the first time, it presents a recipe based only on the user choice of taste, spice and cuisine. With time the DM module learns user meal intake history and uses those to train the decision tree to provide better keywords to search the database for better recipe matching user’s interest. The recipe screen shows the name of the recipe, a picture, and a link to the ingredients and instructions. To train the decision maker module, the user can go to the meals tab and enter various meals taken at different times of the day. Once some of the meal items are entered, the data is used to train the model and from then on the decision tree is used to determine a healthy recipe considering user’s previous food choices and current craving (taste, spice, cuisine). At any point the user can press the menu button in the top right corner of the screen to access the grocery store finder page, custom recipe page and social connection page. Figure 2 through Fig. 4 shows the various screens of our prototype (Fig. 3).

Fig. 2.
figure 2

Select taste, spice, and cuisine to find recipes for craving

Fig. 3.
figure 3

[left to right] display recipe, taking picture, creating a custom recipe

Fig. 4.
figure 4

[left to right] social connection page and scoreboard

5 User Study of the Prototype

In order to evaluate the usability of the Healthy Hankerings prototype application’s user interface, we have used the cognitive walkthrough strategy. This strategy [8] encompasses one or a group of evaluators who inspect a user interface by going through a set of tasks and assess its understandability and ease of learning. The survey included the 25 people. The participants were of three different age groups with a questionnaire of 17 questions about the feature of the application. The questionnaire contained questions about the usability of the prototype and the overall importance of certain concepts related to the effectiveness of the application. Figure 5 shows the survey results. From the graph (Fig. 5(a)) it is evident that a user-friendly interface is the most important feature according to the users. The category shown in Fig. 5(b) reveals that the prototype requires enhancement in data representation and promptness from which we can infer that we need to minimize our computation in the cloud decision maker module and query searching in the Yummly database. Both of these issues are part of future research directions.

Fig. 5.
figure 5

Usability study results of Healthy Hankerings app

6 Discussion on Evaluation Methodology

In order to evaluate the effectiveness of Healthy Hankerings application in combating obesity, we intend to conduct human subject studies. We are currently applying for IRB approval to conduct such studies. There are numbers of NIH initiatives to support obesity prevention in the past have specified that the primary outcomes must include a measure of weight and/or Body Mass Index (BMI) as one of the primary outcomes. For our study, we intend to study middle/high/college school students. We plan to recruit sample with various age, BMI index, height, race, educational backgrounds. Furthermore, we plan to recruit two groups of students: those with normal weights and those with weight/obesity issues. For both, we would let them keep a track of their food/meal intakes weeks before trying our applications so that we can investigate if our application provides motivations for them to change their meal preferences.

7 Conclusion

In this paper, we present the design and development of an application, healthy hankering, which is targeted to help control obesity by promoting and motivating healthy eating among young adolescent. A future research direction is to include a feature of physical activity to help control obesity. We plan to have a participating user invite friends to view his/her physical activity achievements and meal intakes so they can form teams to compete with one another to achieve a certain weight goal milestone. Additionally, we intend to conduct a large-scale evaluation of our application with a control group consisting of population with normal weight and over weight so we can determine if our system can have an impact on the target population.

For citations of references, we prefer the use of square brackets and consecutive numbers. Citations using labels or the author/year convention are also acceptable. The following bibliography provides a sample reference list with entries for journal articles [1], an LNCS chapter [2], a book [3], proceedings without editors [4], as well as a URL [5].