Chapter 3 System Frameworks
3.4 Group Formation Engine
The group formation engine is to generate candidate groups and find the group with highest cohesion, which is appropriate to the circumstance of particular group buying, to the group leader. There are four parts in this module: (1) Personal Weight Computing is to compute
the weight values of three group formation criteria, including group context, social influence and individual preference, of a user in a particular circumstance, (2) Willingness Criteria Aggregation is to multiply the weight values of three criteria with its values to be the willingness of a user to join a group buying, (3) Candidate Group Forming is to generate several candidate groups according to the willingness of users and (4) Group Cohesion Computing is to compute the cohesion of candidate groups to find the one with highest cohesion.
The circumstances of group buying should be taken into consideration, because it may affect the willingness of users to join a group buying. For example, purchasing a plenty of products at a wholesale store, such as Costco, the group leader will dismiss the group after the transaction is completed. However, having a dinner gathering with friends at a restaurant with group discount, the group members will interact with each other for long time after the transaction is completed, which implies demand of social relations.
3.4.1 Personal Weight Computing
Each user has his/her own weights of criteria which affect the willingness to participate in a group or not. The measurement of willingness to join a group is various due to different circumstances. In this section, we compute the personal weights of three criteria which influence the willingness of a user to join a group in a specific situation.
We adopt the analytic hierarchy process (AHP) theory, a well-known structured technique for organizing and analyzing complex decision-making problems with multi criteria, which is proposed by Thomas L. Saaty in 1971 [42, 43], to compute the weights of the three willingness criteria: group context, social influence and individual preference towards a particular circumstance. We explain the detailed description as follows.
To apply AHP theory, we first define the problem to “whether to join a group or not” and then construct the hierarchy structure as the Figure 5.
Figure 5. The Hierarchy Decision Structure of Personal Weight Computing
There are three criteria in the hierarchy structure, which requires 𝐺𝐺23 = 3 comparisons and builds a pairwise matrix denoted as 𝑀𝑀𝐶𝐶𝐶𝐶𝐶𝐶 shown as Equation 14, where C implies group context, S implies social influence and P implies individual preference. The results of three comparisons between each criterion are on the upper triangle of the matrix and the values of the lower triangle are the reciprocal of the relative position on the upper triangle. The values on the diagonal line are 1 because they compare with themselves.
Equation 14. The Pairwise Matrix of Analytic Hierarchy Process
𝑀𝑀𝐶𝐶𝐶𝐶𝐶𝐶 =
⎣⎢
⎢⎢
⎢⎡ 1 𝐴𝐴𝐶𝐶𝐶𝐶 𝐴𝐴𝐶𝐶𝐶𝐶
1
𝐴𝐴𝐶𝐶𝐶𝐶 1 𝐴𝐴𝐶𝐶𝐶𝐶 1
𝐴𝐴𝐶𝐶𝐶𝐶
1
𝐴𝐴𝐶𝐶𝐶𝐶 1 ⎦⎥⎥⎥⎥⎤
(14)
Where 𝐴𝐴𝐶𝐶𝐶𝐶 represents the relative decision weight of group context similarity to social influence, 𝐴𝐴𝐶𝐶𝐶𝐶 represents the relative decision weight of group context similarity to individual preference, and 𝐴𝐴𝐶𝐶𝐶𝐶 represents the relative decision weight of social influence similarity to individual preference. These data has been collected from questionnaires in users’ first usage and its value may be affected by the circumstance. We define a set of this relative decision weights in a specific circumstance of a user j as 𝐴𝐴𝐶𝐶𝐶𝐶𝐶𝐶(𝑗𝑗) and this set can be indicated as Equation 15.
Equation 15. The Set of Relative Weights of Criteria
𝐴𝐴𝐶𝐶𝐶𝐶𝐶𝐶(𝑗𝑗) = {𝐴𝐴𝐶𝐶𝐶𝐶(𝑗𝑗), 𝐴𝐴𝐶𝐶𝐶𝐶(𝑗𝑗), 𝐴𝐴𝐶𝐶𝐶𝐶(𝑗𝑗)} (15)
We can compute the eigenvectors to obtain the weights of criteria by the eigenvalues after construct the pairwise matrix. We adopt average of normalized columns (ANC) method to get the eigenvectors because the pairwise matrix is not usually consistency matrix and use this ANC method can have higher accuracy of computing results then other methods when encounter non-consistency matrix [43]. We define a set containing the three weight values of the user j on the three criteria (group context, social influence and individual preference) as 𝑊𝑊𝐶𝐶𝐶𝐶𝐶𝐶(𝑗𝑗) and this set can be indicated as Equation 16.
Equation 16. The Set of Personal Weights of Criteria
𝑊𝑊𝐶𝐶𝐶𝐶𝐶𝐶(𝑗𝑗) = {𝑊𝑊𝐶𝐶(𝑗𝑗), 𝑊𝑊𝐶𝐶(𝑗𝑗), 𝑊𝑊𝐶𝐶(𝑗𝑗)} (16)
The weights of three criteria can be calculated by using the Equation 17.
Equation 17. Formula of Personal Weight Computing
𝑊𝑊𝛼𝛼(𝑗𝑗) =1
These three weights of three criteria imply how the user j makes decision to whether to join a group buying with the invitation from the group leader or not.
3.4.2 Willingness Criteria Aggregation
Using the weight values of three criteria, this mechanism can have the ability to measure the willingness-to-join that the person j who is near the group leader i will want to join the group to purchase target product p together in a specific circumstance. We denote the willingness-to-join of person j as 𝐽𝐽𝐺𝐺𝑇𝑇𝑛𝑛𝑊𝑊𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑛𝑛𝑇𝑇𝑛𝑛𝑇𝑇𝑆𝑆𝑆𝑆(𝑇𝑇, 𝑗𝑗, 𝐺𝐺) and its value is calculated as the aggregation of the weight value of each criterion with the corresponding score of the criterion which calculated by the group context, social influence and individual preference analysis module. The value of 𝐽𝐽𝐺𝐺𝑇𝑇𝑛𝑛𝑊𝑊𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑛𝑛𝑇𝑇𝑛𝑛𝑇𝑇𝑆𝑆𝑆𝑆(𝑇𝑇, 𝑗𝑗, 𝐺𝐺) is measured as the Equation 18.
Equation 18. Formula of Willingness-to-Join
𝐽𝐽𝐺𝐺𝑇𝑇𝑛𝑛𝑊𝑊𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑛𝑛𝑇𝑇𝑛𝑛𝑇𝑇𝑆𝑆𝑆𝑆(𝑇𝑇, 𝑗𝑗, 𝐺𝐺) = 𝑊𝑊𝐶𝐶(𝑗𝑗) ∗ 𝐺𝐺𝑇𝑇𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝐺𝑛𝑛𝐺𝐺𝑇𝑇𝐺𝐺𝐺𝐺(𝑇𝑇, 𝑗𝑗) +𝑊𝑊𝐶𝐶(𝑗𝑗) ∗ 𝑆𝑆𝐺𝐺𝑆𝑆𝑇𝑇𝑇𝑇𝑇𝑇𝑆𝑆𝑛𝑛𝑆𝑆𝑇𝑇𝐺𝐺𝑇𝑇𝑛𝑛𝑆𝑆𝑇𝑇(𝑇𝑇, 𝑗𝑗)
+𝑊𝑊𝐶𝐶(𝑗𝑗) ∗ 𝑆𝑆𝑛𝑛𝑅𝑅𝑇𝑇𝑇𝑇𝑇𝑇𝑅𝑅𝐺𝐺𝑇𝑇𝑇𝑇𝑃𝑃𝑇𝑇𝑇𝑇𝑆𝑆𝑇𝑇𝑇𝑇𝑇𝑇𝑛𝑛𝑆𝑆𝑇𝑇(𝑗𝑗, 𝐺𝐺)
(18)
3.4.3 Candidate Group Forming
Now this mechanism has the ability to compute the willingness-to-join of everyone near the group leader who creates the group buying event in a specific circumstance. The number of people near the group leader may be very large, and it may be larger than the number of group members needed. For instance, the group leader needs 4 people to join his/her group buying, but the people nearby are about 20.
This mechanism requires this candidate group forming and next group cohesion computing approaches to solve the problem. We denote 𝑁𝑁𝐹𝐹𝐹𝐹 as the number of people required to the group buying (not including the group leader) and choose top-k people with higher willingness-to-join to the group. The number of people chosen is k at most (i.e. range from 1 to k), where k is equal to 𝑁𝑁𝐹𝐹𝐹𝐹 multiplies with a certain integer, because we need to consider the great diversity of the group members combination and its value of group cohesion and the higher ratio of willingness simultaneously, but we also need to limit the search range of people near the group leader. Therefore, a group leader can make about 𝐺𝐺𝑁𝑁𝑘𝑘𝑟𝑟𝑟𝑟 combinations for different groups. We denote 𝐺𝐺(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹) as a set containing all the candidate groups as following Equation 19 and send it to the next approach, group cohesion computing, to compute which is the best group that the group leader i wants.
Equation 19. The Set of Candidate Groups
𝐺𝐺(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹) = {𝐺𝐺1(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹), 𝐺𝐺2(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹), … , 𝐺𝐺𝑛𝑛(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹)} (19)
3.4.4 Group Cohesion Computing
This group cohesion computing approach will run after receiving the 𝐺𝐺(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹) set from the candidate group forming approach. The 𝐺𝐺(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹) may have a great diversity of combinations. Examples of 𝑁𝑁𝐹𝐹𝐹𝐹 = 5 are illustrated in Figure 6.
Figure 6. Example of Candidate Groups of Initial Forming
The central green node is the group leader i and other blue nodes are the people near the group leader. Every node represents a person, and the edge between two blue nodes represents the friendship between two people on social media. If there is no edge between two blue nodes, it means that they are not friends. The candidate groups are an undirected and non-reflexive graph (or network) structure.
We measure the cohesion of these groups by three steps: (1) the density of network, (2) the social closeness between group members and (3) the average score of willingness-to-join and social closeness in the network.
The density of network can be measured by Equation 20 [44], where T is the number of ties and 𝑁𝑁𝑛𝑛𝐹𝐹 is the number of nodes in the network.
Equation 20. Density of Groups
𝐷𝐷𝑇𝑇𝑛𝑛𝑆𝑆𝑇𝑇𝐺𝐺𝑆𝑆(𝐺𝐺𝑛𝑛(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹)) = 2 ∗ 𝑇𝑇
𝑁𝑁𝑛𝑛𝐹𝐹 ∗ (𝑁𝑁𝑛𝑛𝐹𝐹− 1) (20) Measuring the density of each candidate group, this mechanism filters the top groups with highest density to do the next step. Because it is possible that there are several groups with equal highest density, we need to do advanced filtering. For example, the density of each
Figure 7. The Example of Candidate Groups after the First Step
The second step is to compute the social closeness between group members as the strength of each tie. The approach here only considers about social closeness because we have computed the preference and context before the candidate group forming, and thus we ensure that all the group members are near the group leader with certain degree of preference to the target product.
What we care about now is the strength of social relationship between group members. Using the social closeness computing approach described in 3.1.2, we can compute the strength of each tie in the network. This approach requires to compute the strength of 𝐺𝐺2𝑁𝑁𝑛𝑛𝑛𝑛−1 ties in the network in the second step, where 𝑁𝑁𝑛𝑛𝐹𝐹 is the number of nodes in a network. The results of this step are illustrated in Figure 8, where the numbers shown on the edges is the score of social closeness between two blue nodes (two nearby people).
Figure 8. The Example of Candidate Groups of the Second Step
The third step is to compare which network is the best one to recommend to the group leader. We use the strength of ties to measure the group cohesion in this step. The type of ties are not all the same because the ties from nearby people (blue nodes) to the group leader i (central green node) are measured by willingness-to-join and the other ties between nearby people (blue nodes) are measured by social closeness. Due to the different types of ties, we
need to calculate separately. We denote 𝑇𝑇𝑗𝑗𝑗𝑗 as a set of all the ties measured by willingness-to-join and denote 𝑇𝑇𝐹𝐹𝑠𝑠 as a set of all the ties measured by social closeness. The representations of the two sets are Equation 21 and 22, where n and m is the total number of ties of the specific type.
Equation 21. The Set of Ties between Group Leader and Group Members
𝑇𝑇𝑗𝑗𝑗𝑗 = �𝑇𝑇𝑗𝑗𝑗𝑗1 , 𝑇𝑇𝑗𝑗𝑗𝑗2 , … , 𝑇𝑇𝑗𝑗𝑗𝑗𝑛𝑛� (21)
Equation 22. The Set of Ties between Group Members
𝑇𝑇𝐹𝐹𝑠𝑠 = {𝑇𝑇𝐹𝐹𝑠𝑠1, 𝑇𝑇𝐹𝐹𝑠𝑠2, … , 𝑇𝑇𝐹𝐹𝑠𝑠𝑚𝑚} (22) Next to compute the average values of 𝑇𝑇𝑗𝑗𝑗𝑗 and 𝑇𝑇𝐹𝐹𝑠𝑠 using the Equation 23 and 24 as following.
Equation 23. The Average of Ties between Group Leader and Group Members
𝐴𝐴𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇�𝑇𝑇𝑗𝑗𝑗𝑗� =∑𝑛𝑛𝑖𝑖=1𝑇𝑇𝑗𝑗𝑗𝑗𝑖𝑖 𝑛𝑛
(23)
Equation 24. The Average of Ties between Group Members
𝐴𝐴𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇(𝑇𝑇𝐹𝐹𝑠𝑠) =∑𝑚𝑚 𝑇𝑇𝐹𝐹𝑠𝑠𝑖𝑖 𝑖𝑖=1𝑇𝑇
(24)
The average of strength of ties can represent the average cohesion of the network. After get the average values of 𝑇𝑇𝑗𝑗𝑗𝑗 and 𝑇𝑇𝐹𝐹𝑠𝑠, we aggregate these two average values to compute the cohesion of the whole network by using the Equation 25. We decide to multiply these two average values because multiplying can make the higher value more higher, vice versa. It is useful to show the difference distinctly between each network.
Equation 25. Formula of Cohesion of Groups
𝐺𝐺𝐺𝐺ℎ𝑇𝑇𝑆𝑆𝑇𝑇𝐺𝐺𝑛𝑛�𝐺𝐺𝛼𝛼(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹)� = 𝐴𝐴𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇�𝑇𝑇𝑗𝑗𝑗𝑗� ∗ 𝐴𝐴𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇𝑇(𝑇𝑇𝐹𝐹𝑠𝑠),
∀𝐺𝐺𝛼𝛼(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹) ∈ 𝐺𝐺(𝑇𝑇, 𝑁𝑁𝐹𝐹𝐹𝐹)
(25)