Results and Discussion

Our LoL data is now represented as a tensor \(\mathscr X^{I×J×K}\), where \(I=961\), \(J=4\), and \(K=100\). Therefore, the resulting three-way tensor has dimensions related to the players, the selected features, and the time steps, which here coincide with the matches. Once the tensor is created, we compute its approximation \(\mathscr X_{app}\) by applying NTF to detect the groups of players with similar characteristics and temporal evolution. As shown in Section 2, NTF decomposes the tensor into the sum of R components. Thus, we first have to find the value of R which provide the best approximation of the tensor. To this aim we compare the results provided by the Core Consistency Diagnostic (CORCONDIA) and the Automatic Relevance Determination (ARD) for Tucker models.

CONCORDIA

We run 5 simulations for each number of components r. We performed the simulations for the rank values \(r=1,⋯,10\) and study the core consistency curve. The number of components that yields the largest knee in the slope of the core consistency curve is \(R=3\).

ARD Tucker

As we are comparing two PARAFAC/CANDECOMP (CP) decomposition models, we require to have a diagonal core in the ARD Tucker. By following, we run 20 different ARD CP models initialized with 10 components based on Gaussian priors. Results indicate that 7 components out of 10 were pruned during the approximation, thus leading to the rank value \(R=3\).

As the results provided by the two techniques are consistent, we set \(R=3\) (i.e., three components) for the following analysis and then select the best approximation, by choosing the one corresponding to the maximum value of core consistency for the selected rank R. Each component can be interpreted as a group of users sharing similar temporal trajectories and being characterized by some features. We reiterate that each component is described by the columns of the three factor matrices \(A,B,C\) (which we examine in the following): the first component corresponds to the first column of each matrix, the second component to the second column, and the third component to the third column.

We first analyze the results provided in the matrix \(B\), which are shown in Figure 2. Here, we report the values of the matrix \(B\) that have a key role in the components. To this aim, for each component we sort their squared values in descending order, sum them (starting from the highest value) until we reach the 95% of the overall component norm, and set the remaining values equal to zero. The result of this procedure, shown in Figure 2, highlights the features that are involved in each component. As an example, the component 0 is characterized by the features related to the assists and the earned gold. Here, the features are marked as follows: (0) number of assists; (1) number of deaths; (2) number of kills; (3) amount of earned gold.



Figure 2. Feature membership in the components: we show the matrix \(B\) in which we zero-out the entries which are not included in the 95% of the norm of the component. Here, the colorbar indicates the level of membership of each feature to the three different components. The features are respectively: assists (0), deaths (1), kills (2), and gold (3).

We then analyze the factor matrix \(A\) to find user memberships to each component. As we explain in detail in Section 2, we find the users belonging to each component through a k-means method with a number of clusters equal to the number of components, \(k=3\) in this case. This assumption is also supported by the Silhouette scores, computed for several values of \(k\). In particular, for \(k=3\) the score is equal to 0.35, while by increasing the number of clusters the score decreases, assuming values equal to 0.32 and 0.29 respectively for \(k=4\) and \(k=5\) and stabilizing below 0.29 for \(k > 5\). Thus, by fixing \(k=3\) the method assigns a unique label to each user and divides them into three disjoint groups.

As we can observe from Figure 3a, the k-means with \(k=3\) finds three clusters of users, which are disjoint in the component space, i.e., given a user \(i\) its coordinates in the component space are given by the entries in the columns of the factor matrix \(A\). This grouping allows to identify the users whose membership to a specific component is higher than to the others. Clusters 0, 1, and 2 respectively contain 411, 304, and 246 users. Figure 3b shows the Silhouette profiles of the three clusters, proportional to their sizes.



Figure 3. K-means results: (a) 2-dimensional projection of the three clusters identified by the k-means. Each dot represents a player in its corresponding cluster, and the dot's coordinates are given by the first two columns of the matrix \(A\). (b) Silhouette scores of the users belonging to the three clusters. The red line identifies the final Silhouette score of 0.35, and the width of the Silhouette profiles indicates the size of the corresponding clusters.

The difference in the level of membership of users belonging to the different clusters is clear if we look at the values of \(A\) and how they are modulated in time. This is possible by computing for each r-th component the product \(P=a_rc^{T}_r \; ∈ \mathbb{R}^{I×K}\), which represents the membership of each user to the r-th component modulated over time by the temporal activity of the r-th component. In Figure 4, we report the average membership score over time and the related standard error (represented by error bars), computed by separately taking into account the three clusters of users. Each cluster is systematically characterized by an overall level of membership to one specific component that is much greater than to the other components. Figure 4a demonstrates the strong relation between Cluster 0 and Component 1 (cf. black squares), Figure 4b shows the strong relation between Cluster 1 and Component 2 (cf. dark red circles), while Figure 4c exhibits the strong relation between Cluster 2 and Component 0 (cf., dark green triangles). It is worth noting that there is a high gap between the average memberships over time to the cluster-related component and the remaining two components. This pattern indicates that:



Figure 4. Membership modulated in time, given by the product \(a_rc^{T}_r\). The product is computed by separately taking into account the users belonging to the different clusters. For each cluster we report the mean of the users' membership to each component over time, and the related standard error, marked with an error bar. Different shades of blue for cluster 0, red for cluster 1, and green for cluster 2 are assigned to distinguish the components.

  • Users belonging to Cluster 0 and thus to Component 1 are strongly characterized by the features kills and earned gold;
  • Users in Cluster 1 and thus belonging to Component 2 are characterized by deaths, kills, and earned gold;
  • Users belonging to Cluster 2 and Component 0 are strongly characterized by assists and earned gold.

Through the analysis of NTF results, we are able not only to identify the features that play a key role in a certain component, but we can easily find the user membership to the component. This enables linking each user in the component to the features that characterize the strategy used in the game. An interpretation for these results is indeed that different groups of users are characterized by a playing behavior which is different from group to group. In particular, some users, such as those related to Component 0, tend to collaborate more than others with their teammates, as they prefer to assist in fighting an enemy rather than killing him directly. Other users (e.g., Component 1) are prone to performing individual actions, focusing on personal goals, such as earning a greater amount of gold, which can be spent to upgrade the player's champion abilities. Finally, in Component 2 we detect a group of users that perform individual actions, such as a high number of kills, but are significantly more likely to cause their hero to die during these actions. This might pinpoint a group of users characterized by an overall lower performance if compared with the other players.


Validation

To validate the results obtained via NTF and the related interpretation, we selected the players in each cluster, and then we computed the mean and standard error of the different feature values at each time step (i.e., each match). The results are shown in Figure 5, where each plot is related to a specific feature, namely (a) number of assists; (b) number of deaths; (c) number of kills; and (d) amount of earned gold.



Figure 5. Mean values and related standard errors over time of: (a) number of assists; (b) number of deaths; (c) number of kills; and (d) amount of gold earned. We computed the mean and the standard error over the values related to users belonging to the same cluster. Clusters are marked by a unique symbol and color, which is maintained in all the figures, to highlight the different cluster characteristics.

The results support the hypothesis and interpretation derived by the NTF analysis: Cluster 0 (cf., blue squares) is composed by players whose major behavior dynamic over time is summarized by performing a high number of kills and earning at the same time a greater amount of gold than other players (as we mentioned earlier, the amount of gold is proportional to the number of kills, which here serves as a further sanity check). Cluster 1 (cf., red circles) consists of players that obtain a number of kills comparable to the users in Cluster 0, however their higher-than-average number of deaths causes them to systematically collect less gold (if compared with the other two clusters). Finally, Cluster 2 involves players characterized by stronger social behavior, resulting in collaboration with the other team members, as conveyed by the larger number of assists and smaller number of kills. This strategy allows players in Cluster 2 to collect a good amount of gold while at the same time keeping a low level of deaths.

One of the strengths of using a technique such as NTF is that we can disentangle the topological characteristics in the data, such as group of users characterized by similar features, from the temporal behaviors. The temporal information is indeed contained in the matrix \(C\), whose columns represent the timeseries of the temporal activation of each component, from which we can extract some meaningful interpretation of the evolution of players' behaviors.

We expect that by testing different strategies, players can modify or adapt their way of playing to achieve better performances. This fact would be described by a change (such as an abrupt jump) in the temporal activity of a component, meaning that the component would activate or deactivate at a certain time.

However, by the analysis of the factor matrix \(C\), we can notice that each component is systematically active over time, i.e., despite different levels of activation, no significant behavioral change is noticeable in the behavioral trajectories of the players over the course of their 100 matches.

This result, illustrated in Figure 6, suggests that the group of users characterized by a specific strategy (i.e., one of the three leading strategies we highlighted above) is consistent over time; in other words, players are reluctant to continuously in changing their gaming behavior and strategy, even if that could occasionally entail a benefit.



Figure 6. Temporal activity of each component. The values displayed coincide to those in the columns of \(C\). The different markers characterize the different components, according to the clusters colouring.

We found an explanation for this phenomenon, which we suspect is related to the game design. League of Legends is based on a mathematical framework, that at the beginning of each match compares the players' skills to create the opposing teams as follows. Each player in LoL is characterized by an Elo-like rating (https://en.wikipedia.org/wiki/Elo_rating_system) which represents the player skill level, based on the performances in the previous matches. Thus, the resulting matchmaking rating is used by the system in assembling the teams and creating a game in which both teams have an equal chance of winning. (https://support.riotgames.com/hc/en-us/articles/201752954-Matchmaking-Guide).

Considering the LoL game design, we then compute the probability distribution of match winning for all players in each cluster identified by NTF. In Figure 7, we report the Kernel Density Estimation (KDE) for the distribution of the victories in each cluster. The KDE estimates the probability density function of the feature winner of each player involved in a certain cluster. This binary feature is equal to 1 if a player wins a match, and 0 otherwise.



Figure 7. Kernel Density Estimation (KDE) computed on the values related to the feature winner (binary feature equal to 1 if a player wins the match and equal to 0 if a player loses). The figure shows the probability density function for each cluster. We maintained the color code used throughout the text to discriminate the different clusters.

By looking at the density function for each cluster, it appears that the distributions are centered around 0.5, suggesting that each player at the beginning of each match has roughly a 50% probability of winning or losing the match. However, closer inspection shows that these distributions are slightly skewed: Cluster 0 leans toward values higher than 0.5, suggesting that the individualist strategy (aiming for a larger number of kills and less assists), in the long run yields marginally more victories than the cooperative strategy of Cluster 2. We verified, using a pairwise two-tailed t-test, that these distributions are indeed statistically significantly different (all p-values ≤10−3).

In conclusion, the League of Legends game design, and in particular the method used to create the opposing teams of a match, strongly affects the matches' outcomes. Each user has roughly the same probability of winning a match, which is largely independent from the strategy used by players. Marginal changes can be noticed thanks to our NTF analysis that would otherwise get lost in the aggregated statistical analysis if oblivious of the social and temporal behavioral dynamics. We suggest that players do not have enough incentives to change their natural behavior as they likely perceive themselves to achieve the same winning performances of players characterized by a different strategy. This explains the temporal activity patterns discovered by NTF and their continuous and almost constant activation over time.

The findings of the present work might benefit players and game companies alike. As for players, knowing the features that characterize them the most could help to identify better strategies or character that align more to their play-style, skills, and performance. For instance, if a player can be informed that s/he belongs to the group mostly characterized by number of kills, s/he might prefer to focus on champions with a focus on combat that better align to the player's skills. Conversely, if a player belongs to the group of those better characterized by supporting roles, they may benefit from learning about their effectiveness and choose champions accordingly. Moreover, realizing how players' performance evolves would constitute an incentive to the players to improve their strategies and focus their efforts on certain aspects of the game as opposed to others. For example, discovering that the number of deaths is the strongest indicator of one's performance may encourage a player to try different strategies and improve their scores.

Monitoring how players perform over time can provide useful insights for game developers aimed to improve engagement and game experience. For example, if a player changes his/her playing behavior and the performance in terms of actions decreases over time, this might be a signal that the player's engagement in the game is diminishing: detecting these change-points in a timely manner may yield an opportunity to the game designers to intervene (for example by providing in-game digital incentives) to prevent the player to ultimately quit the game.


Related Work

Several facets of League of Legends, including players behaviors, expertise, and features have been already investigated. Many works are focused on the analysis of League of Legends team composition. In [Player Behavior and Optimal Team Composition for Online Multiplayer Games], the authors analyze player behaviors by developing a framework based on unsupervised learning techniques to discover behavior clusters in the data. In particular, they try to learn the optimal team composition and demonstrate how the result of matches can be predicted on the basis of the features characterizing the team. In our work, we used the winning prediction task to determine the most informative features that characterize players' behaviors.

In [Playing with strangers: Understanding temporary teams in League of Legends] the authors study the social interactions and organization patterns of LoL players, to understand how collaboration arises during MOBA games. They collected a dataset based on interviews of experienced LoL players and found that team members collaborate and coordinate to reach the same goal and increase their performance in the game.

Other studies of LoL are focused on the analysis of specific game features, such as the usage of different characters (i.e., champions), or the player choice of a specific role with respect to the one selected by the other team members. The main goal in these studies is to investigate how roles and specific features have an impact on the players' performance, to recommend team design and evaluations that can be used by players when selecting a character. Our study, however, discovers in an unsupervised fashion the playing behaviors and the players' roles during the matches: we believe that our strategy could enrich the insights that game designers and analysts need to improve the game experience.

It is also worth noting that most of the existing studies are mainly focused on the analysis of LoL from a team-based perspective, to characterize groups performance. In the present work, we investigated individual player behaviors, and how that related to player performances at the level of single matches. In our analysis, we also highlighted the crucial importance of the temporal dimension. We monitored the evolution of features over time, to determine whether and how players learn or modify their strategy, and to detect if a common activity pattern can be found.