Skip to content

Conversation

@MischiefCS
Copy link

This PR proposes a change to the inputs of opponentNetwork, changing it from ownNetwork input to a compound component based on network impact . This is a result of conclusions from previous analysis undertaken.

This change provides limited improvement in the model prediction, however I believe it provides an improvement in understanding and clarity in the model as well as consistent approach in line with other aspects of the model.

Currently, the three other components to opponentNetwork are:

  • Bounty Offered - Attained by positive accomplishments in tournaments, earning prizepool.
  • Bounty Collected - Attained by positive accomplishments in tournaments, beating other accomplished teams.
  • LAN Wins - Reflective of a positive result on LAN

As well as weights which are used to reflect the accuracy of the component & result:

  • stakesModifier - Weighting of an event with the relative prizepool of the event. Higher prizepool events will have better teams attending, reflecting the quality of results from that tournament.
  • timestampModifier - The recency of the result. More recent results will provide a more accurate picture of how they relate to the current rankings.

The components listed are reflecting solely positive outcomes from teams, whilst weights are reflecting how accurate these results will be in regard to the current ranking period. Teams that have played more matches and by extension beaten more distinct opponents (ownNetwork) will provide a more accurate indication of their position, but this is somewhat more in line with component weights compared to components themself.

ownNetwork (and by extension opponentNetwork) currently is a component that does relate to positive outcomes in isolation, but in the current VRS ecosystem its more related to a neutral outcome and isnt explicitly positive based.

team.ownNetwork = Math.min( team.distinctTeamsDefeated / referenceOpponentCount, 1 );

ownNetwork relates to the number of distinct teams defeated. However, currently it is possible for a team to have a neutral outcome, in which they achieve equal wins and losses over the snapshot period. Whilst the team is not improving its win rate, they will have an ever increasing ownNetwork. While BCOL and BOFF components reward high stakes value matches, ownNetwork does not. This leads to middle ranked teams being able to grind out low stakes matches increasing their ownNetwork offering whilst not a reflection of top performance and potentially not even their own performance.

This of no benefit to the team itself, however it benefits the teams around them. Due to the size of the network in T2 Europe this provides significant advantage to EU teams with teams having more opportunity to play more varied opponents. This then helps provide a soft foundation boost to teams competing within Europe.

The ownNetwork a team offers is not indicated on team reports and is hard to guage for teams assessing what events they should attend. Its possible to calculate through the details/{team}.md but its less intuitive then a team being inform.

Ideally, all components should relate to the final rank value, indicating the component works in tandem with the other components.

When graphing BOFF and BCOL you see strong relations to the final rank:

bounty_collected_vs_final_rank_value_by_region_07_22_fr bounty_offered_vs_final_rank_value_by_region_07_22_fr

However, when graphing ownNetwork you see the points on offer to other teams does not necessarily reflect the calibre of that team. While Tier 1 teams play higher quality matches, they play them more sparsely and against more consistent opponents. Therefore their ownNetwork will be lower than teams with more varied matches in the T2 circuit.

own_network_vs_final_rank_value_by_region_07_22_fr

This then has the following affect on opponentNetwork

opponent_network_vs_final_rank_value_by_region_07_22_fr

As theorised from the methodology of ownNetwork and opponentNetwork, the network component is rather dominated by EU teams. Its particularly noticeable by the EU teams which have a high opponent network but a lower overall rank, indicating they perform poorly in the other components. Top teams are offering lower network points than Tier 2 EU teams, even while these top teams are regularly competing in the top circuit against the best network / cluster of teams.

Changes

This PR proposed change is modifying opponentNetwork to be fed by ownNetworkImpact.

This is a compound component of the recent form of a team, weighted by their ownNetwork. The metric represents the impact of a team within their individual network. Similar to the other weights within the model, ownNetwork is treated as the accuracy weight for this component. This approach helps ensure that the network component isn't inherently tied to the size of the scene or the ability for a team to have the opportunity to compete in a larger / more varied scene.

This leads to the following change of ownNetwork (now ownNetworkImpact):

own_network_impact_vs_final_rank_value_by_region_modify_fr

With these inputs affecting opponentNetwork as shown:

opponent_network_vs_final_rank_value_by_region_modify_fr

The effect is incredibly minor. However, the European dominance is reigned in as well as Tier 1 teams that are performing well in the Tier 1 network are offering more points, reflecting their performance within their own individual network. The change potentially provides a more understandable outcome, in which you're gaining points off of a team in form. opponentNetwork also has an improved relation to final rank value as well as an improved Spearman's Rho, indicating it may work in tandem with the other components.

When graphing the two methodologies for the model as a whole:

Current:

image

Proposed:

image

Outcome

This PR sees relatively little improvement on the overarching model, however its main benefit is improving the logical process in earning points, general understanding of the model and consistency between components. Given the separation of individual networks / clusters, a metric which identifies the impact of a team within its own network is potentially more reflective than a global network component which is more closely tied to size of the scene.

Implementation of this would have limited impact upon the top 20, with only one position swap. With two teams swapping positions which were previously separated by an incredibly narrow gap. Even across the whole ranking model it has limited impact.

Potentially an improvement, albeit minor. opponentNetwork currently sits in a similar relation to lanWins where it doesnt have a perfect reflection to teams' performance. I think the general assumption is the current lanWins approach is to incentivize teams playing on LAN. If theres similar reasoning for opponentNetwork this may potentially sway the favour back towards the current implementation.

Adjusting the input from ownNetwork to be a compound component, better accounting for positive inputs to the ranking system
Furioff referenced this pull request Aug 28, 2025
Martinez joined 2025-07-23
Gentle Mates acquired Iberian Soul 2025-08-25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant