An Effective Tool for the Experts' Recommendation Based on PROMETHEE II and Negotiation: Application to the Industrial Maintenance

In this article, we propose an expert recommendation tool that relies on the skills of experts and their interventions in collaboration. This tool provides us with a list of the most appropriate (effective) experts to solve business problems in the field of industrial maintenance. The proposed system recommends experts using an unsupervised classification algorithm that takes into account the competences of the experts, their preferences and the stored information in previous collaborative sessions. We have tested the performance of the system with K-means and C-means algorithms. To fix the inconsistencies detected in business rules, the PROMETHEE II multi-criteria decision support method is integrated into the extended CNP negotiation protocol in order to classify the experts from best to worst. The study is supported by the well known petroleum company in Algeria namely SONATRACH where the experimentations are operated on maintenance domain. Experiments results show the effectiveness of our approach, obtaining a recall of 86%, precision of 92% and F-measure of 89%. Also, the proposed approach offers very high results and improvement, in terms of response time (154.28 ms), space memory (9843912 bytes) and negotiation rounds.


I. Introduction
A MONG the factors of company success, whatever its extension, is the existence of human capital of quality.Indeed, human is a more important resource than money.Companies that are not able to obtain and maintain a competent human capital, whatever the market case is, cannot evolve in an environment as shifting as the one where business is currently taking place.This paper focuses on the evolution of a company by taking into account the experts business knowledge, this knowledge is a major capital for companies, the loss of this knowledge or its misuse potentially leads to the failure of the company.
The knowledge can be represented in several forms, for example in the form of business rules.Business rules can model a business decision.They capitalize a company's knowledge and translate its strategy by describing the actions to be taken for a given process.They are usually written in a controlled natural language.A business rule is a high-level description of how to control and / or make a decision, using specific concepts to a company or an organization.Thus, business rules describe what an expert must do to make a decision [1].
These business rules are usually housed in traditional computer programs, business processes and reference documents, and especially in the minds of business experts (i.e. from expertise).In our case, we were interested in the capitalization of the knowledge possessed by the business experts via the creation of a business rules management system.
In order to properly identify our problematic, we will present the real reasons for the need of a skills-based recommendation tool and performance monitoring to manage the business rules in an enterprise.The main problematic treated in this paper is to provide fast solutions to inconsistent business rules where some business experts who work in collaboration are unable to adhere to an idea or a suggestion related to the business rule.In fact, setting up a dynamic negotiation protocol is not an easy task, the fact of calling all the enterprise's experts to resolve the problem detected and take into account their proposals need a lot of time and effort, and sometimes even cause new problems because there are experts who are not specialized in this type of problem or who do not have enough experience to find a relevant solution.Indeed, a very important aspect to consider is the problem of estimating the effort made for the accomplishment of tasks or projects (to better plan and direct this effort in the medium and long term according to the policy of the company).Thus, the absence of mechanisms to monitor the evolution of skills and performance in real time to make choices in new projects could lead to failure in collaborative work with experts in the field.
So the idea of this work is to take advantage of the benefits of recommendation systems to select the best qualified and competent experts and best placed to participate in the negotiation sessions.Our contribution is materialized by: • Design and development of a tool for recommending the most competent business experts to resolve inconsistencies in business rules during negotiation sessions.
• Application of the PROMETHEE II multicriteria method to rank the recommended experts from best to worst.
• Conflict resolution by proposing a dynamic negotiation protocol based on the extended version of the CNP, where the proposal of the first expert classified by PROMETHEE II is evaluated.
The article is organized as follows: Section II presents some related works.Section III deals with the problems encountered within the SONATRACH enterprise and highlight the proposed contribution.In Section IV, our proposed approach is explained.This section is followed by a discussion of the obtained results.Finally, Section VI provides the conclusion of this paper, including potential direction for future research.

II. Related Works
Recently, data on the web has increasingly become large, and humans can't treat them with traditional tools.Hence the need to use a recommendation system in order to filter such enormous size of information and extract only the useful part has risen.Recommendation systems are applied in several areas, such as movies, music, books, and so on.

A. Recommendation Systems in Different Domains
The recent rapid growth of the Internet content has led to building recommendation systems that guide users to their needs through an information retrieving process [2].Currently, there are three main filtering approaches: content-based, collaborative, and hybrid.Content-based filtering compares new items against each user's profile, and recommends the closest ones.Collaborative filtering compares users against each other on the basis of their past judgments to create communities, and each user receives the items deemed relevant by their community.Hybrid filtering combines contentbased filtering and collaborative filtering to make the most of each other's advantages [3].In what follows, the most recent work using recommendation systems in different fields are presented.
Authors in [4] proposed to use the Linked Open Data which is a publicly available set of interlinked data and documents, in order to find enough information about new items.
A survey is proposed in [5] that presents the phases of recommendation process and explores the different recommendation filtering techniques and the evaluation metrics for recommendation algorithms.
In [6], authors proposed a recommendation system based on two collaborative filtering algorithms in order to enhance the prediction accuracy in the big data context.The first algorithm uses the k-means clustering technique while the second one uses the k-means clustering technique coupled with Principal Component Analysis.
The paper in [7] described an approach that combines linked data cloud and the information filtering process using a semantic space vector model, and FOAF vocabulary, to define a new distance measure between users.
A new approach has been proposed in [8] to resolve the new user problem in collaborative filtering recommender systems.Authors analyze three solutions, to address the new user cold-start problem, based on the exploitation of user personality information, namely: personality-based collaborative filtering, personality-based active learning and personality-based cross-domain recommendation.
Another approach that addressed the cold-start recommendations and content-based recommendation has been proposed in [9].Authors presented an optimization model for extracting the relationship hidden in content features by considering user preferences.The method was tested on three public datasets that are: hetrec-movielens-2k-v2; bookcrossing and Netflix.
The paper in [10] proposed a system which recommended movies by using data clustering and nature-inspired algorithm.The K-means algorithm is used for clustering with nature-inspired algorithm in order to achieve a global optimum solution.
Other authors proposed a recommendation process for auto industry based on collaborative filtering and association rules.They used association rules in order to classify and find potential customers, then they applied the collaborative filtering methods to realize recommendations [11].
Another work [12] combined an implicit social graph, association rules and pairwise association rules in order to implement a recommender algorithm for food.
The paper in [13] explored different ways of combining predictions from the two types of collaborative filtering: User-based and item-based collaborative filtering.Authors proposed to fuse predictions through multiple linear regression and support vector regression models.The proposed approach aimed to minimize the overall prediction error.
In [14], authors proposed a new soft computing method based on machine learning techniques in order to find the best matching eco-friendly hotels based on several quality factors in TripAdvisor.A dimensionality reduction and prediction machine learning techniques is used to improve the scalability of prediction from the large number of users' ratings.To find the important features of eco-friendly hotels for users, the CART technique was used as a feature selection technique and ANFIS as a supervised machine learning technique.LOOKER, a mobile recommender system for tourism domain was proposed in [15].A content-based filtering strategy was implemented to make personalized suggestions based on the user's tourism-related user-generated content diffused on social media.
In [16], a recommendation system was proposed for the recommendation of movies based on the genres.A content-based filtering approach using genre correlation was presented based on the type of genres that the user might prefer to watch.
In the work presented in [17], a recommendation system for financial planning was described, using a hybrid approach that combined the user-user and item-item similarity with demographic filtering.
A personalized Context-Aware Hybrid Travel Recommender System was presented in [18], using user's contextual information.The proposed system was evaluated on the datasets of Yelp and TripAdvisor.

B. Expert Recommendation Systems
Recommender systems have been also used to recommend experts.An expert recommendation system is an emerging area that attempts to detect the most knowledgeable people in some specific topics.This detection is based on both the extracted information from peoples' activities and the content of the documents concerned with them.Moreover, an expert recommendation system takes a user topic or query and then provides a list of people sorted by the degree of their relevant expertise with the given topic or query.These systems can be modeled by information retrieval approaches, along with search engines or a combination of natural language processing systems [2].
The work in [19] presented an architecture based on the expertise of users and clustering.The proposed architecture is composed of: ER client, Web Browser, profiling supervisor, Profile DB, Identification Supervisor, Selection Supervisor, Prefs DB, Interaction Management and HTTP Server.
In the software engineering fields, authors in [20] described a novel expert recommendation system that is based on machine-learning algorithms and domain ontology, in order to identify individuals who could be involved in tackling new design concerns.
The objective of the approach proposed in [21] is to develop an expert recommender system based on social bookmarking systems and folksonomies, in order to find possible colleagues for establishing communities of practice, where people share the same interests and support each other in their working or scientific field.This expert recommender system used the Dice similarity and clustering to recommend similar users based on same bookmarks and tags within social bookmarking systems.
The paper in [2] presented a state of art on expert recommendation systems and explained in details the basic elements and procedures of these systems.It gave some real examples of their applications.
In order to recommend experts who have the appropriate knowledge with regards to the user information needs and detecting experts' communities in a social network, the authors of [22] proposed a hybrid recommender system that integrates the content-based characteristics into a social network-based collaborative filtering system.The proposed approach used Bag of Words model, semantic social network and k-means clustering algorithm.
In [23], an expert recommender system is proposed for the National Industry Association.The whole architecture is composed of: Data collector module, Matching modules, Storage modules, Database connection and Web service.
Furthermore, the proposed method presented in [24] aims at recommending colleague in Expert Cloud based on the friend-offriends (FOF) concept and the All Possible Colleagues at First (APCF) method.In order to find all colleagues who are related to the target user, several features are considered like reputation, expertise, trust, cost, agility and field of study.
In order to develop a personalized expert-based recommender system, authors in [25] used C-SVM algorithm and compared the obtained results with k-Nearest Neighbor algorithm.

C. Comparison of the Related Works
In Table I, we present a comparison of some related works that treat the recommendation.

A. ExpRules Description
In the previous work, authors have proposed an agent-based collaborative system dedicated to capitalizing knowledge, experiences, skills and expertise of experts in the form of business rules, using a collaborative editor (ExpRules) [1].
The main objective behind this approach was to improve business rule consistency management and maintaining rules security without degrading system response time and performance.Domain ontology has been constructed as a formal model to represent a structured conceptual vocabulary that is used on one hand to express business rules, and on the other one to check the inconsistencies that can be detected on business rules [1].
Using the business language, the experts have the possibility to express their rules in an autonomous manner.Herein, a simple rule comprises two parts namely: a condition part and an action part (See the example below).The whole process needs to pass through several steps, from the introduction of the rule until the final storage in the rules base [26], [27], [28].The obtained results during the experiments were very encouraging.This permits to convince the experts and senior responsible in SONATRACH to use and generalize our system.

B. Problem Statement
In the event that an inconsistent rule is detected, the system sends a notification to the concerned expert in order to correct his inconsistent rule.If the system does not receive a response from the concerned expert, then it sends the rule and inconsistency details to the other experts and then initiates a negotiation session to fix the inconsistent rule.
During the negotiation, the system launches collaboration between all the experts of the enterprise in order to find a solution in agreement.Two scenarios are possible, either the experts in collaboration agree on the decision to be made regarding the correction of the detected error, or they find themselves in a conflicting situation, Here, the system adopts the strategies of negotiation to solve the problem, based on the CNP (Contract Net Protocol) with the extended version.
After testing ExpRules, we found that during the negotiation phase, there are experts who propose relevant and correct solutions while other experts do not even participate in the negotiation session or else they propose incorrect solutions, which increases the number of negotiation rounds and weighs down the system.This problem arises when the expert who is not qualified or who does not have enough experience to solve a problem intervenes in the process of managing inconsistencies.
On the other hand, the fact of inviting all the experts of the company to the negotiation session takes a lot of time, since each expert is specialized in a specific area, then inviting an expert who has no connection with the current issue or he/she is a little far will cause a more inconsistent problem, more effort and more time to find a solution.
Another problem raised during the test of ExpRules, is that in the negotiation stage, the first received response is evaluated while sometimes it is not the best solution, which leads to another negotiation round at least.So the idea behind this article is to exploit the recommendation to guide the negotiation, the interest with this approach lies in the saving of time in the negotiating rounds.The participants in the negotiation will be the experts who have been recommended according to their skills and their interventions (successfully) in the previous sessions.

C. Our Contribution
Given the large number of rules used in companies, our goal was to create a system that can detect and manage business rule inconsistencies in a very short time, following a rigorous control strategy involving the opinion of the most experienced experts in most situations.
The main objective of this work is to find a way to measure skills and assess the performance of experts in real time.These domain experts intervene during collaborative work for the management of business rules.Our main goal is to provide a tool to facilitate and better manage the inconsistencies that can be detected in the business rules, thus being able to assess the performance of experts to measure their effectiveness which can help in the evaluation of collaborative work.The interest of this tool is to establish a list of favorites among the business experts in order to make better and more thoughtful choices of people chosen in new projects.This procedure falls within the scope of the recommendation because our tool provides lists of business experts who are able to solve problems and provide new solutions based on their skills, all to reduce the response time and to have the right people in the right place and at the right time.
In this paper, we will present a new approach to manage inconsistencies in business rules through the use of dynamic negotiation, recommendation, unsupervised classification and the PROMETHEE II method, to find the most competent and similar experts, and group them in the same cluster, then we apply the PROMETHEE II method intra cluster.To do this, we based on the skills of business experts and their efficiency in interventions during collaborative work to manage business rules.
We summarize our main contribution in the following points: • Collecting experts' preferences and skills explicitly and implicitly, in order to evaluate their performance and measure their effectiveness, • Applying an unsupervised classification algorithm in order to classify and recommend experts, • Applying PROMETHEE II to deal with the problem of evaluating the first response, • Applying dynamic negotiation to resolve inconsistencies in business rules.

IV. Proposed Approach
This paper presents a new approach to measure the skills of business experts in companies to assess their performance in real time, these experts intervene during the collaborative work for the business rules management.The paper presents an approach that helps to recommend business experts with high qualification and expertise in consistency management rules.These experts are intervening during collaboration and negotiation sessions to detect and correct business rules in maintenance field.The main advantage of this suggested idea is to take benefit from the integration of the recommender tool, unsupervised clustering and multi-criteria decision support methods in the knowledge based system ExpRules.Fig. 1 presents the proposed architecture which is composed of: • Collaborative Knowledge-based System: that allows the experts to introduce, manage and update their business rules using a domain ontology.The domain ontology is used to detect problems of inconsistency detected in the introduced rules and store the entities used in the edition of business rules [1].
• Recommender tool: that provides a list of competent experts who can solve the detected problems.In this paper, we will focus on this phase.

A. Process for Recommending Experts
In order to better understand how our recommendation process for business experts works, we propose to follow four sequential steps, which are:

Rule Introduction
This is the first step of the process that represents the introduction of the rule by the business expert, this rule is usually introduced in the form "IF Conditions THEN Actions".The premises are described in the IF section of the rule and represent facts or situations and the conclusions are described in the THEN section [26].

Consistency Verification
The problem of the consistency management of the business rules defined by the experts is a very difficult problem.A business rule management system must ensure that all business rules include only those rules that are consistent and do not conflict with one another [29].Our system addresses the following inconsistencies: contradiction, never-applicable rules, invalid rules, domain violation, and redundancy [26].

Experts' Recommendation
After the inconsistencies detection of the introduced rule, a list of recommended experts is obtained as follows:

a) Information Collection Phase
This phase collects relevant information of experts to generate an expert profile for the recommendation tasks including user's attribute, behaviors or content of the consistency problem the expert accesses.
In our system, we use explicit and implicit feedback as follows:

Explicit Feedback
In its first registration, each expert fills a questionnaire to select the types of inconsistencies that can resolve (see Table II).After retrieving Table II and III, we based on the history of the rules already introduced (coherent or not) to measure the skills of the business experts as follows: an expert gets +1 when he introduces a consistent rule from the first time and -1 otherwise.Following this principle, we get the values of the Table IV.

Number of inconsistent rules
Total Then we calculate the total for each expert, taking into account his preferences and his skills.The finality of this step is a list of experts participating in the implicit feedback step.In this step, if an expert takes a value <=0 or the total number of "yes" = 0, he is excluded from this list.

Implicit Feedback
The system automatically infers the expert's preferences by monitoring the different actions of expert such as the history of negotiation.
The second step is based on the negotiation history.In this step, we retrieve all previously resolved rules with their detected inconsistencies and the experts who solved the problem (see Table V).

b) Learning Phase
In this phase, we apply a learning algorithm to filter and exploit the expert's features from the feedback gathered in information collection phase.

Expert Weight Recovery
After retrieving the negotiation history, we take the inconsistent rules and we recover the experts who have proposed a solution to solve these problems.Once the list of experts is established, we fill in Table VI which represents the number of the inconsistency i solved by the expert j.

Expert Classification
After that, we apply an unsupervised classification algorithm to group the experts in clusters (See section 4.B).Based on expert profiles and negotiation history, the system searches for experts who are the most similar.To do this, we used two algorithms, K-means and Fuzzy C-means to compare them and find the most suitable algorithm for our case.

c) Recommendation Phase
In this phase, a list of recommended experts is proposed.Once the clusters have been generated, we select the cluster which contains the most suitable experts to solve the problem encountered.To do this, for each cluster, we calculate the number of experts who resolved the same inconsistencies as the rule in question.Next, we calculate the total of the inconsistencies resolved in each cluster, and the rule is assigned to the cluster that has the highest number of the inconsistencies resolved.

Negotiation
After having establishing the list of the recommended experts, a message containing the inconsistent rule as well as the evaluation report, will be sent to each expert on the list to ask for their help, here a collaboration session starts, which is aimed at solving the problem found in the business rule (See section 4.C).

B. Unsupervised Classification
The use of unsupervised classification allows us to reduce the load and the response time necessary for the detected problems resolution, through the formation of communities which allows us to launch the negotiation only between the users belonging to the same community.
To classify the experts, we use the K-means and Fuzzy C-means algorithm to compare them and choose the best algorithm and the most suitable for our case.

K-means Algorithm
K-means is a non-hierarchical unsupervised clustering algorithm.It allows the observations of the data set to be grouped into K separate clusters.Thus similar data will be found in the same cluster.In addition, an observation can only be found in one cluster at a time (exclusive membership).The same observation cannot therefore belong to two different clusters [30].
The k-means algorithm is the best known and most used clustering algorithm, due to its simplicity of implementation [8].We chose the K-means algorithm because it is efficient, simple to implement and scalable, given its ability to process very large databases and only the vectors of the means are to be kept in main memory, in addition to its linear complexity relative to the number of observations.The pseudo code of the K-means is presented in algorithm 1.

Input:
• K the number of clusters to be formed

• The Training Set
Output: K clusters Begin 1. Randomly choose K points (experts).These points are the centers of the clusters (named centroïd);

REPEAT
• Assign each expert in the data matrix to the group of which he is closest to his center; • Recalculate the center of each cluster and modify the centroid;

End
To be able to group a dataset into K separate clusters, the K-Means algorithm needs a way to compare the degree of similarity between the different observations.Thus, two data which are similar, will have a reduced dissimilarity distance, while two different objects will have a greater separation distance.Equation (1) shows the Cosine similarity measure used. (1)

Fuzzy C-means Algorithm
The fuzzy C-means algorithm is a fuzzy unsupervised classification algorithm, which is based on the same principle as K-means but which uses the logic of fuzzy sets (use of probabilities).Fuzzy C-means is a method of clustering which allows one piece of data to belong to two or more clusters [31].
We opted for the fuzzy unsupervised classification because an expert can belong to several clusters with a certain degree of belonging.We chose the Fuzzy C-means algorithm because of its simplicity and popularity, and it is considered among the best performing fuzzy algorithms.
The pseudo code of Fuzzy C-means is presented in algorithm 2.

C. Negotiation
In order to detect and manage inconsistencies in business rules in a very short time, we have grouped similar experts in clusters to launch dynamic negotiation only between experts in the same cluster.The idea behind the use of clustering in negotiation is to save time and above all to avoid the participation of experts which cannot provide a solution to the problems detected and therefore weigh down the system.
After selecting the cluster containing the most suitable and competent experts who can solve the problems of the introduced rule, we apply a multi-criteria analysis method by partial aggregation, namely "PROMETHEE II" inside the chosen cluster.PROMETHEE II is a multi-criteria method which makes it possible to resolve the ranking problem in order to classify all the experts in the cluster from "best" to "worst".
The criteria weights used in the PROMETHEE II method are presented in Table VII.Once the PROMETHEE II method has been applied, we send the introduced rule and its corresponding evaluation report to the selected experts, and then we wait for their responses.After the deadline is over and the various responses are collected, several scenarios can occur.In the following we will present the most important scenarios: • If all the experts decide to delete the rule, then the rule will be deleted.
• If the experts send modifications of the introduced rule, then the system will evaluate the consistency of the expert's response, which is ranked first (by the PROMETHEE II method) in its cluster.If his rule is inconsistent then the system will evaluate the response of the expert who is ranked second, otherwise the new rule will be sent again to the other experts in the same cluster.These scenarios will be repeated until convergence and the joint agreement of all the experts in the cluster.

V. Implementation and Discussion
We developed our application and launched the simulations on an Intel (R) Core (TM) i7-3600M CPU with a speed of 3.20 GHZ, with a memory capacity of 8.00 GB of RAM under Windows 10.

A. A Simple Scenario Illustration
When starting the tool, a main window will appear; this latter gives the possibility to authenticate according to the type of profile.In this work, we have two types of profiles: Expert and Administrator.
In what follows, we consider a simple scenario to illustrate our approach.An expert wants to introduce the following business rule: "If priority is 2 then start the work at the next scheduled stop".The Fig. 2 shows the interface which allows an expert to introduce the rule.While checking the consistency, the system detects that the entered rule is inconsistent, so it will be stored in a temporary rule base and a notification is sent to the expert with a detailed description of the detected problem.
If the expert does not respond after two days, then a recommendation list of the most competent experts is proposed taking into account their preferences as well as the trading history in order to launch the negotiation and solve the problem (Fig. 3).
The system sends the incoherent rule to the recommended experts with a report which describes the encountered problem in this rule.Each expert sends a response.The system collects the answers, and makes a decision on the basis of its analysis of the responses.

B. Experimentations
In what follows, we will present the results of the experiments made to validate the proposed approach.

Experiment 1: Choice of the Number of Clusters
Choosing a number of clusters K is not necessarily intuitive.Especially when the dataset is large and it is difficult to visualize the data to determine the ideal number of clusters.A large number of K can lead to overly fragmented data partitioning.This will prevent the discovery of interesting patterns in the data.On the other hand, a too small number of clusters, will lead to having, potentially, too generalist clusters containing a lot of data.In this case, there will be no interesting patterns to discover.The difficulty therefore lies in choosing a number of clusters K which can allow experts to be grouped into significant groups [30].In the literature, several different methods of estimating the adequate number of clusters are proposed.
The Thumb Rule defined by equation ( 2) is proportional to the number of points n [32].
(2) By applying equation (2), we find that K = 4.47, so the number of clusters suitable for our dataset is either 4 or 5.
The most widely used method for choosing the number of clusters is the elbow method which consists of running the algorithm with different values of K and calculating the variance of the different clusters.The variance is the sum of the distances between each centroid of a cluster and the different observations included in the same cluster [30].
So, we draw a graph with the experimental number of clusters on the abscissa, and the variance on the ordinate, and the best k estimated by this method is at the location of the curve where an elbow is formed [32].
The variance of the clusters is calculated as follows [30]: (3) Where: c j : The center of the cluster x i : The i th observation in the cluster having centroid c j .D(c j ,x i ): The Euclidean distance between the center of the cluster and the point x i .
By testing several values of k, we obtain the results shown in Table VIII.
The results of Table VIII in graphical form are shown in Fig. 4.  For the K-means, we notice on the graph, the shape of an arm where the highest point represents the shoulder and the point where K is 8 represents the hand (the opposite for the Fuzzy C-means).
The optimal number of clusters is the point representing the knee.
Here the bend can be represented by K = 5 for the K-means and K = 4 for the Fuzzy C-means.

Experiment 2: Comparison Between K-means and Fuzzy C-means
This paper proposes an approach based on clustering to manage the inconsistencies detected in the introduced business rules.The grouping of experts in clusters allows us to save time in resolving inconsistencies since only the most competent and experienced experts are invited to the negotiation session.To do this, we used the K-means algorithm and the Fuzzy C-means algorithm.Table VIII presents a comparison between the K-means and the Fuzzy C-means, in terms of recall (see equation ( 4)), precision (see equation ( 5)) and F-measure (see equation ( 6)).
(4) launched 17 and for each one we calculated the recall, precision and F-measure.At the end, we calculated the average of the recall, precision and F-measure, the obtained results are presented in Table IX.The graphical representation of the obtained results are shown in Fig. 5.The obtained results reveal that our system offers good results in terms of recall, precision and F-measure with the K-means algorithm.We note that the response time and the memory space required to form the clusters is almost the same.

Recall
By combining all the results, we can say that K-means is the most suitable algorithm for our case in terms of recall, precision, F-measure, response time and space memory.
We will use the K-means algorithm to launch the following experiments.
In order to measure the quality of the obtained clusters, we calculate the silhouette coefficient that combines ideas of both cohesion and separation.The silhouette value is a measure of how similar an object is to its own cluster (cohesion) compared to other clusters (separation).The silhouette ranges from −1 to +1, where a high value indicates that the object is well matched to its own cluster and poorly matched to neighboring clusters.If most objects have a high value, then the clustering configuration is appropriate.If many points have a low or negative value, then the clustering configuration may have too many or too few clusters.The obtained results show that most experts were very well classified.

Experiment 3: Test of Our Recommendation Tool
In order to analyze and evaluate the behavior of our proposed approach, we measured the average response time and the average occupied memory space for 30 inconsistent rules (see Table XI).The aim of this experiment is to show the added value that we obtained by using the grouping with the unsupervised classification algorithm.We compared the performances of the ExpRules system which was presented in [1] and this recent new approach.
From the obtained results, we can say that the approach proposed in this paper offers significant improvements in terms of response time (15 times less than ExpRules) and memory space (4 times less than ExpRules) thanks to the use of the recommendation and unsupervised classification, that allowed us to solicit only competent experts who can provide a relevant solution to the company.The savings in response time also means savings in the effort of experts in resolving problems, which increases the company's ability to react quickly to changes.

Experiment 4: Comparing the Number of Negotiating Rounds
We compared our proposed approach with the approach presented in [29], in terms of the number of experts invited to the negotiation session, the number of experts who participated in the negotiation session, the number of negotiation rounds and the number of inconsistent rules proposed.The results of the comparison are shown in Table XII.
From the results shown in Table XII, we can say that our approach is better compared to the approach presented in [29].We found that the proposed approach took only one round of negotiation with no inconsistencies detected, it means that the problem was addressed from the first proposal.Also 12 experts on 12 invited experts have participated in the negotiation session.In contrast, the norecommendation approach took 5 rounds of negotiation to come to a common agreement with the 11 inconsistent proposed rules.Also 32 experts participated in the negotiation among 40 invited experts.

VI. Conclusion
In companies, many decisions are made every day and some decisions are made much more difficult when faced with the large amount of data or the structural complexity of the decision to be made.Recommendations are a rapidly growing area of research to help us in this decision-making process.
The major contribution of this article is materialized by the development of a recommendation tool that can be used by managers to find the skills of the experts for managing business rules, this tool makes it possible to compare the profile of experts to certain reference features.Indeed, skills management is implemented to measure the quality of the expertise offered by each expert who is involved in the collaborative process in order to respond quickly to market changes, thus improving the overall efficiency of the company.Thus, to achieve our we have an approach that is composed of four steps that are: the introduction of the rule, the consistency check of the introduced rule, the recommendation of the experts and finally the negotiation step.
We started our work by integrating the inconsistency detection algorithm and used a domain ontology as a formal model to represent a structured conceptual vocabulary that is used on one hand to express the business rules, and on the other one to check for inconsistencies that can be detected on business rules, the inconsistencies that can be detected by the algorithm used are: invalid rules, never-applicable rules, conflicting rules, and redundant rules.At the end, we proposed and implemented a tool to recommend a list of favorites for business experts to make choices in new projects.
To save time, we have classified the most similar competent experts in the same cluster using K-means algorithm, and then we have applied the PROMETHEE II method in order to launch the negotiation inside the cluster and evaluate the solution provided by the most competent expert.This allowed us to improve the performance of the proposed system and encourage experts to participate in the process of business rules inconsistencies managing.
The new proposed approach brings a lot of improvement in terms of recall, precision, response time, memory space compared to the previous approach.In fact, the big improvement is in negotiation, which aims to deal with inconsistencies in business rules.With the use of recommendation, unsupervised classification and the PROMETHEE II method, we were able to reduce the expert workload because each expert is called upon to solve problems only in their area.We have also been able to significantly reduce the trading rounds and consequently the number of incoherent proposed business rules.
For possible extensions and improvements of our present work, we propose: • Address other inconsistency issues such as equivalency, • Consider other skills of the business experts, • Weight the inconsistencies because there are inconsistencies that are more important than others.
• Provide a mobile application for the notification of business experts.
Consistent rule: If priority is 2 then start the work at the next scheduled stop Inconsistent rule: If priority is 2 then start the work the following day of the request.

Algorithm 2 :Output: K clusters Begin 1 .
Fuzzy C-means Input: • K the number of clusters to be formed • The Training Set • M: degree of fuzziness • ε epsilon • U: matrix to be initialized with random values in the interval [0.1] Initialize the centers; 2. Set the parameter m (fuzzy coefficient); 3. Calculation of the initial fuzzy partition U (the membership matrix); REPEAT • Calculation of new centers ; • Calculation of the new fuzzy partition; UNTIL (CONVERGENCE)

Fig. 4 .
Fig. 4. Choice of the number of clusters.

TABLE I .
Comparison of Some Related Works • Failure to take into account the availability of experts when creating the list of experts [21] Colleagues X • Test of other similarity measures • Use of a single threshold value (0.1) [22] Experts X X • Extraction of the semantic knowledge from Wikipedia articles [23] Experts X X • No data confidentiality [24] Colleagues X X • The stages number of colleagues for the target user (=5) [25] Experts X X • The personal expertise feature is not taken into account.• Testing of KNN and C-SVM algorithms only

TABLE II .
Expert Preferences Retrieved from the Questionnaire

TABLE V .
The History of Previous Rules

TABLE VI .
Expert Weights

TABLE VII .
Criteria Weights of PROMETHEE II

TABLE VIII .
Choice of Cluster Number

TABLE IX .
Recall, Precision and F-measure

Table X
presents a comparison between the K-means and the Fuzzy C-means, in terms of response time and space memory.

TABLE XI .
Test of Our Recommendation Tool

TABLE XII .
Comparing the Number of Negotiating Rounds