scieee AI-readable full text Open interactive document viewer

A food recommender system considering nutritional information and user preferences

Yera, Raciel; Alzahrani, Ahmad, A.; Martínez, Luis

Abstract

The World Health Organization identifies as a major issue the overall increasing of non-communicable diseases such as premature heart diseases, diabetes and cancer, been unhealthy diets an important causing factor of such diseases. In this context, personalized nutrition emerges as a new research field for providing tailored food intake advices to individuals according to their physical, physiological data, and further personal information. Specifically, in the last few years several researches have proposed computational models for personalized food recommendation using nutritional knowledge and user data. This paper presents a general framework for daily meal plan recommendations, incorporating as main feature the simultaneous management of nutritional-aware and preference-aware information, in contrast to previous works which lack of this global viewpoint. The proposal incorporates a pre-filtering stage that uses AHPSort as multi-criteria decision analysis tool for filtering out foods which are not appropriate to the current user characteristics. Furthermore, it incorporates an optimization-based stage for generating a daily meal plan whose goal is the recommendation of food highly preferred by the user, not consumed recently, and satisfying his/her daily nutritional requirements. A case study is developed for testing the performance of the recommender system.

Full text

Date of publication xxxx 00, 0000, date of current version xxxx 00, 0000. Digital Object Identifier 10.1109/ACCESS.2017.DOI A food recommender system considering nutritional information and user preferences RACIEL YERA1 , AHMAD A. ALZAHRANI 2 , LUIS MARTíNEZ 3 , (MEMBER, IEEE) 1University of Ciego de Ávila, Ciego de Ávila (Cuba) (e-mail: [email protected]) 2Faculty of Computing and Information Technology, King Abdulaziz University, Jeddah, Saudi Arabia (e-mail: [email protected]) 3Computer Science Department, University of Jaén, Jaén (Spain) (e-mail: [email protected]) Corresponding author: Luis Martínez (e-mail: [email protected]). The work was partly supported by the Spanish National research project TIN2015-66524-P and ERDF funds ABSTRACT The World Health Organization identifies as a major issue the overall increasing of noncommunicable diseases such as premature heart diseases, diabetes and cancer, been unhealthy diets an important causing factor of such diseases. In this context, personalized nutrition emerges as a new research field for providing tailored food intake advices to individuals according to their physical, physiological data, and further personal information. Specifically, in the last few years several researches have proposed computational models for personalized food recommendation using nutritional knowledge and user data. This paper presents a general framework for daily meal plan recommendations, incorporating as main feature the simultaneous management of nutritional-aware and preference-aware information, in contrast to previous works which lack of this global viewpoint. The proposal incorporates a pre-filtering stage that uses AHPSort as multi-criteria decision analysis tool for filtering out foods which are not appropriate to the current user characteristics. Furthermore, it incorporates an optimization-based stage for generating a daily meal plan whose goal is the recommendation of food highly preferred by the user, not consumed recently, and satisfying his/her daily nutritional requirements. A case study is developed for testing the performance of the recommender system. INDEX TERMS daily meal plan recommendation,user preferences,nutritional information, multi-criteria decision making, recommender systems I. INTRODUCTION The World Health Organization estimates that noncommunicable diseases such as cardiovascular diseases, cancer, chronic respiratory diseases and diabetes, are responsible for 63% of all deaths worldwide [38]. Furthermore, it also points out that such diseases are preventable through effective interventions that tackle shared risk factors such as the unhealthy diets. In this context, whereas a one-sizefits-all approach may fail, personalized nutrition can benefits consumers to adhere to a healthy, pleasurable, and nutritional diet when it is closely associated to individual parameters such as the physical and psychological characteristics including health status, phenotype and genotype, the consumer’s needs and preferences, behaviour, lifestyle, as well as budget. Personalised nutrition can be used for different target groups from healthy people to patients such as malnourished people, vulnerable groups, people with allergies or noncommunicable diseases, including cancer. Personalised nutrition has been formally defined as the healthy eating advice, tailored to suit an individual based on genetic data, and alternatively on personal health status, lifestyle, nutrients intake and phenotypic data [20]. Regarding the cost of genetic data management, in the last few years there have been an increasing in the research efforts focused on the management of these alternative data with this aim in mind [37]. Specifically, several computational solutions have been proposed with the goal of healthy eating advice [2], [16], [41], [52]. The menu planning problem has been focused since more than 50 years ago [4]. However, recently it was and still is an open and very active research problem, focused on adding personalization capabilities to the menu generation frameworks. In this way, a screenshot of the research centered on personalized healthy menu generation in the last three years, VOLUME 4, 2016 1 Originally published in: Yera, R., Alzahrani, A. A., & Martinez, L. (2019). A food recommender system considering nutritional information and user preferences. IEEE Access, 7, 96695-96711. Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS allows the identification of two research clusters focused on this goal: 1) Building complex information models as basis for the personalized services [2], [13], [16], [32]. These researches are centered on the use of flow charts, inference engines, medical questionnaires and prescriptions processing, as well as other knowledge representation tools, in order to build information sources that could be directly used in nutritional recommendation. In all cases, the semantic information modelling through the use of ontologies plays a relevant role in this cluster. 2) Nutritional information processing. It works on available nutritional information sources instead of prioritizing the data modelling task [41], [52]. Most of these works face the nutritional recommendation as an optimization problem related to the healthy menu generation, while there is another representative group of works that use other ad-hoc heuristics with the same aim in mind. The analysis of these groups of works leads to the identification of several associated shortcomings. First, they are not focused on the processing of the users’ preferences, which is a key element in any personalization scenario. Furthermore, most of them are not directly focused on the personalized nutrition aim, and only manage it as a component of larger health and wellbeing-related platforms. In addition, the incorporation of nutritional concepts and principles in the computational models is not depth enough. Also, it is necessary to remark that recent works are focused on the semantic information modeling [13], [32], which is difficult to perform and lacks of generalization capacity. The current paper is focused on mitigating previous shortcomings by dealing with the following research questions: 1) Do the use of users’ preferences improve personalized menus ? 2) Do the integration of nutritional principles in recommendation process improve menu planning recommendation? To research these questions the personalized nutrition planning will be based on recommender systems (RSs) that are the most successful tool in personalization processes on information overloaded contexts [42]. A RS aims at providing personalized recommendations in an overloaded search space [1], [23], [54], [55]. With this aim, RSs have been successfully applied to support users at overcoming the information overload problem in several domains [30], such as e-commerce [6], financial investment [33], e-learning [31], [56], e-government [22], and e-tourism [35]. It is remarkable that the food RSs are relatively a recent domain whose state of the art has been analyzed in [46], [47] pointing out that its research challenges are related to the collection of user information, the gathering of nutritional information from foods and recipes, and the changing of eating behaviors. Regarding the use of nutritional principles this paper will focus on building a nutritional recommender system that integrates principles taken from multi-criteria decision making (MCDM) approaches [27], [28], [43], optimization models [58]. In our proposal foods will be sorted into classes so it will be used a MCDM Sorting process [57]. As far as we know, this proposal is the first research effort on the following directions: •The development of a food recommendation model that integrates both nutritional and user preferences-related information. •Integration of MCDM sorting processed together nutritional information-awareness within the food recommendation domain. •The use of feedback-based user profiling methods, in the food recommendation domain. The remaining of the paper is organized as follows. Section II provides a background of recommender systems, previous works in food recommendation, as well as reviewing briefly the AHPSort, which is a key tool in the current research. Section III presents an overview of the general architecture for our food recommendation process. Section IV presents the nutritional recommendation approach, which includes data preparation, multicriteria decision analysis-based food pre-filtering, and optimization-based menu recommendation. Section V develops the case study and analyses the results of the proposal. Finally, Section VI concludes the paper. II. BACKGROUND This section reviews several key concepts about recommender systems, its application to food recommendation and also concepts about the sorting MCDM method AHPSort that are necessary for understanding the proposal of this research. A. RECOMMENDER SYSTEMS Recommender systems (RSs) are identified as "any system that produces individualized recommendations as output or has the effect of guiding the user in a personalized way to interesting or useful objects in a large space of possible options". [9]. Since ’90, they have emerged as an efficient solution to cover the information overloading problem, facilitating the information access to the end users, and being applied in diverse scenarios such as e-commerce [6], elearning [56], e-government [22], and e-tourism [35]. Gunawardana and Shani [21] pointed out that the two more common tasks related to RSs are the prediction task (prediction of a user preference over a set of items), and the recommendation task (recommendation of a set of good (interesting, useful) items to the user). Depending on their working principles, RSs have been classified into several categories according to the kind of information managed. One of the most popular classification groups them into demographic filtering, collaborative filtering, content-based filtering, and hybrid filtering [8], although other categories such as knowledge-based recommendation and constraintbased recommendation have been also considered [49]. 2VOLUME 4, 2016 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS The current paper will adopt the recommender system paradigm for generating the appropriated menu generation for daily meal plan problem. B. RELATED WORKS IN FOOD RECOMMENDATION This section is focused on providing an overview of recent research works focused on personalized nutrition supported by decision support systems. Regarding this is a very active field, we will focused on researches performed in the last three years, where we have identified two big research clusters. We excluded from this analysis the research works that manage some kind of genetic information. We identified a research cluster focused on building complex information models as base for the personalized services. In this cluster, Agapito et al. [2] present DIETOS, a recommender system for the adaptive delivery of nutrition contents to improve the quality of life of both healthy subjects and patients with diet-related chronic diseases. With this aim in mind, they elaborate flow charts to profile users with some diseases such as hypertension and diabetes, generating nutritional recommendations based on user answers to dynamic real-time medical questionnaires based on these flow charts. Using semantic technologies, Espín et al. [16] present a nutritional recommender system, Nutrition for Elder Care, intended to help elderly users to draw up their own healthy diet plans following the nutritional experts guidelines. Similarly, Mata et al. [32] proposed a social semantic mobile framework to generate healthcare-related recommendations, which automatically generates a nutrition plan and training, monitor plans and recomputed them if users make changes in their routines. Also, Taweel et al. [45] presents the design of a distributed system that enables homecare management in the context of self-feeding and malnutrition prevention through balanced nutritional intake. For the Intake Analysis, Assessment and Diet Recommendation Services it was used a semantic inference engine. Specifically, in the case of the Food Menu Plans Generation and Diet-aware Food Ordering the bio-inspired algorithms are used. Furthermore, Bianchini et al. [7] presents the PREFer food recommendation system to provide users with personalized and healthy menus, taking into account both user’s short/long-term preferences. PREFer uses ontologies for managing recipes, menus, and medical prescriptions. Finally, Cioara et al. [13] recently present an expert system for the nutrition care process of older adults, where dietary knowledge is defined by nutritionists and encoded as a nutrition care process ontology, and then used as underlining base and standardized model for the nutrition care planning. We also identified a second research cluster that tends to work over already available nutritional information sources, and is then focused on nutritional information processing, instead of prioritizing the data modeling task. Some of these works face the nutritional recommendation as an optimization problem related to the healthy menu generation. In this way, the menu planning problems has been treated as an optimization scenario since more than 50 years ago [4]. However, in the last few years, there are still several research groups that use this approach as a mainstream solution. HernándezOcaña et al. [24] present a solution for the menu planning problem adapting the bacterial foraging-based optimization algorithm, by modeling a constrained numerical optimization problem model which satisfies the nutritional needs of individuals. This approach uses as main input the nutritional information of each food (e.g. amount of calories, proteins, lipids, and carbohydrates). Syahputra et al. [44] propose an approach for scheduling diets for Diabetes Mellitus patients through the use of genetic algorithms, focused on generating daily menus that minimize the differences between the number of total calories needed by the patient, and the total calories associated to the current menus. Rehman et al. [39] present a cloud based food recommendation system, called Diet-Right , for dietary recommendations based on users’ pathological reports. The model uses ant colony algorithm to generate optimal food list and recommends suitable foods according to the values of pathological reports. For this purpose, we used a database of 345 pathological test reports to categorize various diseases that occur due to the deviation from the normal ranges of compounds/parameters. Based on such deviations, the system generates a diet plan that aims to cover those abnormalities. Beyond these approaches, there are other proposals in the nutritional information processing research cluster that do not consider optimization approaches because are based on some kind of ad-hoc heuristic for healthy menu generation. Here, Ntalaperas et al. [36] present a framework that uses as input a list of dishes contained a selected restaurant menu, and ranks dishes based on medical conditions, user settings, and preferences based on past ratings. The system presents an indicative nutritional analysis of suggested dishes. Ribeiro et al. [41] create a content-based recommender system that creates a personalized weekly meal plan by calculating of nutritional requirements, selection of food items for each meal, and scaling the meals to match the user’s caloric needs. The menu generation follows several criteria, such as separation of meat and fish, limitation in the repetition of foods, and other similar ones. Nag et al. [34] propose a live personalized nutrition recommendation engine that uses multimodal contextual data including GPS location, barometer, and pedometer output to calculate a live estimate of the user’s daily nutritional requirements, that are then used to rank the meals based on how well they fulfill the individual’s nutritional needs. Yang et al. [52] present Yum-me, a personalized nutrient based meal recommender system designed to meet individuals’ nutritional expectations, dietary restrictions, and fine-grained food preferences. Yum-me enables a simple and accurate food preference profiling procedure via a visual quiz-based user interface, and projects the learned profile into the domain of nutritionally appropriate food options to find ones that will appeal to the user. However, it is mainly based on visual features of foods, assumes a relatively simple strategy to rank the nutritional appropriateness, and is limited in terms of the available options for nutrition. Eventually, Ge VOLUME 4, 2016 3 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS et al. [19] propose a food recommender system developed on a mobile platform, which not only offers recipe recommendations that suit the user’s preference but is also able to take the user’s health into account. Beyond these two identified clusters, Tran et al. [46], and Elsweiler et al. [47] recently analyzed the existing stateof-the-art in food recommender systems and discuss research challenges related to the development of future food recommendation technologies. They concluded that current research challenges are related to the collection of user information, the gathering of nutritional information from food and recipes, the changing of eating behaviors, and the generating of bundle recommendations. Table 1 presents a summary with the main features of the analyzed research works. This previous analysis leads to the following conclusions: Research Work Nutritional informationaware Preferenceaware Semanticbased Optimizationbased Agapito et al. [2] x x Espin et al. [16] x Mata et al. [32] x Taweel et al. [45] x x x Bianchini et al. [7] x x x Cioara et al. [13] x x Hernández-Ocaña et al. [24] x x Syahputra et al. [44] x x Rehman et al. [39] x x Ntalaperas et al. [36] x x Ribeiro et al. [41] x x Nag et al. [34] x Yang et al. [52] x x Ge et al. [19] x TABLE 1. Summary of the identified related works. •Globally, the incorporation of nutritional concepts and principles in the computational models is not deep. •Several works are not directly focused on the personalized nutrition aim, and only manage it as a component of larger health and wellbeing-related platforms. •There are few works focused on the processing of the users’ preferences, which is a key element in any personalization scenario. •Furthermore, there are too few works (only three) managing both nutritional-aware and preference-aware information. However, in the three cases the preference gathering is focused on explicit user questions, and are not focused on a long term user modeling. Two of them (Ntalaperas et al [36] and Ribeiro et al [41]) are ongoing research, and Yang et al. [52] although manage both kind of information, mostly support their research on exploiting visual food features. The previous analysis evidences the necessity of a new food recommendation approach which integrates both nutritional and preference-based information. This is the goal of the current research. C. AHPSORT Multi-criteria decision Analysis (MCDA) is a discipline focused on helping people to make decisions among multiple FIGURE 1. AHPSort general scheme alternatives that are evaluated by several conflicting criteria [50]. Different types of decision problems can be formulated within the context of MCDA [53]; from choice, sorting, ranking and description problems, to elimination and design ones. Most of the problems studied in the literature study choice and ranking problems, thus many approaches such as AHP [43], TOPSIS [26], PROMETHEE [5] or more recently DEMATEL [15], VIKOR [14], BWM [40] and so on, have been developed and applied, accordingly, in real-world problems [15], [25]. Nevertheless, a number of proposals have also been presented for sorting proposals [57]. A recent extension of AHP, so-called AHPSort [27], [51] is a new variant of AHP, used to solve sorting MCDA problems by assigning alternatives into predefined ordered classes from most to least preferred,according to the scheme depicted in Fig.1. Such a scheme is composed of eight steps, carried our in three phases: A) Phase 1: Problem definition a) The criteria cj, j = 1, . . . , m, the alternatives ak, k = 1,...,l and the goal of the problem are established. b) The classes Ci, i = 1, . . . , n are defined in a way that they are ordered and may have a linguistic descriptor (e.g. excellent, good, medium, bad, poor). c) The profiles of each class, Ci, are defined by either local limiting profiles lpij (minimum performance that a criterion cjshould obtain to belong to the class Ci), or local central profiles cpij(characteristic example of an element in the class Cion criterion cj). B) Phase 2: Evaluations 4) First, the priority for the importance of each criterion, cj, is given by the expert, obtaining their weights, wj, by employing the AHP eigenvalue method. A·p=λ·p, where Ais the comparison matrix pis the priorities/weight vector and λis the maximal eigenvalue. 5) Each alternative, ak, is pairwise compared with the limiting (lpij) or central profiles (cpij) for 4VOLUME 4, 2016 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS FIGURE 2. Sorting with limiting and central profiles each criterion, cj. 6) From the computed matrices, the local priority for each alternative ak(pkj ), and for each limiting, or central profile lpij, cpij(pij)is computed with the eigenvalue method. C) Phase 3: Assignment to classes 7) The global priorities are then computed for every alternative ak(pk), and every limiting or central profile (lpior cpiaccordingly), by aggregating the weighted local priorities. pk= m X j=1 pkjwj(1) lpior cpi= m X j=1 pijwj(2) The assignment of an alternative akto a class Ci is accomplished by the comparison of pkwith lpi or cpi(See Fig. 2). 8) Steps 5) to 8) are repeated for each alternative to be classified. A relevant feature of AHPSort is that it requires less comparison than AHP, facilitating decision making with large scale data [27]. The current research work will use AHPSort in a prefiltering stage, for classifying foods into appropriate or inappropriate to be recommended to the end users. III. THE GENERAL ARCHITECTURE FOR FOOD RECOMMENDATION This section is focused on presenting the global architecture proposed for implementing the nutritional recommendation system based on preference and nutritional information. This architecture is sketched in Figure 3, and is composed of four layers to process the information pipeline that begins in the user information layer and finishes in the final recommendation generation. These layers are: FIGURE 3. The general architecture for food recommendation. 1) The information gathering layer, which is focused on capturing all the nutrition-related relevant information associated to the user. This information includes physiological data such as user height and weight, heart rate, burned calories, daily physical activity level; as well as information directly provided by the user such as daily food intake, and expert’s knowledge such as food composition tables and food’s exclusion criteria. Consequently, this layer has as an important information source the sensorized Internet of Things (IoT) devices that allow a continuous information gathering in order to effectively build the user profile. 2) The user profile dataset, which is focused on storage the information that will characterize users and will be used as input for the nutritional recommendation approach. Basically, this dataset will contain the data captured by the information gathering layer, allowing the recommendation generation based on nutritionalaware criteria (supported by the physiological data), and preference-aware criteria (supported by the previous daily food intake). 3) The intelligent systems layer is focused on receiving as input the user profile information and returning as output the recommended meal plan 1. This layer also actively uses the nutritional expert’s knowledge which 1In the rest of the paper, the terms menu and meal plan will be used indistinctly, and in both cases will refer to a daily food intake which will be composed of a breakfast, a lunch, and a dinner VOLUME 4, 2016 5 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS capture was conceived in the information gathering layer. Basically, the intelligent systems layer is composed of three main components: 1) the nutritional context determination, focused on initially filtering out some foods which are not appropriate for the current user recommendation; 2) the short-term intelligent models for generating daily meal plans, that is based on an optimization approach for maximizing the user preferences over the recommended foods while the fulfillment of the nutritional requirements are also verified; and 3) the long-term intelligent models for tuning the generated daily plan by considering weekly and monthly feeding schemes to follow. 4) A end user interface which is focused on presenting the recommended meal plans together with further nutritional information visualization. This interface is also focused on gathering the user feedback considering the provided recommendations. This feedback is returned to the information processing layer and is continuously used in the user profiling. The aim of this paper is to provide a global solution to be used as the intelligent systems layer of this architecture. This solution incorporates the nutritional context determination based on a MCDA approach for filtering out inappropriate food, and a short term intelligent model based on an optimization scenario which considers both nutritional and preference-aware information. IV. THE NUTRITIONAL RECOMMENDATION APPROACH INTEGRATING NUTRITIONAL AND USER PREFERENCES-RELATED INFORMATION. This section presents the nutritional recommendation approach, which includes data preparation (Section IV-A), MCDA based food pre-filtering (Section IV-B) , and optimization-based menu recommendation (Section IV-C). A. INITIAL DATA PREPARATION The initial steps necessary to prepare the data to be used in the recommendation generation are based on two goals: 1) the construction of the food profiles, and 2) the definition of menu templates to be filled by the food items. Construction of the food profiles: The food profile definition is built by taken as base two popular food composition tables provided by Wander [18]. These tables contains nutritional information of 600+ foods, related to the amount of calories and 20+ different macronutrients and micronutrients. The mentioned tables arranges the foods into 12 groups, which are milks, eggs, meat, fish, leguminous, oleaginous dry fruits, oils, cereals, desserts, vegetables, fruits, and drinks. Furthermore, the tables reflect the amount of calories, macronutrients, and micronutrients, in 100 g of each food. In order to make these data suitable for recommendation generation, a nutritionist determined reasonable portions for each food according to its type and features; and therefore calculates the amount of macro and micronutrients belonging to each portion. Table 2 presents a fragment of these final data, that is the source to be used in the food profiles. Food Kilocalories Proteins Carbohydrates Lipids Cholesterol Iron Calcium ... Pork chop (60 grs) 198 9 0 18 43.2 1.5 4.8 ... Rabbit (125 grs) 202.5 27.5 0 10 81.25 1.25 25 ... White rice (130 grs) 460.2 9.88 100.1 2.21 0 1.04 13 ... Lettuce (200 grs) 36 2.4 4.8 0.4 0 1.30 124 ... Guava (30 grs) 10.5 0.27 2.01 0.15 0 0.225 5.1 ... ... ... ... ... ... ... ... ... ... TABLE 2. Fragment of the food composition tables In this way, the foods’ profiles (Eq. 3) will be composed of the amount of nutrients which have been considered as key features for characterizing foods. These nutrients are proteins, lipids, carbohydrates, cholesterol, sodium, and saturated fats; leaving to the next future works the use of a food profile considering further nutrients. Kilocalories are also discarded because its value can be calculated through the carbohydrates, proteins, and lipids values. ak= (prok, lipk, cbk, chk, sodk, satk)(3) Furthermore, in the current work this context will be treated as a decision table, where the foods to be consumed are the alternatives and the calories and nutrients are the decision criteria. Table 3 formalizes the notation that will be used in the remaining of the paper, to refer to the food profile components. Term Nutrient prokAmount of proteins of food k lipkAmount of lipids of food k cbkAmount of carbohydrates of food k chkAmount of cholesterol of food k sodkAmount of sodium of food k satkAmount of saturated fats of food k TABLE 3. Criteria for characterizing foods. Definition of the menu templates: On the other hand, it is also necessary as initial data the definition of menu templates that will be used in the menu recommendation. A menu template follows the common scheme of a typical daily meal, and it is also built through the support of a nutrition domain expert. This menu template is composed of a breakfast, a lunch, and a dinner. In this paper we will not consider snacks, although the proposal could be easily extended to cope with them. In order to facilitate the template definition and taking as basis the nutritionist knowledge, we group the food profiles into new groups according to their main associated nutrient and related features (Table 4). Starting from these groups, Table 5 shows the template proposed for a daily meal plan. Specifically, the values for parameters nG1, nG2, ... will be proposed later in the case study section. 6VOLUME 4, 2016 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS Group name Group composition Group G1(Milk) Milk, yogurts Group G2(Breakfast cereals) Some cereals (e.g. bread, wheat) Group G3(Sources of proteins) Eggs, Meat, Fish Group G4(Sources of carbohydrates) Some cereals (e.g. rice), Leguminous Group G5(Vegetables) Vegetables Group G6(Fruits) Fruits TABLE 4. New food groups for the menu generation Breakfast nG1foods of group G1(Milk, yogurts) nG2foods of group G2(Breakfast cereals) nG6foods of group G6(Fruits) Lunch nl G3foods of group G3(Proteins) nl G4foods of group G4(Carbohydrates) nl G5foods of group G5(Vegetables) nG6foods of group G6(Fruits) Dinner nd G3foods of group G3(Proteins) nd G4foods of group G4(Carbohydrates) nd G5foods of group G5(Vegetables) nG6foods of group G6(Fruits) TABLE 5. The template for the daily meal plan The ultimate goal of the proposal is to fill this template by considering both nutritional-aware and preference-aware criteria. B. MULTICRITERIA DECISION ANALYSIS-BASED FOOD PRE-FILTERING A multicriteria decision analysis-based food pre-filtering approach for initially filtering out such foods which are not nutritionally appropriated to be recommended is proposed. With this aim, our approach will use AHPSort [27]. In order to facilitate the presentation of the new approach, we will adopt the same steps proposed by the AHPSort methodology (revised in section II-C). Table 6 presents the notation used across the proposal. (1) Define the goal, the criteria cj, j = 1, ..., m and the alternatives ak, k = 1, ..., l with respect to the problem. The goal of the current problem is to filter out those foods which are not suitable to be recommended to the end user. In this context, they are taken as basis the criteria used for characterizing foods in Equation 3. Specifically, supported by nutritional knowledge [17], we identified four criteria cjthat could be relevant to determine food suitability or unsuitability. These criteria are the amount of proteins (prok), sodium (sodk), cholesterol (chk), and saturate fats (satk). Finally, the alternatives akmatch with the candidate foods identifies in the previous initial data preparation stage. (2) Define the classes Ci, i = 1, ..., n, where n is the number of classes. The classes are ordered and are given a label. In this context, we identify two classes: appropriate to be recommended, and inappropriate. (3) Define the profiles of each class. This can be done with a local limiting profile or with a local central profile. Considering the goal of the current problem, we will use local limiting profiles for discriminating between the appropriate and inappropriate classes. In this case, the limiting profile lp indicates the minimum performance needed for each criterion j to belong to a class Ci. Furthermore, taking into account that thegoal of this proposal is to provide personalized food recommendation for end users. This step is conceived to identify several nutritional-aware user types, and associated a different local limiting profile for each user type (see Table 7). These profiles will be completed by a nutritionist considering nutritional knowledge, previous to the application of the approach. Term Meaning akFood profile. ak∈A, being Athe set of foods lptLimiting profiles associated to user type t wt jWeight of the nutrient j, corresponding to the user type t Mj[ak, lpt]Comparison value between the current food akand the limiting profile lpt, according to criteria j pkGlobal priority associated to the current food ak pt lp Global priority associated to the limiting profile lpt ntkj Amount in grams of nutrient jassociated to food ak TABLE 6. Notation used in the multicriteria pre-filtering approach User type Associate local limiting profile t1lpt1=(lpt1 pro,lpt1 s,lpt1 ch,lpt1 sat) t2lpt2=(lpt2 pro,lpt2 s,lpt2 ch,lpt2 sat) t3lpt3=(lpt3 pro,lpt3 s,lpt3 ch,lpt3 sat) ... ... TABLE 7. Limiting profiles for each user type. Eventually, in this step is necessary to determine the type of the current user that will receive nutritional recommendations, to work with their corresponding limiting profile, lpt. (4) Evaluate pairwise the importance of the criteria cj and derive the weight wjwith the eigenvalue method of the AHP. These pairwise comparison will be also completed by a nutritionist considering nutritional knowledge. (5) Compare by a pair-wise comparison matrix, each single alternative akwith the limiting profile lptfor the current user type t, for each criterion j.This pair-wise comparison also tends to be manually performed by experts, and usually lies in the range [−9; 9] [27]. However, in this case the initial data contains numerical information for each alternative ak regarding the four criteria jselected in the first step of this AHPSort approach (i.e. proteins, sodium, cholesterol, and saturated fats). Therefore, the pair-wise comparison values will be automatically calculated here for each alternative and criteria, based on the quotient between the value of the criterion in limiting profiles and the values ntkj of each alternative kfor the corresponding criteria j(see Eqs. 4). Mj[ak, ak]=1 Mj[ak, lpt] = lpt j ntkj Mj[lpt, ak] = ntkj lpt j Mj[lpt, lpt] = 1 (4) VOLUME 4, 2016 7 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS (6) From the comparison matrices, derive the local priority pkj for the alternative akand the local priority pjof the limiting profile lptwith the eigenvalue method. These local priorities can be easily obtained in a similar way to the standard AHP approach. (7) Aggregate the weighted local priorities It provides a global priority pkfor the alternative k(Eq. 5) and a global priority pt lp for the limiting profile (Eq. 6). pk= m X j=1 pkj ∗wj(5) pt lp = m X j=1 pt j∗wj(6) The comparison of pkwith plp is used to assign the alternative akto a class Ci. Specifically, the alternative ak is assigned to the class Ciwhich has the plp just under the global priority pkas follows: pk≤pt lp →ak∈appropriate (7) pk> pt lp →ak∈innappropriate (8) Finally, the food classified as inappropriate are filtered out and are not transferred as input to the next phase of recommendation process. C. OPTIMIZATION-BASED MENU RECOMMENDATION MODEL Here it is introduced an approach that takes as input the foods classified as appropriate in the previous section, for filling the menu template presented in Table 5. The goal of the approach is to provide food recommendations which are nutritionally appropriated and also match with the current user preferences. Table 8 presents the notation used across this section. Term Meaning fkBoolean value indicating whether food akis included in the generated daily meal plan bjRequired daily amount of nutrient j αParameter for relaxing the difference between the daily required amount of nutrients, and the real values GaGroup of food defined in the menu template formulation (Table 5) nGaAmount of required foods belonging to the group Ga(Table 5) NAmount of menus consumed by a specific user NkFrequency of consumption of food ak Nkm Frequency of common consumption of foods akand am tkTimestamp of last consumption of food ak tcCurrent timestamp c θTime decay controlling parameter wkWeight representing the current user preferences over the food ak P(k|m1, m2...)Probability of having food akin a meal plan that have already included the foods m1, m2... P(k)Probability of having the food akin the meal plan agr Set of foods already selected to be included in the current menu generation disagr Set of foods which inclusion has been discarded from the current menu generation TABLE 8. Notation used in optimization-based recommendation model, in addition to notation in Table 6 Figure 4 presents an overview of the approach for menu recommendation. This approach receives as input the menu request and the pre-filtered food list, and is composed of three main phases: The frequency-based menu generation (step 1), the probabilistic-based menu refining (step 2), and the restricted frequency-based menu generation (step 3). Even though each phase follows a different working principle for the menu generation, in all cases this task will FIGURE 4. General scheme of the menu recommendation approach. be faced as an optimization problem focused on filling the daily predefined menu templates (Table 5), providing the daily necessary nutrients to the user, and maximizing the user preferences over the final recommended menu. To reach it, we formulate an optimization scenario that considers the generated menu as a vector fk(Eq. 9). fk=1,if food akis included in the menu 0,otherwise (9) In both daily meal plan scenarios, it will be adopted the following optimization model (Eqs. 10), which second equation takes as basis a traditional diet planning scheme proposed by Anderson and Earle [3]. Beyond this work, our proposal is focused on: Maximize X k∈A wkfk(10) s.t. |Pj(ntkj ∗fk)−bj| ≤ α, for each nutrient 1,2,3, ..., J Pk∈Gafk=nGa, for each nGa∈ {nG1, nG2, nl G3, nl G4, nl G5, nd G3, nd G4, nd G5, nG6,}, being Gathe groups in T able 4. 1) Maximizing the sum of preferences wiof all the foods iincluded in the plan. This goal is formalized in the first equation of the model, where it is presented as a sum of the weights associated to the foods finally included in the meal plan. 2) Verifying that the nutrients of the generated plan are very close to the required nutrients for the current user profile. This goal is verified by assuring that for each nutrient, the absolute difference between the required amount (bj) and the final amount Pj(ntkj ∗ fk), is always under a threshold α. This is based on the fact that both menus that are under and over the required nutrient should be avoided. However, we also remark that it is improbably that a generated menu exactly matches the required nutrients of a user profile (i.e. the sum of the proteins, carbohydrates, etc, of all the contained foods is exactly equal to the calculated amount of proteins, carbohydrates according to the 8VOLUME 4, 2016 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS user data). Therefore, this parameter αis necessary to manage such minimum expect deviation of the still appropriated menus. 3) Guaranteeing that the generated plan fills the menu templates presented in Table 5. This goal is verified by assuring that for each food category, the amount of foods included in the menu matches with the amount predefined in the templates. This general model is taken as base for the three required meal plan generation tasks (Fig. 4). However, for each task it will be defined a different approach for calculating the weights wkto be used in the objective function for obtaining the preferences over the generated plan: •The frequency-based menu generation (step 1 in Fig. 4), that is focused on suggesting an initial menu for the current user request. Such menu generation is focused on suggesting foods that have been preferred in the past, but have not been consumed recently. Equation 11 formalizes this approach for calculating wk, which is based on the frequency of consumption of the food k (Nk). wk=Nk N(eθ(tc−tk tc)−1) (11) •The probabilistic-based menu refining (step 2 in Fig. 4). This phase at first requires the user selection of the foods presented in the initial menu that will be finally consumed by the user (set agr), as well as the foods which recommendation were not accepted by the user and therefore will be discarded from the final menu (set disagr). In these last cases, the recommendation of alternative foods are necessary. Consequently, this step includes two new restrictions (Eq. 12) to the model presented in step 1, which assure the inclusion of all the foods in the set agr and the exclusion of all the foods in disagr (working over the vector fk). Maximize X k∈F wkfk(12) s.t. |Pj(ntkj ∗fk)−bj| ≤ α, for each nutrient 1,2,3, ..., J Pk∈Gafk=nGa, for each nGa∈ {nG1, nG2, nl G3, nl G4, nl G5, nd G3, nd G4, nd G5, nG6,}, being Gathe groups in T able 4. fk= 1, for each k ∈agr fk= 0, for each k ∈disagr Therefore, here a new menu is generated by considering the new agr and disagr sets, and this process is repeated until the user is completely agreed the presented suggestions (step 4). In this second phase, the menu generation is modelled by a probabilistic scenario that considers the conditional probability of preferring each candidate food, given the foods selected to be consumed in previous menu generation steps in this second phase and in the first phase. Equations 13-15 formalize this approach for weights wicalculation. See Table 8 for further details about notation. wk=P(k|m1, m2...) = P(k)Y m∈agr P(m|k)(13) P(m|k) = Nkm Nk (14) P(k) = Nk N(15) •The restricted frequency-based menu refining (step 3 in Fig. 4). This phase is executed when the probabilisticbased menu refining does not lead to any menu alternative. In such cases, it is again executed a frequencybased menu generation, but considering the two new restrictions that assure the inclusion of all the foods in the set agr and the exclusion of all the foods in disagr (Eq. 12). V. CASE STUDY This section presents a case study for testing the framework presented in the previous section. This test will be based on the following advices taken for the nutritional expert knowledge [17]: •Saturated fats should be under 10%, and proteins around 15% of the total daily energy in overweighed patients. •In diabetics patients, saturated fats should be under 7% of daily energy, and cholesterol under 200 mg. •In hypertensive patients, daily sodium should be under 2500 mg. •Disregarding user types, the average daily energy intake should be composed of 50% of carbohydrates, 20 % of proteins, and 30 % of lipids •The recommended daily calories intake is determine through Basal Metabolic Rate (BMR), which is calculated by the Harris-Benedict coefficient (Eq. 16 and 17, men and women respectively). BMR = 10 ∗weight + 6.25 ∗height −5∗age + 5 (16) BMR = 10 ∗weight + 6.25 ∗height −5∗age −161 (17) Specifically, the needed daily calories are calculated by multiplying the BMR value by a constant that depends on the activity level, for keeping the current weight (Table 9). Common values are around 2000 kcal. •1g of proteins = 4kcal,1g of carbohydrates = 4kcal, and 1g of lipids = 9kcal (i.e. taking as reference the common value of daily intaking around 2000 kcal, it would represent 250 g of carbohydrates, 100 g of proteins, and 66 g of lipids. ) •Disregarding user type, cholesterol should be under 350 mg/day, and sodium under 3000 mg/day. VOLUME 4, 2016 9 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS Our future research will be focused on three main directions focused on proposing direct complements to the presented work: •The use of long-term information for the menu generation. Currently, the proposal only considers physical user information (see Eqs. 16-17) for daily nutritional requirement calculation. In this future direction, the goal will be also the use of the previous food logs as input for this calculation, in order to guarantee an adequate weekly-montly food intake balance. •The incorporation of recipe recommendations into the daily generated meal plan. Recipe recommendation has been recently study by some authors [47], and therefore it is necessary to integrate it into the currently presented approach focused on the simultaneous management of nutritional and preference-based information. •The exploration of the presented approach in a group recommendation scenario. Group recommendation have been recently a very active research area [10], [11], which has a direct application to food recommendation. Therefore it is necessary to extend the current proposal to be used in the group recommendation context. Acknowledgements: This research work was partially supported by the Research Project TIN2015-66524-P. BIBLIOGRAPHY REFERENCES [1] Gediminas Adomavicius and Alexander Tuzhilin Tuzhilin. Toward the next generation of recommender systems: A survey of the state-of-theart and possible extensions. IEEE Transactions on Knowledge and Data Engineering, 17(6):734–749, 2005. [2] G. Agapito, M. Simeoni, B. Calabrese, I. Caré, T. Lamprinoudi, P.H. Guzzi, A. Pujia, G. Fuiano, and M. Cannataro. Dietos: A dietary recommender system for chronic diseases monitoring and management. Computer Methods and Programs in Biomedicine, 153:93 – 104, 2018. [3] A.M. Anderson and M.D. Earle. Diet planning in the third world by linear and goal programming. Journal of the Operational Research Society, 34:9 – 16, 1983. [4] J.L. Balintfy. Menu planning by computer. Communications of the ACM, 7(4):255–259, 1964. [5] Majid Behzadian, R.B. Kazemzadeh, A. Albadvi, and M. Aghdasi. Promethee: A comprehensive literature review on methodologies and applications. European Journal of Operational Research, 200(1):198 – 215, 2010. [6] J. Ben Schafer, Joseph A. Konstan, and John Riedl. E-commerce recommendation applications. Data Mining and Knowledge Discovery, 5(12):115–153, 2001. [7] D. Bianchini, V. De Antonellis, N. De Franceschi, and M. Melchiori. Prefer: A prescription-based food recommender system. Computer Standards & Interfaces, 54:64–75, 2017. [8] J. Bobadilla, F. Ortega, A. Hernando, and A. Gutiérrez. Recommender systems survey. Knowledge-Based Systems, 46(0):109 – 132, 2013. [9] Robin Burke. Hybrid recommender systems: Survey and experiments. User Modelling and User-Adapted Interaction, 12(4):331–370, 2002. [10] Jorge Castro, Raciel Yera, and Luis Martínez. An empirical study of natural noise management in group recommendation systems. Decision Support Systems, 94:1–11, 2017. [11] Jorge Castro, Raciel Yera, and Luis Martínez. A fuzzy approach for natural noise management in group recommender systems. Expert Systems with Applications, 94:237–249, 2018. [12] Li Chen and Pearl Pu. Critiquing-based recommenders: survey and emerging trends. User Modeling and User-Adapted Interaction, 22(12):125–150, 2012. [13] T. Cioara, I. Anghel, I. Salomie, L. Barakat, S. Miles, D. Reidlinger, A. Taweel, C. Dobre, and F. Pop. Expert system for nutrition care process of older adults. Future Generation Computer Systems, 80:368–383, 2016. [14] Hasan Dinçer, Serhat Yüksel, and Luis Martínez. "analysis of balanced scorecard-based servqual criteria based on hesitant decision-making approaches". "Computers & Industrial Engineering", 139:1 – 12, 2019. [15] Hasan Dinçer, Serhat Yüksel, and Luis Martínez. "balanced scorecardbased analysis about european energy investment policies: A hybrid hesitant fuzzy decision-making approach with quality function deployment". "Expert Systems with Applications", 115:152–179, 2019. [16] V. Espín, M.V. Hurtado, and M. Noguera. Nutrition for elder care: a nutritional semantic recommender system for the elderly. Expert Systems, 33(2):201 – 210, 2016. [17] A. Fardet and Y. Boirie. Associations between food and beverage groups and major diet-related chronic diseases: an exhaustive review of pooled/meta-analyses and systematic reviews. Nutrition Reviews, 72(12):741–762, 2014. [18] S Fernández and E. Burgaleta. Composition tables. Foods and artificial nutrition. University of Granada, 2003. [19] M. Ge, F. Ricci, and D. Massimo. Health-aware food recommender system. In Proceedings of the ACM International Conference on Recommender Systems, pages 333–334, 2015. [20] Michael J Gibney and Marianne C Walsh. The future direction of personalised nutrition: my diet, my phenotype, my genes. Proceedings of the Nutrition Society, 72(2):219–225, 2013. [21] Asela Gunawardana and Guy Shani. A Survey of Accuracy Evaluation Metrics of Recommendation Tasks. Journal of Machine Learning Research, 10:2935–2962, DEC 2009. [22] Xuetao Guo and Jie Lu. Intelligent e-government services with personalized recommendation techniques. International Journal of Intelligent Systems, 22(5):401–417, 2007. [23] Mohammed Hassan and Mohamed Hamada. Genetic algorithm approaches for improving prediction accuracy of multi-criteria recommender systems. International Journal of Computational Intelligence Systems, 11:146–162, 2018. [24] B. Hernandez-Ocaña, O. Chavez-Bosquez, J. Hernández-Torruco, J. Canul-Reich, and P. Pozos-Parra. Bacterial foraging optimization algorithm for menu planning. IEEE Access, 6:8619–8629, 2018. [25] Lin-Huan Hu, Chih-Fu Cheng, and Jei-Zheng Wu. Professional volleyball development in taiwan’s sports industry. International Journal of Computational Intelligence Systems, 11:1082–1090, 2018/01. [26] C.L. Hwang and K. Yoon. Multiple Attribute Decision Making: Methods and Applications. Springer-Verlag, 1981. [27] A Ishizaka, C Pearman, and P Nemery. Ahpsort: an ahp based method for sorting problems. International Journal of Production Research, 50(17):4767–4784, 2012. [28] Alessio Ishizaka and Sajid Siraj. Are multi-criteria decision-making tools useful? an experimental comparative study of three methods. European Journal of Operational Research, 264(2):462 – 471, 2018. [29] BP Knijnenburg, MC Willemsen, Z Gantner, H Soncu, and C Newell. Explaining the user experience of recommender systems. User Modeling and User-Adapted Interaction, 22(4-5):441–504, 2012. [30] Jie Lu, Dianshuang Wu, Mingsong Mao, Wei Wang, and Guangquan Zhang. Recommender system application developments: A survey. Decision Support Systems, 74:12–32, 2015. [31] N. Manouselis, R. Vuorikari, and F. Van Assche. Collaborative recommendation of e-learning resources: an experimental investigation. Journal of Computer Assisted Learning, 26(4):227–242, 2010. [32] Felix Mata, Miguel Torres-Ruiz, Roberto Zagal, Giovanni Guzman, Marco Moreno-Ibarra, and Rolando Quintero. A cross-domain framework for designing healthcare mobile applications mining social networks to generate recommendations of training and nutrition planning. Telematics and Informatics, 35(4):837–853, 2018. [33] Cataldo Musto, Giovanni Semeraro, Pasquale Lops, Marco de Gemmis, and Georgios Lekkas. Personalized finance advisory through case-based recommender systems and diversification strategies. Decision Support Systems, 77:100 – 111, 2015. [34] N. Nag, V. Pandey, and R. Jain. Live personalized nutrition recommendation engine. In Proceedings of the 2nd International Workshop on Multimedia for Personal Health and Health Care, pages 61–68, 2017. [35] J.M. Noguera, M.J. Barranco, R.J. Segura, and L. Martínez. A mobile 3d-gis hybrid recommender system for tourism. Information Sciences, 215:37–52, 2012. 16 VOLUME 4, 2016 Author et al.: Preparation of Papers for IEEE TRANSACTIONS and JOURNALS [36] D. Ntalaperas, E. Bothos, K. Perakis, B. Magoutas, and G. Mentzas. Dysis: An intelligent system for personalized nutritional recommendations in restaurants. In Proceedings of the 19th Panhellenic Conference on Informatics, pages 382–387, 2015. [37] Jose M Ordovas, Lynnette R Ferguson, E Shyong Tai, and John C Mathers. Personalised nutrition and health. The BMJ, 361:bmj–k2173, 2018. [38] World Health Organization. 10 facts on noncommunicable diseases. https://www.who.int/features/factfiles/noncommunicable_diseases/facts/en/, 2018. [39] F. Rehman, O. Khalid, N. Ul Haq, A.U. Rehman Khan, K. Bilal, and S.A. Madani. Diet-right: A smart food recommendation system. KSII Transactions on Internet & Information Systems, 11(6):2910–2925, 2017. [40] Jafar Rezaei. Best-worst multi-criteria decision-making method. Omega, 53:49 – 57, 2015. [41] D. Ribeiro, J. Machado, M.J.M. Vasconcelos, E. Vieira, and A.C. de Barros. Souschef: Mobile meal recommender system for older adults. In Proceedings of the 3rd International Conference on Information and Communication Technologies for Ageing Well and e-Health, pages 36– 45, 2017. [42] Francesco Ricci, Lior Rokach, and Bracha Shapira. Recommender systems handbook. In Francesco Ricci, Lior Rokach, Bracha Shapira, and Paul B. Kantor, editors, Recommender Systems Handbook, chapter 1, pages 1–35. Springer, 2011. [43] T.L. Saaty. Decision Making for Leaders: The Analytic Hierarchy Process for Decisions in a Complex World. RWS Publications, 2012. [44] M.F. Syahputra, V. Felicia, R.F. Rahmat, and R. Budiarto. Scheduling diet for diabetes mellitus patients using genetic algorithm. In Journal of Physics: Conf. Series 801, pages 1–9, 2017. [45] A. Taweel, L. Barakat, S. Miles, T. Cioara, I. Anghel, A.R.H. Tawil, and I. Salomie. A service-based system for malnutrition prevention and selfmanagement. Computer Standards & Interfaces, 48:225–233, 2016. [46] T.N. Trang-Tran, M. Atas, A. Felfernig, and M. Stettinger. An overview of recommender systems in the healthy food domain. Journal of Intelligent Information Systems, 50:501–526, 2018. [47] C. Trattner and D. Elsweiler. Food recommender systems: Important contributions, challenges and future research directions. arXiv:1711.02760v2, pages 1–16, 2017. [48] Christoph Trattner and David Elsweiler. Investigating the healthiness of internet-sourced recipes: implications for meal planning and recommender systems. In Proceedings of the 26th international conference on world wide web, pages 489–498. International World Wide Web Conferences Steering Committee, 2017. [49] Thomas Ulz, Michael Schwarz, Alexander Felfernig, Sarah Haas, Amal Shehadeh, Stefan Reiterer, and Martin Stettinger. Human computation for constraint-based recommenders. Journal of intelligent information systems, 49(1):37–57, 2017. [50] Liang Wang, Rosa M. Rodríguez, and Ying ming Wang. A dynamic multiattribute group emergency decision making method considering experts’ hesitation. International Journal of Computational Intelligence Systems, 11:163–182, 2018. [51] Zhou Xu, Jindong Qin, J. Liu, and Luis Martínez. Sustainable supplier selection based on ahpsort in interval type-2 fuzzy environment. Information Sciences, 483:273–293, 2019. [52] L. Yang, C.-K. Hsieh, H. Yang, J.P. Pollak, N. Dell, S. Belongie, C. Cole, and D. Estrin. Yum-me: A personalized nutrient-based meal recommender system. ACM Transactions on Information Systems, 36(1):7, 2017. [53] Boris Yatsalo and Luis Martínez. Fuzzy rank acceptability analysis: A confidence measure of ranking fuzzy numbers. IEEE Transactions on Fuzzy Systems, 26:3579–3593, 2018. [54] Raciel Yera, Yailé Caballero, and Luis Martínez. Correcting noisy ratings in collaborative recommender systems. Knowledge-Based Systems, 76:96 – 108, 2015. [55] Raciel Yera and Luis Martínez. Fuzzy tools in recommender systems: A survey. International Journal of Computational Intelligence Systems, 10(1):776–803, 2017. [56] Raciel Yera and Luis Martínez. A recommendation approach for programming online judges supported by data preprocessing techniques. Applied Intelligence, 47(2):277–290, 2017. [57] Constantin Zopounidis and Michael Doumpos. Multicriteria classification and sorting methods: A literature review. European Journal of Operational Research, 138(2):229 – 246, 2002. MCDA Methodologies for Classification and Sorting. [58] Yi Zuo, Maoguo Gong, Jiulin Zeng, Lijia Ma, and Licheng Jiao. Personalized recommendation based on evolutionary multi-objective optimization. IEEE Computational Intelligence Magazine, 10(1):52–62, 2015. VOLUME 4, 2016 17