Journal of Software Engineering and Applications
Vol.10 No.05(2017), Article ID:76447,15 pages
10.4236/jsea.2017.105023

Recommender Systems Based on Evolutionary Computing: A Survey

Maryam Sadeghi, Seyyed Amir Asghari

Electrical and Computer Engineering Department, Kharazmi University, Tehran, Iran

Copyright © 2017 by authors and Scientific Research Publishing Inc.

This work is licensed under the Creative Commons Attribution International License (CC BY 4.0).

http://creativecommons.org/licenses/by/4.0/

Received: February 24, 2017; Accepted: May 22, 2017; Published: May 25, 2017

ABSTRACT

Data mining techniques and information personalization have made significant growth in the past decade. Enormous volume of data is generated every day. Recommender systems can help users to find their specific information in the extensive volume of information. Several techniques have been presented for development of Recommender System (RS). One of these techniques is the Evolutionary Computing (EC), which can optimize and improve RS in the various applications. This study investigates the number of publications, focusing on some aspects such as the recommendation techniques, the evaluation methods and the datasets which are used.

Keywords:

Evolutionary Computing, Genetic Algorithm, Recommender System

1. Introduction

Recommender systems have been generated and developed to help users for finding relevant information in the wide fields of information. Recommender system techniques have been proposed in various applications since the mid- 1990s. The recommender systems try to recommend the most suitable items to the target users by investigating a user’s interest in an item and the interactions between users and users or users and items. The RS have been developed for variety applications such as e-business, e-shopping, e-learning, e-tourism, e-li- brary and etc. [1] [2] . Primary recommender systems were based on information retrieval. A few later recommender techniques were proposed in a way of filtering. Commonly used recommender techniques are divided into two groups: 1) Classical and traditional methods, and 2) Modern and hybrid approach. One of the several techniques having been investigated for the development of RS in the modern and hybrid approach is Evolutionary Computing (EC) techniques. Each recommendation approach has advantages and disadvantages. In this survey, first, the classical and traditional filtering ways are introduced and then the paper is focused on introducing and comparing the recent publications of EC approach in the recommender systems [2] [3] [4] .

2. Basic Concepts

2.1. Item

Every object that can be recommended to a user is called item. If the item is useful for the user, it has positive value else its value is negative [2] .

2.2. User

All operations in the recommender system offer to the target user. Target user has some public component such as age, income, marital status, education, profession and nationality, and also has some specific components such as favorite food, sports, music, movies, etc. Specific components extracting are very sensitive [1] [2] .

2.3. Feedback

The most important concept in recommender system is user’s feedback on items. There are two types of explicit and implicit feedback [5] [6] .

In explicit feedback, users explicitly rank items. Typically, users were asked to show their opinion with a number.

In implicit feedback, the recommendation is based on previous user’s interactions with the system [5] .

3. Classical and Traditional Methods

Generally, recommender systems depend on how to do information filtering divide into three groups: 1) Collaborative Filtering, 2) Content-based Filtering and 3) Context-Aware.

3.1. Collaborative Filtering (CF)

Collaborative filtering recommends users by finding users with similar preferences. The CF filtering is classified into Memory based and Model based CF. Figure 1 shows the functional structure of the CF method [2] .

Input should be in the form of rating matrix in the memory based CF. For example a music recommendation application system can be represented as user-music rating matrix. The set of users are represented as columns and items (music) as rows. The second type is model-based algorithms. This algorithm used rating matrix to create a model. Then by using this model do the recommendation. Memory-based algorithms in comparison with model-based algorithms have better and more accurate results [7] .

There are different algorithms for CF filtering. Three common algorithms of this method are: 1) Random Algorithm, 2) Mean Algorithm and, 3) Neighbor-

Figure 1. The functional structure of the CF method [2] .

hood-Based Algorithms [2] .

CF has some limitations such as cold start, scarcity of user opinion and data validity.

3.2. Content-Based Filtering

Content is the base concept for building recommender applications in this method. Content-based filtering is based on item description rather than similarity of other users [2] . It uses machine learning algorithms to make a model of user preferences. Many approaches were proposed in the content-based recommendation, but if the content does not contain enough information recommendations do not guarantee accurate predictions [3] . This method has some limitations such as limited content analysis and cold start.

3.3. Context-Aware

There are various definitions for the concept of context. In this paper, each entity that can be used to personalize the information is called context. An entity can be an object or place or situation that is relevant with interaction of target user with application or a user [8] [9] [10] . The context information of a user depends on several cases, such as location, emotional state, personal characteristic etc. [11] .

Different categories were chosen in the various papers. In this paper context is divided into two types: 1) Static 2) Dynamic [12] [13] . The context which changes rarely called static context such as contact list, user profile etc. The context which is extremely variable called dynamic context such as location of the user, temperature, time and etc. [8] .

Context-aware recommender system approaches are classified into three approaches as shown in Figure 2: 1) Pre-filtering, 2) Post-filtering, and 3) Contextual modelling [8] [13] .

In pre-filtering approaches as shown in Figure 2(a), the contextual information is used before all recommendations computing. The reduction-based approach is an example of pre-filtering approaches [14] . The ranked data which is not relevant to the context is filtered out before applying the recommendation

Figure 2. The incorporation of context in the recommendation process [13] .

algorithm. The important benefit of this approach is that it allowed using any recommender system technique. The pre-filtering approach used two-dimen- sional (users × items) recommendation to estimate the rating function [15] [16] .

In post-filtering approaches, the result list of the recommendation is prepared and then filtered with contextual information as shown in Figure 2(b). The ratings are predicted using two-dimensional (2D) recommender system.

Contextual modeling approaches use explicitly the context information as a predictor for user’s rating an item. Hence, the approach formulates a multidimensional or MD (user × items × context) recommendation as shown in Figure 2(c) [17] [18] [19] [20] .

4. Evolutionary Computing

As shown in Figure 3 Evolutionary Computing (EC) with Fuzzy sets, Artificial Neural Networks (ANNs), Swarm Intelligence (SI) and Artificial Immune Systems are subsets of computational intelligence [9] .

The root of EC is back from Darwin theory of natural selection. Darwin’s theory explains that nature has limited resources [21] [22] [23] . Creatures that live are competing together because of limited resources. And try to extend their next generation. This generation is called survivor of fittest [24] [25] [26] . Table 1 shows the mapping between this theory and problem solving in the evolutionary computing [23] .

In general, every problem has three parts: Input, Model and Output.

EC can solve the problem in three ways.

4.1. Optimization

As shown in Figure 4(a), in these methods input is unknown. Input should found in a way that it became optimize. Most of the problems are in this category.

Figure 3. Type of computational intelligence [9] .

Figure 4. EC solving problem methods [22] .

Table 1. Mapping between Darwin’s theory and evolutionary computing.

4.2. Modeling

As shown in Figure 4(b), in these methods model should found because Input and output relation is unknown. Input and output are known in these methods.

4.3. Simulation

As shown in Figure 4(c), the output is unknown. Inputs with regularity of the model can simulate outputs [21] [22] [23] .

EC were designed to solve complex problems. There are different types of evolutionary computing algorithms, as shown in Figure 3 Genetic Algorithm (GA), Genetic Programming (GP), Evolutionary Programming (EP) and Evolution Strategies (ES). EC is based on computational models such as natural selection, survival of the fittest and reproduction. Different EC algorithms have similar algorithmic characteristics and also they have many similarities in framework implementation [21] .

Figure 5 shows a universal framework which includes three fundamental operations and two optional operations for most ECs [24] [25] . The first step in an EC algorithm is the “population initialization” step. Next step is entering evolutionary iterations with two operational steps, namely, “fitness evaluation and selection” and “population reproduction and variation” [26] [27] . The iteration continues until a termination, threshold is achieved. Sometimes EC algorithms need additionally perform such as an “algorithm adaptation” procedure or a “local search” (LS) procedure besides the above three necessary steps [27] [28] [29] .

5. Categories Approaches

EC techniques can help recommender systems to have more powerful and more

Figure 5. The general EC framework [27] .

effective recommendation.

There are three main approaches to applying EC in recommender systems which are 1) approaches in which EC are used to optimize weights of recommendation techniques or different component, 2) approaches utilizing EC for clustering of items or users and 3) hybrid and other approaches [21] .

5.1. Approaches Based on Weights Optimizing

According to [30] [31] [32] [33] , feedback feature arrays including user characteristics, item characteristics and the corresponding ratings were created user profile. An n-dimensional array as user preferences was considered and it included weights corresponding to the given features and it supported the profile matching algorithm within the RS. In these papers, techniques based on evolutionary computing had better performance than Neighborhood-based collaborative filtering (nCo) except [31] where the proposed method is not compared to any baseline. The public dataset of Movie Lens is used to test these papers.

In the [34] authors proposed a recommender system for location-based advertising based on user’s preferences and interaction of context with a user. It used the genetic algorithm to achieve optimal value, in calculating the similarity between two contexts from the multidimensional perspective. As shown in Figure 6 the proposed architecture which named Context-Aware CF using Genetic Algorithm (CACF-GA), consists of pre-arranging process and a cycle of three steps for 1) Filtering, 2) Context-Aware CF, and 3) Recommendation and Feedback. The dataset which used for experiments was gathered from students via a

Figure 6. The architecture of CACF-GA [34] .

web-based system developed for this purpose. This data collection contains information of 150 places in five major commercial areas in Seoul, South Korea for shopping, eating, drinking, enjoying, and learning. The proposed model outperformed a standard Neighborhood-based collaborative filtering (nCo) and some simple context-aware recommendation techniques which provide the most accurate prediction results compared to comparative ones.

In [35] , authors, first identified suitable attributes in a user profile and suggest an appropriate similarity. Second, EC are used to learn the weights of user’s personal, behavioral and interaction attributes from social networks based on the comparison of individual features to increase recommendation effectiveness. At the end, it used trust propagation techniques towards handling sparsity problem of collaborative filtering. The proposed approach is tested only on synthetic data (simulated dataset of 20 users) and is not compared to any baseline algorithm. In its extended version [36] , authors, compared the presented approach with a hybrid friend recommendation strategy based on interest similarity and social proximity [37] . It eventuated that approach [35] is superior on synthetic data than other approaches [37] .

The [38] proposed an evolutionary approach for combining results of recommendation techniques in order to automate the choice of techniques and get fewer errors in recommendations. Experiments on Movie Lens data showed that the appropriate combination of the results of different recommendation techniques performed better than any one of collaborative filtering technique separately in the context addressed [39] . Depending on the technique and the experiment executed the improvement varies from 9.02% to 48.21%.

The [40] presented similarity function using the average rating for each user. Other approach used overall average rating for all users. This approach has compared to standard Neighborhood-based collaborative filtering (nCo) techniques on Movie Lens data. A series of comparison demonstrate the effectiveness of the proposed approach in terms of the quality of prediction.

The [41] has presented a metric to measure the similarity between users, which is applicable in collaborative filtering processes in recommender systems. Genetic algorithms are used to find an optimal similarity function between two sparse rating vectors relevant to users with elements showing their feedbacks on items. Experiments performed on unpublic and public real-world data from the movie domain, such as Movie Lens, Film Affinity and Netflix. This approach showed that The GA-metric runs 42% as fast as the correlation. This is an important advantage in the recommender system, especially when many different recommendation requests are made simultaneously (user to user).

The [42] used evolutionary computing to find the optimal aggregation of different recommendation algorithms by considering multi-objectives such as accuracy, diversity and novelty. In order to evaluate proposed hybrid, authors used Movie Lens dataset for movie recommendation and another dataset which consists of 19,150,868 user’s access to music tracks on the website Last.fm1, for music recommendation. Authors used baseline algorithms available in the MyMedia Lite2 package recommendation library.

5.2. Approaches Based on Clustering

In the [43] , authors used clustering methods for segmentation of users into clusters of customers with similar needs. Utilizing from evolutionary computing to find initial seeds fork-means clustering. In its extended version [44] , authors used genetic algorithms to find optimal cluster centers. In [43] , experiments applied on public GVSu WWW dataset and in [44] dataset gathered from an Internet shopping mall. The proposed approach in compared with traditional clustering methods had better segmentation.

In [45] [46] , authors proposed a memetic recommender system. This recommender system is based on the collaborative behavior of memes. It used the memetic algorithm [47] to propose a strategy to perform the local search for clustering users. This system compared with the traditional collaborative filtering technique, genetic algorithm and the Pearson algorithm based recommender system and leads to better accuracy. Experiments performed on Movie Lens dataset.

In the [48] , a new recommendation method was proposed based on memetic algorithm. For testing this method used four highly sparse real-world datasets. These dataset are standard public [KDD-Cup 2000 (KDD), Restaurant and Consumer (RCM), and Entree Chicago Restaurant (ECR)] and the other is a private dataset. This approach evaluated recommendation performance and compared with frequency-based, user-based, item-based, k-means clustering- based, and genetic algorithm-based methods in terms of precision and recall. Authors also showed that proposed approach outperforms nCo approaches.

In the [49] , an approach proposed which used evolutionary strategies to clustered users. In this approach, clusters are allowed to be overlapping which implicates that the average sparsity remains constant and independent of the number of created cluster. Experiments applied on the Jester dataset. The proposed approach compared to nCo utilizing k-means clustering and showed effectiveness.

5.3. Hybrid and Other Approaches

Proposed approach [50] optimizes the weights according to historical rating using GA. The historical rating data can be used for discovering some of the valuable attributes of user and item that are called latent attributes. The recommendation is generated by the similarity of the user in each cluster. In order to check the performance of the proposed algorithm, authors used Each Movie dataset. Experimental results in this paper showed that the proposed approach improves the quality of recommendations. In its extended version [51] the proposed approach consists of two modules: explicit attribute-based recommender and implicit attribute-based recommender. Chromosomes in the genetic algorithm are used to find weights of implicit or latent attributes of materials for learner. In this approach the interests of learner based on explicit attributes of learning materials can be modeled in a multidimensional information model by preference matrix. Metadata for Architectural Contents in Europe (MACE) dataset is used for experiment. The proposed model outperforms several content-based filtering and nCo techniques and probabilistic latent semantic analysis model (PLSA) [52] on accuracy measures and can reduce some problems such as cold-start and sparsity.

In the [53] , a hybrid genetic algorithm and graph theory-based online recommendation algorithm has been proposed. This approach used Singular Value Decomposition (SVD) [54] matrix factorization and stochastic gradient descent [55] to model user, item feature vector and improve parameter and accuracy. Experiments performed on KDD Cup 2012 Track 1 dataset and showed that the proposed model in compare with various nCo and Model-based collaborative filtering (mCo) baselines is able to recommend online friends with superior accuracy.

A framework to generate ranking functions for items recommendation based on genetic programming proposed in [56] , which called GUARD (Genetic Unified Approach for Recommendation). As shown in Figure 7, this approach included six main phases: 1) Feature extraction, 2) Definition of genetic programming functions and terminals, 3) Terminals caching, 4) Evolutionary Process, 5) Choosing of the best solution and, 6) Recommendation. The proposed framework was tested in two movie datasets namely Movielens 100 k and Movielens 1M. The framework compared to a memory-based method (based on the cosine distance) [57] and a model-based (PureSVD) method.

The proposed model [58] is a multi-objective EC-based recommendation

Figure 7. The architecture of GUARD [57] .

model which maximizes two performance metrics termed as accuracy and novelty. Proposed method compared with nCo, mCo and hybrid CF techniques on the Movie Lens data and demonstrate that the proposed algorithm can make more diverse yet accurate recommendations the probabilistic.

The paper [59] proposed a framework and used the multi-objective evolutionary algorithm based on decomposition to improve the novelty and the diversity for top-k recommendations of an item-based collaborative filtering technique without reducing the accuracy. The datasets which are used to test the framework were Movie Lens and Jester. It is compared with nCo approaches in diversity and novelty of the recommendation list. Proposed approach outperforms nCo approaches. This approach is further refined by using a multi-objective immune algorithm [60] .

6. Conclusions

The rapid growth of information on the web and volume of information and also increasing the number of users demonstrate the requirement of the recommender systems. This review first, introduced the three main classical and traditional filtering methods: 1) Collaborative Filtering, 2) Content-based Filtering and 3) Context-Aware. Second, the evolutionary computing and the ways which they can solve the problems were explained. Third, it introduced and evaluated the number of recent research papers of evolutionary computing approach in the recommender system. The approaches were analyzed from four viewpoints: a) recommendation techniques, b) the evaluation methods, c) datasets which are used in the approaches and, d) the methods which compare with proposed approaches. Depending on considering viewpoints, approaches which utilize evolutionary computing in recommendation systems were divided into three main groups: 1) approaches in which evolutionary computing is used to optimize weights of recommendation techniques or different component, 2) approaches utilizing evolutionary computing for clustering of items or users and 3) hybrid approaches.

As for future research in EC-based recommendation, the authors suggest using the EC-based recommendation (especially genetic algorithm) for the complex recommendation scenarios, to optimize and improve some problems of these recommendations.

Cite this paper

Sadeghi, M. and Asghari, S.A. (2017) Recommender Systems Based on Evolutionary Computing: A Survey. Journal of Software Engineering and Applications, 10, 407-421. https://doi.org/10.4236/jsea.2017.105023

References

  1. 1. Lu, J., Wu, D., Mao, M., Wang, W. and Zhang, G. (2015) Recommender System Application Developments: A Survey. Decision Support Systems, 74, 12-32.

  2. 2. Suganeshwari, G. and Syed Ibrahim, S.P. (2016) A Survey on Collaborative Filtering Based Recommendation System. Proceedings of the 3rd International Symposium on Big Data and Cloud Computing Challenges (ISBCC’16), 49, 503-518.
    https://doi.org/10.1007/978-3-319-30348-2_42

  3. 3. Bobadilla, J., Ortega, F. Hernando, A. and Gutierrez, A. (2013) Recommender Systems Survey. Knowledge-Based System, 46, 109-132.

  4. 4. Park, D., Kim, H., Choi, I. and Kim, J. (2012) A Literature Review and Classification of Recommender Systems Research. Expert Systems with Applications, 39, 10059-10072.

  5. 5. Pero, S. and Horvath, T. (2013) Opinion-Driven Matrix Factorization for Rating Prediction. In: Carberry, S., Weibelzahl, S., Micarelli, A. and Semeraro, G., Eds., User Modeling, Adaptation, and Personalization. UMAP 2013. Lecture Notes in Computer Science, Vol. 7899, Springer, Berlin, Heidelberg, 1-13.

  6. 6. Kelly, D. and Teevan, J. (2003) Implicit Feedback for Inferring User Preference: A Bibliography. SIGIR Forum, 37, 18-28.
    https://doi.org/10.1145/959258.959260

  7. 7. Bobadilla, J., Ortega, F., Hernando, A. and Arroyo, A. (2012) A Balanced Memory Based Collaborative Filtering Similarity Measure. International Journal of Intelligent Systems, 27, 939-946.
    https://doi.org/10.1002/int.21556

  8. 8. Ashley-Dejo, E., Ngwira, S. and Zuva, T. (2015) A Survey of Context-Aware Recommender System and Services. International Conference on Computing, Communication and Security (ICCCS), Pamplemousses, 4-5 December 2015, 1-6.

  9. 9. Abbas, A., Zhang, L. and Khan, S.U. (2015) A Survey on Context-Aware Recommender Systems Based on Computational Intelligence Techniques. Computing, 97, 667-690.
    https://doi.org/10.1007/s00607-015-0448-7

  10. 10. Kwon, J. (2012) A Study on Effective Proactive Service in Pervasive Computing Environment. International Journal of Computer Science and Network Security, 12, 35-39.

  11. 11. Smirnov, A., Kashevnik, A., Ponomarev, A., Shilov, N., Schekotov, M. and Teslya, N. (2013) Recommendation System for Tourist Attraction Information Service. 14th Conference of Open Innovation Association FRUCT, Espoo, 11-15 November 2013, 148-155.
    https://doi.org/10.1109/FRUCT.2013.6737957

  12. 12. Yeung, K.F. and Yang, Y. (2010) A Proactive Personalized News Recommender System. Presented at the Development in E-Systems Engineering (DESE), London.

  13. 13. Dehghani Champiria, Z., Shahamirib, R. and Salima, S. (2015) A Systematic Review of Scholar Context-Aware Recommender Systems. Expert Systems with Applications, 42, 1743-1758.

  14. 14. Adomavicius, G., Sankaranarayanan, R., Sen, S. and Tuzhilin, A. (2005) Incorporating Contextual Information in Recommender Systems Using a Multidimensional Approach. ACM Transactions on Information Systems (TOIS), 23, 103-145.
    https://doi.org/10.1145/1055709.1055714

  15. 15. Campos, P.G., Fernández-Tobias, I., Cantador, I. and Diez, F. (2013) Context-Aware Movie Recommendations: An Empirical Comparison of Pre-Filtering, Post-Filtering and Contextual Modeling Approaches. E-Commerce and Web Technologies, 152, 137-149.
    https://doi.org/10.1007/978-3-642-39878-0_13

  16. 16. Verbert, K., Manouselis, N., Ochoa, X., Wolpers, M., Drachsler, H., Bosnic, I. and Duval, E. (2012) Context-Aware Recommender Systems for Learning: A Survey and Future Challenges. IEEE Transactions on Learning Technologies, 5, 318-335.
    https://doi.org/10.1109/TLT.2012.11

  17. 17. Panniello, U., Tuzhilin, A. and Gorgoglione, M. (2014) Comparing Context-Aware Recommender Systems in Terms of Accuracy and Diversity. User Modeling and User-Adapted Interaction, 24, 35-65.

  18. 18. Asabere, N.Y. (2013) Towards a Viewpoint of Context-Aware Recommender Systems (CARS) and Services. International Journal of Computer Science and Telecommunications, 4, 19-29.

  19. 19. Gallego, D., Barra, E., Rodriguez, P. and Huecas, G. (2013) Incorporating Proactivity to Context-Aware Recommender Systems for E-Learning. 2013 World Congress on Computer and Information Technology (WCCIT), Sousse, 22-24 June 2013, 1-6.

  20. 20. Champiri, Z.D., Salim, S.S.B. and Shahamiri, S.R. (2015) The Role of Context for Recommendations in Digital Libraries. International Journal of Social Science and Humanity, 5, 948-954.

  21. 21. Yu, X. and Gen, M. (2010) Introduction to Evolutionary Algorithms. Springer-Verlag, London.

  22. 22. Eiben, A.E. and Smith, J.E. (2003) Introduction to Evolutionary Computing. Springer-Verlag, Berlin, Heidelberg.

  23. 23. Engelbrecht, A.P. (2007) Computational Intelligence: An Introduction 2nd Edition, Wiley, Hoboken.

  24. 24. Fogel, D.B. (1995) Evolutionary Computation: Toward a New Philosophy of Machine Intelligence. IEEE Press, Piscataway, NJ.

  25. 25. Horvath, T. and Carvalh, A. (2016) Evolutionary Computing in Recommender System: A Review of Recent Research. Natural Computing, 1-22.

  26. 26. Bhattacharya, M. (2013) Evolutionary Approaches to Expensive Optimisation. International Journal of Advanced Research in Artificial Intelligence, 2, 53-59.
    https://doi.org/10.14569/ijarai.2013.020308

  27. 27. Zhang, J., Zhan, Z.H., Chen, N., Gong, Y.J., Zhong, J.H., Chung, H., Lin, Y. and Shi, Y.H. (2011) Evolutionary Computation Meets Machine Learning: A Survey. IEEE Computational Intelligence Magazine, 6, 68-75.
    https://doi.org/10.1109/MCI.2011.942584

  28. 28. Floreano, D. and Mattiussi, C. (2008) Bio-Inspired Artificial Intelligence. Theories, Methods, and Technologies. The MIT Press, Cambridge.

  29. 29. Ong, Y.S., Lim, M.H. and Chen, X. (2010) Memetic Computation—Past, Present and Future. IEEE Computational Intelligence Magazine, 5, 24-31.
    https://doi.org/10.1109/MCI.2010.936309

  30. 30. Velez-Langs, O. and De Antonio, A. (2014) Learning User’s Characteristics in Collaborative Filtering through Genetic Algorithms: Some New Results. In: Jamshidi, M., Kreinovich, V. and Kacprzyk, J., Eds., Advance Trends in Soft Computing. Studies in Fuzziness and Soft Computing, Vol. 312, Springer, Cham, 309-326.
    https://doi.org/10.1007/978-3-319-03674-8_30

  31. 31. Venturini, V., Carb, J. and Molina, J.M. (2008) Learning User Profile with Genetic Algorithm in AmI Applications. In: Corchado, E., Abraham, A. and Pedrycz, W., Eds., Hybrid Artificial Intelligence Systems. HAIS 2008. Lecture Notes in Computer Science, Vol. 5271, Springer, Berlin, Heidelberg, 124-131.
    https://doi.org/10.1007/978-3-540-87656-4_16

  32. 32. Ujjin, S. and Bentley, P. (2002) Learning User Preferences Using Evolution. Asia-Pacific Conference on Simulated Evolution and Learning.

  33. 33. Ho, Y., Fong, S. and Hang, Y. (2007) A Hybrid GA-Based Collaborative Filtering Model for Online Recommenders. Proceedings of the International Conference on e-Business, Barcelona, 28-31 July 2007, 200-203.

  34. 34. Dao, T.H., Jeong, S.R. and Ahn, H. (2012) A Novel Recommendation Model of Location-Based Advertising Context-Aware Collaborative Filtering Using GA Approach. Expert Systems with Applications: An International Journal, 39, 3731-3739.

  35. 35. Agarwal, V. and Bharadwaj, K. (2011) Trust-Enhanced Recommendation of Friends in Web Based Social Networks Using Genetic Algorithms to Learn User Preferences. In: Nagamalai, D., Renault, E. and Dhanuskodi, M., Eds., Trends in Computer Science, Engineering and Information Technology. Communications in Computer and Information Science, Vol. 204, Springer, Berlin, Heidelberg, 476-485.
    https://doi.org/10.1007/978-3-642-24043-0_48

  36. 36. Agarwal, V. and Bharadwaj, K. (2012) A Collaborative Filtering Framework for Friends Recommendation in Social Networks Based on Interaction Intensity and Adaptive User Similarity. Social Network Analysis and Mining, 3, 359-379.
    https://doi.org/10.1007/s13278-012-0083-7

  37. 37. Liang, Y. and Li, Q. (2011) Incorporating Interest Preference and Social Proximity into Collaborative Filtering for Folk Recommendation. SIGIR 2011 Workshop on Social Web Search and Mining, Analysis under Crisis, Beijing, 28 July 2011.

  38. 38. Silva, E., Camilo Jr., C., Pascoal, L. and Rosa, T. (2016) An Evolutionary Approach for Combining Results of Recommender Systems Techniques Based on Collaborative Filtering. IEEE Congress on Evolutionary Computation, Beijing, 6-11 July 2014, 959-966.

  39. 39. Dietterich, T.G. (2000) Ensemble Methods in Machine Learning. In: Multiple Classifier Systems. MCS 2000. Lecture Notes in Computer Science, Vol. 1857, Springer, Berlin, Heidelberg, 1-15.
    https://doi.org/10.1007/3-540-45014-9_1

  40. 40. Xiao, J., Luo, M., Chen, J.M. and Li, J.J. (2015) An Item Based Collaborative Filtering System Combined with Genetic Algorithms Using Rating Behavior. In: Huang, D.S. and Han, K., Eds., Advanced Intelligent Computing Theories and Applications. ICIC 2015. Lecture Notes in Computer Science, Vol. 9227, Springer, Cham, 453-460.
    https://doi.org/10.1007/978-3-319-22053-6_48

  41. 41. Bobadilla, J., Ortega, F., Hernando, A. and Alcala, J. (2011) Improving Collaborative Filtering Recommender System Results and Performance Using Genetic Algorithms. Knowledge-Based Systems, 24, 1310-1316.

  42. 42. Ribeiro, M.T., Lacerda, A., Veloso, A. and Ziviani, N. (2012) Pareto-Efficient Hybridization for Multi-Objective Recommender Systems. Proceedings of the 6th ACM Conference on Recommender Systems, Dublin, 9-13 September 2012, 19-26.

  43. 43. Kim, K. and Ahn, H. (2004) Using a Clustering Genetic Algorithm to Support Customer Segmentation for Personalized Recommender Systems. In: Kim, T.G., Eds., Artificial Intelligence and Simulation. AIS 2004. Lecture Notes in Computer Science, Vol. 3397, Springer, Berlin, Heidelberg, 409-415.
    https://doi.org/10.1007/978-3-540-30583-5_44

  44. 44. Kim, K. and Ahn, H. (2008) A Recommender System Using GA k-Means Clustering in an Online Shopping Market. Expert Systems with Applications, 34, 1200-1209.

  45. 45. Banati, H. and Mehta, S. (2010) Memetic Collaborative Filtering Based Recommender System. 2010 2nd Vaagdevi International Conference on Information Technology for Real World Problems, Warangal, 9-11 December 2010, 102-107.

  46. 46. Banati, H. and Mehta, S. (2010) A Multi-Perspective Evaluation of MA and GA for Collaborative Filtering Recommender System. International Journal of Computer Science & Information Technology (IJCSIT), 2, 102-122.

  47. 47. Chen, X., Ong, Y.S., Lim, M.H. and Tan, K.C. (2011) A Multi-Facet Survey on Memetic Computation. IEEE Transactions on Evolutionary Computation, 15, 591-607.
    https://doi.org/10.1109/TEVC.2011.2132725

  48. 48. Marung, U., Theera-Umpon, N. and Auephanwiriyakul, S. (2014) Applying Memetic Algorithm-Based Clustering to Recommender System with High Sparsity Problem. Journal of Central South University, 21, 3541-3550.
    https://doi.org/10.1007/s11771-014-2334-4

  49. 49. Georgiou, O. and Tsapatsoulis, N. (2010) Improving the Scalability of Recommender Systems by Clustering Using Genetic Algorithms. In: Diamantaras, K., Duch, W. and Iliadis, L.S., Eds., Artificial Neural Networks, ICANN 2010. Lecture Notes in Computer Science, Vol. 6352, Springer, Berlin, Heidelberg, 442-449.

  50. 50. Salehi, M., Kamalabadi, I. and Ghaznavi-Ghoushchi, M. (2013) Attribute-Based Collaborative Filtering Using Genetic Algorithm and Weighted C-Means Algorithm. International Journal of Business Information Systems, 13, 265-283.
    https://doi.org/10.1504/IJBIS.2013.054465

  51. 51. Salehi, M., Pourzaferani, M. and Razavi, S. (2013) Hybrid Attribute-Based Recommender System for Learning Material Using Genetic Algorithm and a Multidimensional Information Model. Egyptian Informatics Journal, 14, 67-78.

  52. 52. Hofmann, T. (2004) Latent Semantic Models for Collaborative Filtering. ACM Transactions on Information Systems (TOIS), 22, 89-115.
    https://doi.org/10.1145/963770.963774

  53. 53. Li, Q., Yao, M., Yang, J. and Xu, N. (2014) Genetic Algorithm and Graph Theory Based Matrix Factorization Method for Online Friend Recommendation. The Scientific World Journal, 2014, Article ID: 162148.
    https://doi.org/10.1155/2014/162148

  54. 54. Plassman, G.E. (2013) A Survey of Singular Value Decomposition Methods and Performance Comparison of Some Available Serial Codes. NASA Technical Reports Server (NTRS).

  55. 55. Clemencon, S., Bertail, P., Chautru, E. and Papa, G. (2015) Survey Schemes for Stochastic Gradient Descent with Applications to M-Estimation. Journal of Multivariate Analysis.

  56. 56. Guimaraes, A., Costa, T.F., Lacerda, A., Pappa, G.L. and Ziviani, N. (2013) Guard: A Genetic Unified Approach for Recommendation. Journal of Information and Data Management, 4, 295-310.

  57. 57. Cremonesi, P., Koren, Y. and Turrin, R. (2010) Performance of Recommender Algorithms on Top-n Recommendation Tasks. 4th ACM Conference on Recommender Systems, Barcelona, 26-30 September 2010, 39-46.

  58. 58. Zuo, Y., Gong, M., Zeng, J., Ma, L. and Jiao, L. (2015) Personalized Recommendation Based on Evolutionary Multi-Objective Optimization [Research Frontier]. IEEE Computational Intelligence Magazine, 10, 52-62.
    https://doi.org/10.1109/MCI.2014.2369894

  59. 59. Wang, S., Gong, M., Ma, L., Cai, Q. and Jiao, L. (2014) Decomposition Based Multiobjective Evolutionary Algorithm for Collaborative Filtering Recommender Systems. IEEE Congress on Evolutionary Computation (CEC), Beijing, 6-11 July 2014, 672-679.

  60. 60. Geng, B., Li, L., Jiao, L., Gong, M., Cai, Q. and Wu, Y. (2015) NNIA-RS: A Multi-Objective Optimization Based Recommender System. Physica A: Statistical Mechanics and Its Applications, 424, 383-397.

NOTES

1https://www.last.fm/.

2http://www.mymedialite.net/.