Ontology-based Daily Menu Recommendation System for Complementary Food According to Nutritional Needs using Naïve Bayes and TOPSIS

Babies begin to be given complementary feeding at the age of 6 to 24 months. Complementary foods given to babies need to meet nutritional needs according to their ages. Since, at these ages, babies are just learning to eat, it is necessary to plan a complementary food menu referring to the nutritional needs and the baby and mother's preferences. It is certainly not an easy thing for a mother. Therefore, a recommendation system is needed to determine the baby's daily menu according to those all. This research proposes a complementary food menu recommendation system that considers the balanced composition of three significant nutrients (carbohydrates, protein, and fat) in the diet. It also takes into account the baby and mother's preferences. The ontology contains Knowledge-based about food and its nutritional content and the nutritional needs of babies according to their ages. Naive Bayes is used to prepare menu options according to user preferences. TOPSIS method is used in this study to provide optimal recommendations regarding nutritional balance and user preferences. Several mothers who have had babies aged 6-24 months and mothers of babies aged 624 months were asked to test the recommendation system. The results of the usability testing of the system using SUS showed a good level of user satisfaction. Keywords—Calorie; complementary food; babies; Naïve Bayes; nutrition needs; ontology; recommendation system; SUS; TOPSIS


I. INTRODUCTION
Even though food is a basic necessity of human life, deciding what kind of food to be eaten is sometimes not easy. Many criteria should be taken, such as preferences, health issues, cultural and religious issues, and others that are individually different-having more criteria and alternatives to be considered means having more complexity. Nevertheless, using computer applications has turned to be a solution.
A recommendation system is a computer application that can be used to recommend anything favorable for users, including foods. Some researchers formulated applications to suggest food for different typical users and different intentions. Some examples are [1] recommends menu by considering the user's preferences and restrictions, [2] predicts the days required for a person to gain a healthy BMI status with the recommended food, and [3] suggests food should be given to which patient base on the disease and other features, and many more.
Like adult foods, determining children's foods is not a simple matter. It can even be more serious since they need appropriate nutrition for optimal growth and development.
Having improper intake can cause malnutrition problems and even death. However, based on some facts, for many different reasons, it is ignored. In the article [4], it was written that 67 babies were reported to have died due to suffering from malnutrition. Based on basic health research [5], in 2013, malnutrition in infants and children in Indonesia reached 19.6%, an increase of 1.7% compared to 2010 (17.9%). This is why some studies were focused on giving food recommendations to children, such as [6] [7][8] [9][10] [11]. Furthermore, few researchers concentrate on a specific period of children's age called the golden period.
The golden period often refers to the range of age from 0-24 months. It is highly recommended to breastfeed the baby in the first six months of a baby's life without giving other intakes. After that, it recommends providing complementary foods for infants aged 6-24 months [12]. Complementary food is any food or drinks containing nutrients given to infants aged 6-24 months to meet nutritional needs other than breast milk [12]. To meet the nutritional needs of infants, complementary food needs to be adjusted to the nutritional needs according to the baby's age. This adjustment certainly requires accuracy and effort that is not easy, especially if a set of routines needs to be done every day. Therefore, a recommendation system is needed. An example of works that focus on this domain is [10]. It presents a daily menu set resulting from implementing Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS) by considering carbohydrates, protein, and fat as criteria.
Some researches in this domain utilize ontology as the knowledge base of complementary food, such as [8], [11], [10]. Ontology is the theory of content about an object, the properties of objects, and the relationships between objects that are incorporated in a knowledge domain [13]. Ontology-based approaches derive the new extended terms by semantically mapping knowledge represented in terms of classes (concepts) properties and relationships as depicted in domain ontologies [14]. Hence, it can show the knowledge and concepts of relations in a clear manner [15]. It can also improve the access and the integration of heterogeneous information from various sources [16]. Thus, it is often considered as one of the essential components to build any intelligent system [17].
This research extends the work in [11]. Research [11] proposes a complementary food recommendation system by using ontology as its knowledge base. It improved research [8] by adding consideration of users' past preferences. Each food *Corresponding Author www.ijacsa.thesai.org ingredient in a recipe recommended to the user is given a score reflecting the user's feedback on the recommended meal recipe. Naïve Bayes computes the ingredients' preferences scores to produce a personal recommendation that is needed and liked by the infant individually. Research [8] and [11] also consider the condition of the children, such as allergies suffered or malnutrition suffered, in giving the recommendation. However, neither studies consider the balance of carbohydrates, proteins, and fats needed by infants as practiced by research [10].
Therefore, in the present work, we propose a recommendation system at the top of the complementary food ontology, as its knowledge-based, by considering the balance of carbohydrates, proteins, and fats, and based on the user's past preference for food with the implementation of the Naïve Bayes method and TOPSIS. As its consequences, this work has two main tasks (which are also the contributions). First, we improve the complementary food ontology in [11] so that filtering by nutrient adequacy can be done. For that reason, some additions and modifications in the ontology should be made. Second, we combine Naïve Bayes and TOPSIS to bring a recommendation result in the form of a daily menu set by considering babies' preferences individually as well as their nutrient adequacy. In a daily meal plan, we consider a breakfast menu, an evening meal menu, a dinner menu, and snacks (two times), though not all of them will be suggested to a baby (depending on the baby's age).
The following sections of this paper give a detailed picture of our work. The following section presents a review of the domains that will be discussed. Section three describes the methodology used in this work. In section four, we bring the result of our experiment and also the analysis on them. Finally, we conclude with the conclusion and future work in the last section.

A. Naïve Bayes
Naïve Bayes is a classification with probability and statistical methods that predict future opportunities based on experience [18]. The Naïve Bayes formula is as follows: Where variable represents class and variable represents characteristic instructions that are needed for classification. ( ) or posterior is a probability for the entry of specific characteristic samples into the class. ( ) or prior is a probability class before entering the sample.
( )or likelihood of evidence is the probability for the emergence of sample characteristics in class. ( ) or evidence is the probability characteristics globally [11].

B. Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS)
The Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS) was proposed by Hwang and Yoon (1981) to determine the best alternative based on the concept of choosing a solution with the shortest Euclidean distance from the ideal solution and the Euclidean distance farthest from the negative ideal solution [19]. The steps in calculating TOPSIS are [20]:  Build a decision matrix and determine the weight of the criteria.
 Calculate the normalized decision matrix. The formula for calculating a normalized decision matrix:  Calculate the weight of the normalized decision matrix. The normalized weight is calculated by the formula: Where is the weight of criteria-, ∑ .
 Determine the positive and negative ideal solutions. The formula of positive ideal alternative is: The formula of negative ideal alternative is: Where associated with the profit and associated with the cost, .
 Calculate the distance from a positive ideal solution and a negative ideal solution. The formula for a positive ideal solution and a negative ideal solution are:  Calculate the relative proximity to a positive ideal solution by using (8).
 Sort alternatives that have values close to 1.

C. Energy Needs
Energy requirements of complementary food are obtained from reducing the daily energy requirements of infants by breast milk energy intake [21]. The daily energy requirements of infants referring to [22] n can be seen in Table I, while the energy intake from breast milk can be seen in Table II. In Table III, the amount of mealtime the infants have is shown. Infants have different amounts of mealtime according to their age. www.ijacsa.thesai.org

A. Data and Knowledge Collection
The data used in this study are food material data and food recipes. The knowledge applied is nutritional adequacy rates for infants and energy intake from breast milk.

B. Ontology Modeling
The ontology used in this study is ontology [11], with several changes in the structure and instances. In addition, some knowledge was added to the ontology. The changes on the ontology were made using Protégé.
C. Analysis of Method Implementation 1) Combination of recipes: In this study, the recommended menu will be adjusted to the amount of mealtime and the infant's energy needs. The flow in making a recipe combination is shown in Fig. 1.
2) Application of the methods: The method used in this research is TOPSIS and Naïve Bayes. The first method applied to the system is the TOPSIS method. The criteria for TOPSIS are the nutritional content of carbohydrates, proteins, and fats with weights using nutritional adequacy values. The next step is to calculate the Naïve Bayes value from the existing recipe combination. Naïve Bayes calculations are influenced by user feedback on recipes that have been tried. The steps to calculate Naïve Bayes in this study are, a) Calculate the probability of a preferred material: The probability is counted by using (9). Laplace (add-one) smoothing is used in the equation to avoid getting zero outcomes for the probability when a new application is used or when a menu has never been selected. where:  : one type of food ingredients,  ( ( )) : The number of occurrences of a food item that has a "like" feedback value by the user, The amount of food ingredients in the recipe that is rated "like" by the user,


: Total ingredients in the database.
b) Calculate the probability of a preferred recipe: The probability is counted by using (10). where: The probability of a recipe to be liked, The probability of a preferred recipe, The probability of food ingredients in the recipe.

D. System Testing
System testing is done by measuring system usability and user satisfaction. Measurement of system usability is done by distributing SUS questionnaires to users. Questionnaire questions that are used are based on the SUS questionnaire [19]. A list of SUS questions can be seen in Table IV taken from [23]. Each question will be given five choices with criteria according to Table V. The results of the questionnaire will be calculated individual SUS values with equation (11). Then, the results will be averaged to get the overall SUS value. The SUS value will be used to classify the system eligibility by mapping it to Table VI [24]. The purpose of this test is to measure the level of system usability for users. The next test is testing the level of user satisfaction by distributing questionnaires to system users with a list of statements. The statements are "Information provided by the system is as expected" and "Sustainability to use the system next time." The purpose of this test is to measure the level of user satisfaction with the system.

A. Data and Knowledge Collection
The data used in this study are food material data obtained from the Food Composition List issued by the Ministry of Health (2005) and food recipes that already exist in ontology [11]. The knowledge used in this study is nutritional adequacy figures data for infants [22] and energy intake data from breast milk [21]. The data collected were 366 food items and 160 recipes. All data and knowledge were entered into ontology.

B. Ontology Modeling
In ontology [11], there are some additions regarding food material data on food sources class and nutritional adequacy figures data and energy intake data from breast milk in instances in the 'babyAge' class. Some changes that were made to the ontology, there are:  Making ‗foodsources', ‗makingProcess', 'taste', and 'texture classes' become a subclass of the 'food' class since the four classes are still a part of the 'food' class.
 Adding ‗foodquantity' subclass to ‗food' class as additional knowledge about kitchen units in grams.
 Adding another subclass to the ‗food' class, namely: ‗combined_food', which contains complementary foods recipes.
 Changing the subclass in the ‗foodSource' class to ‗animal_based', ‗fat_oil', ‗plant_based', and ‗other'. This was done to fit the distribution of materials in the Food Composition List.
 Adding the ‗dairy_product', ‗egg', ‗fish', and ‗meat' subclasses to the ‗animal_based' class to adjust the distribution of ingredients to the Food Composition List.
 Adding subclasses of ‗fruits', ‗nuts', ‗tubers', and ‗vegetables' to the ‗plant_based' class to adjust the distribution of ingredients to the Food Composition List.
 Adding 'macronutrient' and 'micronutrient' subclasses to 'nutrients' class. in order to increase the knowledge, then nutrition is divided into two types, namely macro nutrition and micronutrition. All these changes can be seen in Fig. 2.

C. Analysis and Results of Application of Methods to The System 1) Combination of recipes: Calculating Complementary Food Energy Needs per Day and per Mealtime:
Complementary food energy requirements, as seen in Table VII, are obtained from reducing daily energy requirements by breast milk energy intake. Therefore, the energy requirement is the energy should be fulfilled by a set of www.ijacsa.thesai.org menu recommended. The number of menus provided is compatible with the amount of mealtime, except for six months. For ages six months, the menu provided is one for two mealtimes. Each mealtime has a different percentage in meeting the daily energy adequacy. Table VIII [25] shows the percentage distribution of energy sufficiency from the total complementary food energy needs in a day. The application of the percentage of energy sufficiency per mealtime at each age is shown in Table IX.    a) Filtering recipes according to age and energy needed: In this stage, the minimum energy value ( ) and the maximum energy value ( ) are calculated at each meals time. Energy results for each meal with a minimum and maximum limit for ages 12-24 months can be seen in Table X. After that filtering prescriptions are done. Table XI shows an example of recipes for breakfast results at 12-24 months. b) Recipe combination according to the number of meals: After getting a recipe for every meal, a combination of recipes is done to get the complementary food menu per day. In the previous stage, a minimum energy limit ( ) and a maximum energy limit ( ) were determined at each mealtime. This results in a combination of menus with total energy exceeding energy requirements, around 30 -50% according to the amount of time the baby eats. Therefore, at this stage, filtering the total energy possessed by a combination of recipes according to the energy requirements of complementary food per day with a minimum energy limit ( ) and a maximum energy limit ( ). Table XII shows an example of a recipe combination for infants aged 12-24 months.
2) Application of the method to the system: Fig. 4 shows the system development flowchart. The first step is to add the infant's data like age and allergies. Next, the system will filter www.ijacsa.thesai.org the combination of recipes based on the infants' age and allergies. Then, the system will calculate the preference value with TOPSIS and Naive Bayes.

a) Technique for Order of Preference by Similarity to Ideal Solution (TOPSIS):
The application of the TOPSIS method is carried out to obtain recommendations that consider the adequacy of carbohydrates, proteins, and fats. The nutritional content of carbohydrates, proteins, and fats is used as a criterion in calculating TOPSIS in this study. The weight of each criterion is obtained from the nutritional adequacy rate of each criterion divided by the sum number of nutritional adequacy figures of carbohydrates, protein, and fat. Table XIII shows the weight of each criterion for a 12-24-month baby. In this step, 50 combinations will be taken with a value of close to one. Table XIV shows five combinations that have values close to one. b) Naïve Bayes: This method is used to get menu recommendations on the system according to the user preferences. User preferences are obtained from user feedback on recipes that have been tried. Feedback is given in the form of opinions; the categories are 'like', 'dislike', or 'allergic' to recipes. Each category has its own value 'like' is one, 'dislike', and 'allergy' is zero.   1) 'Rekomendasi' menu: This menu will display the results of recommendations using the TOPSIS and Naïve Bayes methods regardless of whether the ingredients have been tried or not. Display on this menu can be seen in Fig. 6. The system will display five recommended menus. Each menu consists of a recipe for breakfast, lunch, dinner, snack 1, and snack 2 according to the amount of mealtime each age.
2) 'Bahan Sudah Dicoba': This menu will display a list of food ingredients that users have tried. After the user chooses one food ingredient that has been tried, the application will display five recommended menus using the TOPSIS method and Naïve Bayes containing the selected food ingredients. This menu display can be seen in Fig. 7.
3) 'Bahan Belum Dicoba': This menu will display a list of food ingredients that the user has not tried. After the user chooses one food ingredient that has not yet been tried, the application will display five recommended menus using the TOPSIS and Naïve Bayes methods containing the selected food ingredients. This menu display can be seen in Fig. 7.

E. System Testing
We did the system testing by measuring system usability and also user satisfaction. Usability measurement of this system was done by distributing SUS questionnaires to 30 application users consisting of mothers who have experience with babies aged 6-24 months and mothers of babies aged 6-24 months.
From the result, we get the overall SUS value by calculating the average individual SUS value. The overall SUS values obtained are as follows:

∑ ∑
By referring to Table VI, the SUS score shows that the system gains grade B. It means that the usability of the system is good.
The next test is testing the level of user satisfaction. This test aims to measure the level of user satisfaction with the system. Testing was done by distributing the questionnaire to 10 potential users. The results of the questionnaire can be seen in Table XVII. From it can be concluded that the information provided by the system is as expected. In addition, it also indicates that they will continue to use the system. www.ijacsa.thesai.org 2.
Sustainability to use the system next time.

V. CONCLUSION
This study succeeded in making a recommendation system that uses ontology as data, as well as Naïve Bayes and TOPSIS methods for recommendations for daily complementary feeding menus according to nutritional adequacy (carbohydrates, protein, and fat) and user preferences of foodstuffs. Based on the system testing results, the system has a usability value of 76.92, which is in category B. The information provided by the system is considered as expected, and users will continue to use the system. Another further development that can be done is to provide recommendations by considering the preferences of other users, especially to recommend menus that have new recipes from food ingredients that they do not like before or new recipes that have never been tried before.