## 3 Hybrid Service Placement Based on a Recommender System
### Proposed Architecture (System Model)
#### 3.1.4 Recommendation System  
[PERSON] [2] defined recommendation systems as systems with the ability to offer personalized recommendations, guiding the user to interesting and useful resources within a large dataset. Thus, ref. [35] describes recommendation systems as programs that attempt to recommend the most appropriate items (products or services) to specific users (individuals or companies), anticipating a user's interest in an item based on information related to items, users, and interactions. The two fundamental entities present in all recommendation systems are the user and the item. The user represents the person who uses the RS, expresses his or her opinion on various items, and receives new recommendations from the system. The item, on the other hand, is the general term used to describe what the system recommends to users. The input data for an RS depends on the type of filtering algorithm used. In general, they fall into one of the following categories:  
Ratings (Feedback): Allowing the user to express a positive or negative opinion on the item consulted. These ratings, generally numerical and restricted to a scale of values such as [1; 2; 3; 4; 5] reflect the user's interest in the item. A high score indicates strong interest and a match with preferences, while a low score suggests a lack of interest. Content data: Based on the textual analysis of the documents associated with the items rated by the user. Features extracted from this analysis are then integrated as inputs into the filtering algorithm to deduce the user's profile. Figure 4: The proposed ACU function where the arrows represent the flow of IoT requests through different processing paths depending on their delay sensitivity and fog node availability. Demographic attributes: Refer to information explicitly or implicitly collected about the user, such as age, personal status, level of education, location, and others. Although they do not provide direct evaluations, these attributes enrich the user profile, making it easier to tailor recommendations based on these characteristics. There is a wide variety of recommendation techniques. We present in the following the main recommendation techniques used in our approach. Content-based recommendation (CB): CB filtering consists of recommending to the active user new items with similar descriptions to those previously enjoyed. In fact, this technique compares the content of items (a set of attributes) with the user's profile, itself made up of attributes [36; 37]. In our proposed solution, the content-based system focuses on five main steps. The first involves retrieving the data required for the recommendation. The second step consists of the necessary filtering, such as the removal of redundant information. The third step is based on a similarity calculation between the collected data to select the node with maximum similarity in the next step. Finally, it will return the result which is the most suitable node for the placement requested according to this system. Figure 5 illustrates the content-based filtering process. Recommendation based on collaborative filtering (CF): CF is based on the sharing of opinions between users, inspired by the \"word-of-mouth\" principle that humans have always used to make judgments about a product or service they do not know. Recommendation systems based on collaborative filtering recommend to the user items appreciated by users sharing similar preferences, i.e., similar users [38]. As illustrated in Figure 6, the proposed collaborative RS considers the preferences and requirements of the user, his neighbors, and the availability of nodes to recommend the location of a given service. It collects these data first, filters them second, searches for the most similar k-neighbor users by applying the nearest-neighbor algorithm, and then recommends a location based on the similarity result, its history, and node availability. Hybrid recommendation: A hybrid RS is a system that merges two or more distinct recommendation techniques.