1 Introduction

The order take-out has become China’s new and popular way of diet, which is due to the popularity of Smart phones and mobile payment in China, the appearance of a large number of take-away dining O2O APP, the guarantee and support of Internet and Communication Technology. Connecting users and offline businesses through the Internet as a media, O2O take-away provide users with a wealth of take-away information and convenient service. Users can stay at home online ordering and enjoy take-away services. At the same time, the expansion of business scale is achieved and provide a new sales and marketing channels to merchants. It permits smarter consumption for consumers as well as successful promotion for companies Chung et al. [1]. Chinese O2O take-away food and beverage industry first appeared in 2009. Due to the pace of modern life continues to accelerate and the government release policies to encourage catering enterprises innovation their mode of service, O2O take-away with high efficiency and convenience has been developing in leaps and bounds in recent years. According to IResearch publishing Chinese Online Food And Take-off Industry Research Report In 2017 First Half Year, which shows that the market size of Chinese’s online catering market reached 166.24 million yuan (Chinese RMB) in 2016, an increase of 33.0%, the market size is expected to reach 204.56 billion Yuan in 2017; China’s online catering take-away users reached 256 million people in 2016, compared to the growth of 22.5% in 2015, online catering take-out users are expected to reach 301 million and 346 million people in 2017 or 2018.

However, as the same as other information technologies, O2O take-out dining APP always caused the problems such as reducing utilization rate of Information and “information overload”. Recommendation system is an effective technique to relieve the problem. Through the data mining, it analyzes the relations between the user and the project to be able to help users find the Related content intelligently Rana and Jain [2]. The system has received wide attention and application in academic circles, and has achieved many research results. Recommendation system is widely used in various fields, such as electronic commerce (Amazon, eBay, Alibaba), search engine (Google, Yahoo), music (Pandora), Internet advertising and etc., not only brings the benefits to operators, but also brings convenience to the user.

As an important application part of the e-commerce recommendation system, the take-away restaurant recommendation system is similar to other recommendation systems in the basic principle, but the particularity of its own performance makes recommendation new challenges in the establishment process. The difficulties are shown as follows: ① user model is more unstable. Users’ preferences for diet are susceptible to many factors, such as changes in seasonal, geographical, religious, social and cultural factors, making it difficult for the user to capture the taste of the user and increase the difficulty of establishing a user model. ② Recommendation system has greater computational complexity. Chinese diet is varied and tastes uneven, coupled with the variety of user’s taste, the same dishes of different restaurants may have obvious differences. Therefore, it will lead to more recommendation system data, large amount of calculation, fast data update, and high maintenance cost of database.

2 Research status of O2O take-away restaurant recommendation system

2.1 Definition of O2O take-away restaurant recommendation system

According to the study of Adomavicius [3], the take-away restaurant recommendation system can be defined as C for all user sets, S is the set of all restaurants that may be recommended, and the utility function u is used to measure the recommendation degree of a restaurant s to user C, For example, u: \(C \quad \times \quad S \quad \rightarrow \quad R\), where R is a nonnegative real number of all sequences in a certain range, \(c \quad \in \quad C\), \(s \quad \in \quad S\). Hence, the system is studied to seek for the utility function u to maximize the sellers (restaurants) object \(S*\),

$$\begin{aligned} \forall \hbox {c}\in \hbox {C},S^{{*}}=arg\mathop {\max }\limits _{s\in S} u\left( {c,s} \right) \end{aligned}$$
(1)
Fig. 1
figure 1

The framework of O2O takeaway restaurant recommendation system

In Fig. 1, we can see the framework of O2O takeaway restaurant recommendation system. The user orders a meal each time, which can provide information about their taste preferences and the others. O2O take-away APP can extract the user’s information from the algorithm and store datum into the database for the future. The information of restaurants and other users’ reviews of them can also be stored in the database via the O2O take-out APP. When the user is ready to order a meal, the APP will be set as user address via mobile phone GPS, putting the datum of database into the recommendation algorithm, and choosing a restaurant which is the most consistent to your preferences. It’s like there’s a real service staff providing a restaurant which makes the user satisfied. However, different recommended systems always use different recommended algorithms, the core of the recommended system is that different recommended algorithms are used by different data sources. There are three general recommendation algorithms.

2.2 Recommended algorithm classification of O2O take-away restaurant recommendation system

2.2.1 Content-based recommendation

Content-based recommendation is a recommended technique Adomavicius and Tuzhilin for recommending similar products based on user-approved merchandise [3], which is widely used in the recommendation of music Su et al. [4], video and article Gopalan et al. [5]. In the recommendation of the take-away restaurant, the business platform extracts the restaurant which are acclaimed or collected by users after the meal. Through the use of models to calculate similar extent between the restaurant and other restaurants, the platform can recommend the restaurant that has high similar level to the users. For example, Yap et al. put forward context-aware content-based recommended systems in restaurant recommendation [6]. System is to predict the utility of an unrated item for a user, based on her rated items and the context in which those ratings, or scores. A list of top-N unrated items that the model predicts user to like the most.

2.2.2 Collaborative filtering recommendation

Collaborative filtering is one of the most successful recommended system technology, which is widely used in the application field of prediction of user’s interests Tian et al., Khatami and Pashazadeh [7, 8]. Collaborative filtering recommendation system has been related to the leading application in foreign countries, and has very high application value. Collaborative filtering technology has the ability to recommend new projects, generate new recommendation, and discover potential and unknown interests of users Qiao and Zhang [9]. There are two types of cooperative filtering algorithms in the application of O2O take-away restaurant recommendation system. One is based on the user’s collaborative filtering. Its principle is that based on the score that given by users for the restaurant, the platform usually uses Pearson correlation or angle cosine to determine the similarity between users, and according to the similar taste between similar users, recommend similar good restaurant. Taking University of International Relations (Beijing) as an example, Li et al. use Collaborative filtering recommendation algorithm based on the users, which can recommend similar flavors of online [10]. The other is based on collaborative filtering algorithms for restaurant analysis. It calculate the similarity between restaurants through the each restaurant’s score, and then has recommendations to the current user based on the similarity between restaurants.

2.2.3 Mixed recommendation

Content-based recommendation and collaborative filtering recommendation could appear some drawbacks in the practical application, such as collaborative filtering recommendations often have the cold start problem. They always do not consider new users and redundant services Ma et al. [11]. The new algorithm, which combines different recommendations, is called hybrid recommendation. The most common approach is to combine collaborative filtering with other filtering techniques. Guo studies the O2O-oriented behavior of users, a hybrid recommendation algorithm based on content and collaborative filtering is proposed. He uses the modified cosine similarity formula to calculate the similarity between users in the collaborative filtering recommendation algorithm, and the cosine similarity theorem to calculate the similarity between the characteristic vector of interest and the feature vector of the project in the content based recommendation algorithm [12]. Hybrid recommendation is a combination of different recommended strategies, so that a variety of recommended algorithms can achieve the purpose of fostering strengths and circumventing weaknesses.

2.3 The status of O2O take-out restaurant recommendation system

As China vigorously encourages the innovative service mode of catering enterprises, the O2O take-away restaurant recommendation system shows great potential and prospects. In terms of users, users could find food that matches their tastes in the shortest time, saving a lot of time. For restaurant, the recommendation system helps businesses make free advertising, and increase the turnover of businesses. However, due to some technical factors, there are still many shortcomings, such as cold start problem. College students are the main force to order take-away. Every year the university will welcome a new batch of students, and a large part of them will be registered in the APP as a new user. However, there is no record of any activity on the new user, and it is impossible to know his dietary preference and compare it with other similar users, resulting in the failure to make the correct recommendation. Similarly, every day China has countless small businesses to set up. Due to just enter the APP, no users have graded, so the new businesses may not be recommended for a long time. Cold start problems lead to the loss of new users and new businesses, which is also the “general problem” of mostly recommended systems. And the user’s preference for ordering changes, but the system lacks of a study of dynamic changes in user preferences. In addition, there have other problems, such as lots of O2O take-away recommended system data, the large calculation, high system maintenance cost and so on. Therefore, almost recommender systems have not yet fully taken advantage of their potential.

Table 1 The Nine-scale method and its meaning

3 O2O take-out restaurant recommendation system based on RC/AHP

3.1 The principle of RC/AHP method

RC/AHP method is the combination of RC and AHP Chen and Wally [13]. The analytic hierarchy process (AHP) was presented by American operational scientist Saaty in the 1970s. It has solved the problems of power distribution, emergency research and oil price forecast for the United States successively. It is a simple, flexible and practical decision-making method with high reliability and small error, which can combine the qualitative and quantitative methods of systematic and hierarchical analysis. But when using AHP, the important level of each index is always difficult to determine. The Rank-Centroid (RC) is a method which can classify the related indicators according to its importance Barron and Barrett, Day et al. [14, 15]. Through RC and AHP used together, RC divide all indices of the index layer, it can solve the shortage of AHP.

The detailed steps of RC/AHP are as follows.

Firstly, we need establish a hierarchical model of the O2O take-out restaurant. In the process of building a hierarchical model, we should follow the scientific and systematic principles below circled. ① The indicators should be able to truly reflect the characteristics of the O2O take-out restaurant. ② The indicators should be clear-meaning, coordinated and unified. And the level and structure should be reasonable. ③ The indicators should fully reflect the target of evaluation, not omit the important aspects, and always avoid containing excessive at the same time. ④ The number of indicators should be appropriate. There should be no overlap of the content.? The indicators should take full account of the operability of the reality, which should be easily collected and quantified.

Secondly, using RC, graded by users of the important degree of each evaluation index. The most important indicator is 1, the second important indicator is 2, and the third important indicator is 3, and so on. And then it can collect the grade of the evaluation indicator that the users make on several times, calculate the sum of the grades of each evaluation indicator, and divide the final rank of each indicator according to this.

Thirdly, according to the result of the division, using AHP, we can compare the importance of indicators in factor layer and indicator layer pairwise using the nine-scale method (Table 1), and construct the judgment matrix. Besides, In order to test the reasonableness of the results, we also need to check the consistency of judgment matrix and calculate matrix weight vector.

Finally, the recommendation model is established based on the value of the matrix weight vector.

3.2 Establishing hierarchical model

The development of recommender systems has prompted more and more companies or platforms to realize the importance of detailed evaluation of the recommended object itself. Some O2O take-away restaurant APPs increased the evaluation of the business, using a very common practice, rewarding red envelopes or vouchers after users evaluate the ordering food. The evaluation mainly includes the taste, quality, service attitude, delivery time and etc. And it may also be included the ordering of food Slide Show. This provides support for the study of recommendation methods in this paper.

The hierarchical model of O2O take-away restaurant is constructed, and the establishment of hierarchical model has an important impact on the recommended results. First of all, the far left is the target layer which is the objective food chosen to order by the user according to Fig. 2, such as ordering dumplings. What’s more, the main factors are restaurants’ factors extraction from the APP platform. This article analyzes some restaurants and users through investigation. When users ordering at App, they will mainly consider food (B\(_{1})\), price (B\(_{2})\) and service (B\(_{3})\) as the three factors. In addition, the index level contains the index of the taste (C1), temperature (C\(_{2})\), appearance (C\(_{3})\), portions (C\(_{4})\), clean degree (C\(_{5})\), Price level (C\(_{6})\), Discount (C\(_{7})\), Distribution costs (C\(_{8})\), Packaging and tableware (C\(_{9})\), Delivery time (C\(_{10})\), Attitude to consumer (C\(_{11})\). Finally, it is the recommended restaurant. In order to simplify the calculation process, we assume that there are four dumpling restaurants\( D_{1}\), \( D_{2}\), \(D_{3}\) and \(D_{4} .\)

Fig. 2
figure 2

O2O take-away restaurant hierarchy model

4 Experiment

4.1 Construct judgment matrix

Using the App, the users always have subtle changes for each meal to the preferences of the index of food, price and service, which may be due to have been influenced by the differences of psychological, physiological, temporal and spatial in the every time ordering. For example, lunch time is only one hour, the user certainly want to get the food as soon as possible, so as not to delay the work in the afternoon, when the user feel that the delivery time of his meal is the most important for him. And by the end of the day, the user finishes his day’s work, he feel that having a good dinner is a good way to relax a hard day’s work, and then the taste of food is probably the most important. For the extraction of user’s preference, we can use quantitative analysis and qualitative analysis Licai et al. [16]. For example, mathematical models, machine learning and data mining techniques, novel statistical model Jung et al. [17], strict partial order approach for modeling preferences Holland and Kießling [18] can be used. According to the O2O take-away hierarchy model in Fig. 2, we can assume that the user’s preference for the last four times is \( U_{1} , U_{2} , U_{3} , U_{4}\), and using RC method to classify the importance of indicators. Among them, \(T_{i}\) is the sum of user’s four latest \(U_{1} , U_{2} , U_{3} , U_{4}\) to grade indices of the specified values of \(C_{i}\). Depending on the size of the \(T_{i}\) value, \(S_{i}\) is the result of the evaluation indexes re-ranked. The principle of sorting: evaluation indicators for the smallest \(T_{i}\) designated as 1, evaluation indicators for the second smallest \(T_{i}\) designated as 2, and so on. But if there are two identical T values appearing, we can add 1 to the second T value (Such as if T2 = T3 = 15, we make T3 = 15 + 1 = 16).

RC was used to divide each evaluation index of the index layer \( C_{1} , C_{2}\)...C\(_{11}\) into grades, and the rank values of factor layers \(B_{1} , B_{2}\) and \(B_{3}\) are calculated:

$$\begin{aligned} BM_m =Round\left( {\frac{TS_m }{CB_m }} \right) \end{aligned}$$
(2)

Among them, BM\(_{m}\) is calculated by the grade value of factor layer \( B_{1} , B_{2} , B_{3}\), TS\(_{m}\) is the sum of value \(S_{i}\) of indices \(C_{i}\) under factor level \(B_{m}\), CB\(_{m}\) is the number of subordinate indexes in factor layer.

Table 2 The grade calculation data for evaluation index

According to the value of BM\(_{m}\) in Table 2, using AHP and the nine-scale method (Table 1), we construct matrix A as shown in Table 3. According to the value of \(S_{i}\) in Table 2, three judgment matrices \( B_{1} , B_{2} , B_{3}\) are constructed as shown from Tables 4, 5 and 6. However, what we need to pay carefully attention is that if the difference between the two indicators is greater than 9, we should choose 9 into the matrix.

Table 3 The judgment matrix A–B
Table 4 The judgment matrix B\(_{1}\)–C
Table 5 The judgment matrix B\(_{2}\)–C
Table 6 The judgment matrix B\(_{3}\)–C

4.2 Consistency check and matrix weight vector calculation

In this paper, there are four judgment matrices A, B\(_{1}\), B\(_{2}\), B\(_{3}\). The most fundamental target of AHP is to find maximum eigenvalue and feature vector of the each judgment matrix, which can use MATLAB 2016a to calculate them. The specific code is shown below.

figure c

Running through the MATLAB, the maximum eigenvalue \(\lambda _{max} \) is shown in Table 8 and feature vector \(W_{i}\) and \(W_{m}\) is displayed in Table 9. In order to avoid logical errors of judgment matrix, the consistency of the matrix need to judge. The compatibility index CI for each matrix and coefficient CR need to be calculated as follows:

$$\begin{aligned} CI=\frac{\lambda _{max} -n}{n-1} \end{aligned}$$
$$\begin{aligned} CR=\frac{CI}{AR} \end{aligned}$$
(3)
Table 7 The values of average random consistency index AR

Among them, \( \lambda _{max} \) is the maximum eigenvalue in the judgment matrix, n is the order of the comparison matrix, and AR (Table 7) is the average random consistency index. After calculation, in Table 8, the CR of each judgment matrix is less than 0.1, so the consistency test is passed. If the CR is more than 0.1, we must expand or reduce the number of preference (\(U_{i})\), recompute eigenvalue and feature vector following these steps until the CR is less than 0.1.

Table 8 \(\lambda _{max} \), CI and CR of each judgment matrix

4.3 Establishment of O2O take-away food recommendation model

Table 9 The weight of each index value

In Table 9, the weight of factors layer B\(_{i}\) indicated in parentheses, \( W_{i}\) is the weight of factors layer \(C_{i}\), \(W_{m}\) is weight of factors layer \(B_{i}\). The value of \(Q_{i}\) is the \(W_{m}\) multiply by the corresponding \(W_{i}\), represents the degree of importance in the user’s mind to each index. Therefore, the recommended model is as follows,

$$\begin{aligned} Q_i =W_m *W_i \end{aligned}$$
$$\begin{aligned} RI=\mathop \sum \limits _1^i score*Q_i \end{aligned}$$
(4)

Among them, score is the average number of a restaurant’s index score which was evaluated by other users, RI is the recommended index. The higher index, the more worthy of recommendation.

4.4 Quantification and processing of the index

This paper takes ele.me APP as an example to quantify the index. With reference to ele.me evaluation system, we will choose values “1” to “5” for a five-point, the 5 point is the maximum, the 1 point is the lowest. In the APP, the score of food taste and service attitude can be found directly. The price level, discount, delivery cost and delivery time have corresponding data, but there is no quantification of these indicators directly. Temperature, appearance, weight, clean degree and Packaging and tableware is not direct data, we need extract from the user’s text evaluation.

For example, for the price level, we calculate all the same type of restaurants’ average price at local area, called Mean_P. P is the price of a restaurant.

$$\begin{aligned} F=\left( {P- Mean\_P} \right) / Mean\_P \end{aligned}$$
(5)
Table 10 The price level scoring conditions

In Table 10, F is the condition index of price level, we can determine the score of price level by calculating the F value. The three indicators of discount, distribution cost and delivery time can also calculate the score in the same way.

We can find some good or bad comments in the evaluation of user text. We can evaluate the scores according to these comments. For example, for the Packaging and tableware, if there are similar remarks in the text evaluation, such as “bad packaging”, “the food are missing”, “bad tableware” or “there is no tableware” and so on. These remarks we think is not satisfied sentence for the evaluation of packaging and tableware. The number of these statements is set to BC, The total number of comments to TC.

$$\begin{aligned} G=\frac{BC}{TC} \end{aligned}$$
(6)
Table 11 The Packaging and tableware scoring conditions

In Table 11, G is the condition index of Packaging and tableware, we can determine the score by calculating the G value. The four indicators of temperature, appearance, weight, clean degree can also calculate the score in the same way.

4.5 The comprehensive score of dumpling restaurant

Fig. 3
figure 3

Each index score of the four restaurants

Table 12 The comprehensive score of four dumpling restaurants

According to our four dumpling restaurants data in ele.me APP, we quantify these index. In Fig. 3, the significant difference in the index is \(C_{10}\), which indicates that the time of delivering in these four restaurants is very different. And finally basing on model (5) can get the comprehensive score of the four dumpling restaurants. In Table 12, the comprehensive score of the four dumpling restaurants are 4.1293, 4.6596, 4.5418 and 4.8782 separately. Obtaining the highest score is \(D_{4}\). We will recommend \(D_{4}\) dumpling restaurant to the user.

5 Conclusion

O2O take-away restaurant service is the new serving modern which has a great potential for development. But it is developed in a very short time, still not mature enough in our country. Whether in theory or design, the corresponding research on recommendation technology and recommendation system is still in the preliminary stage, far from perfect level.

According to the characteristics of O2O takeaway restaurant, we make a study of the related issues. We proposes a recommendation algorithm of RC/AHP based on O2O takeaway restaurant, and set ele.me APP as an example. The study found that the method is feasible. It can provide reference to solve O2O take-away restaurant recommendation system’s problems which are also the complexity, the large amount of computation and etc.