Noppon Prakannoppakun Department of Computer Engineering Chulalongkorn University Bangkok 10330, Thailand

Similar documents
Ranking Factors of Team Success

Dota2 is a very popular video game currently.

Analysis of player s in-game performance vs rating: Case study of Heroes of Newerth

Predicting outcomes of professional DotA 2 matches

Learning Dota 2 Team Compositions

IMPROVING TOWER DEFENSE GAME AI (DIFFERENTIAL EVOLUTION VS EVOLUTIONARY PROGRAMMING) CHEAH KEEI YUAN

Genbby Technical Paper

MOBA: a New Arena for Game AI

Analysis of player s in-game performance vs rating: Case study of Heroes of Newerth

Adjustable Group Behavior of Agents in Action-based Games

A Quoridor-playing Agent

CSE 258 Winter 2017 Assigment 2 Skill Rating Prediction on Online Video Game

networking and a variety of sociotechnical

Mobile Legends Bang Bang Diamonds Hacks and Strategy $97 Underground Diamonds Hacks

Using Neural Network and Monte-Carlo Tree Search to Play the Game TEN

Optimal Yahtzee performance in multi-player games

Opponent Modelling In World Of Warcraft

COMP3211 Project. Artificial Intelligence for Tron game. Group 7. Chiu Ka Wa ( ) Chun Wai Wong ( ) Ku Chun Kit ( )

ACER PREDATOR INDIA DOTA 2 RULE BOOK

Game Playing for a Variant of Mancala Board Game (Pallanguzhi)

OFFICIAL RULEBOOK Version 8.0

USING A FUZZY LOGIC CONTROL SYSTEM FOR AN XPILOT COMBAT AGENT ANDREW HUBLEY AND GARY PARKER

Five-In-Row with Local Evaluation and Beam Search

Quantifying Engagement of Electronic Cultural Aspects on Game Market. Description Supervisor: 飯田弘之, 情報科学研究科, 修士

ARTIFICIAL INTELLIGENCE (CS 370D)

OFFICIAL RULEBOOK Version 7.2

Enhanced MLP Input-Output Mapping for Degraded Pattern Recognition

TABLE OF CONTENTS WHAT IS SUPER ZOMBIE STRIKERS? QUICK GUIDE HOW TO PLAY TOURNAMENT STRUCTURE ELIGIBILITY & PRIZING

Performance Dynamics and Success in Online Games

Outcome Forecasting in Sports. Ondřej Hubáček

Real-Time Connect 4 Game Using Artificial Intelligence

CS510 \ Lecture Ariel Stolerman

CS 229 Final Project: Using Reinforcement Learning to Play Othello

Game-playing: DeepBlue and AlphaGo

COMP219: COMP219: Artificial Intelligence Artificial Intelligence Dr. Annabel Latham Lecture 12: Game Playing Overview Games and Search

Automatically Adjusting Player Models for Given Stories in Role- Playing Games

Non-Negative Tensor Factorization for Human Behavioral Pattern Mining in Online Games

A players clustering Method to Enhance the Players' Experience in Multi-Player Games

On Games And Fairness

Openlobby: an open game server for lobby and matchmaking

LEARNABLE BUDDY: LEARNABLE SUPPORTIVE AI IN COMMERCIAL MMORPG

Artificial Intelligence. Minimax and alpha-beta pruning

Tarot Combat. Table of Contents. James W. Gray Introduction

BLUFF WITH AI. CS297 Report. Presented to. Dr. Chris Pollett. Department of Computer Science. San Jose State University. In Partial Fulfillment

Artificial Intelligence. Cameron Jett, William Kentris, Arthur Mo, Juan Roman

CS 188: Artificial Intelligence Spring Announcements

Federico Forti, Erdi Izgi, Varalika Rathore, Francesco Forti

Twelve Types of Game Balance

CS188: Artificial Intelligence, Fall 2011 Written 2: Games and MDP s

On the Monty Hall Dilemma and Some Related Variations

Math 152: Applicable Mathematics and Computing

Lightseekers Trading Card Game Rules

An Analysis of Artificial Intelligence Techniques in Multiplayer Online Battle Arena Game Environments

SUPER-COLLOSAL TITAN WARFARE

MOBA Inspired & Card Driven 2 players game Minutes

An Introduction to Poker Opponent Modeling

STEEMPUNK-NET. Whitepaper. v1.0

Muangkasem, Apimuk; Iida, Hiroyuki; Author(s) Kristian. and Multimedia, 2(1):

Data-driven Recommendation Systems for Multiplayer Online Battle Arenas

Battle. Table of Contents. James W. Gray Introduction

Rapid Skill Capture in a First-Person Shooter

Laboratory 1: Uncertainty Analysis

Creating a New Angry Birds Competition Track

Monte Carlo based battleship agent

League of Legends: Dynamic Team Builder

Announcements. CS 188: Artificial Intelligence Spring Game Playing State-of-the-Art. Overview. Game Playing. GamesCrafters

Learning Artificial Intelligence in Large-Scale Video Games

Efficiency and Effectiveness of Game AI

Documentation and Discussion

Chapter 14 Optimization of AI Tactic in Action-RPG Game

Free Sample. Clash Royale Game Decks, Cheats, Hacks, Download Guide Unofficial. Copyright 2017 by HSE Games Third Edition, License Notes

Using Artificial intelligent to solve the game of 2048

Game Playing State-of-the-Art CSE 473: Artificial Intelligence Fall Deterministic Games. Zero-Sum Games 10/13/17. Adversarial Search

Thinking Style and Team Competition Game Performance and Enjoyment

Using a Game Development Platform to Improve Advanced Programming Skills

Predicting the outcome of CS:GO games using machine learning

CS 680: GAME AI WEEK 4: DECISION MAKING IN RTS GAMES

Event:

Playing Othello Using Monte Carlo

SATURDAY APRIL :30AM 5:00PM

IMGD 1001: Fun and Games

Case-based Action Planning in a First Person Scenario Game

Othello/Reversi using Game Theory techniques Parth Parekh Urjit Singh Bhatia Kushal Sukthankar

Analysis of Game Balance

SCENARIO LIST. (In no particular order) SEIZE GROUND. - As per page #91 of the Warhammer 40,000 Rulebook -

COMP219: Artificial Intelligence. Lecture 13: Game Playing

Bayesian Networks for Micromanagement Decision Imitation in the RTS Game Starcraft

Introduction. Contents

Blackjack for Dummies CSE 212 Final Project James Fitzgerald and Eleazar Fernando

Concept Connect. ECE1778: Final Report. Apper: Hyunmin Cheong. Programmers: GuanLong Li Sina Rasouli. Due Date: April 12 th 2013

Publication P IEEE. Reprinted with permission.

Nerfs, Buffs and Bugs Analysis of the Impact of Patching on League of Legends

Intro to Interactive Entertainment Spring 2017 Syllabus CS 1010 Instructor: Tim Fowers

Adversarial Search. CS 486/686: Introduction to Artificial Intelligence

2048: An Autonomous Solver

Artificial Intelligence Adversarial Search

THE RULES 1 Copyright Summon Entertainment 2016

The Arena v1.0 An Unofficial expansion for Talisman by Games Workshop Copyright Alchimera Games 2012

CS221 Final Project Report Learn to Play Texas hold em

5.4 Imperfect, Real-Time Decisions

Transcription:

ECAI 2016 - International Conference 8th Edition Electronics, Computers and Artificial Intelligence 30 June -02 July, 2016, Ploiesti, ROMÂNIA Skill Rating Method in Multiplayer Online Battle Arena Noppon Prakannoppakun Department of Computer Engineering Chulalongkorn University Bangkok 10330, Thailand Noppon.P@student.chula.ac.th Abstract Skill rating is one of major issues in the world of sportห and even also in competitive games, which are being considered as a type of sport. However, to keep players engaged with the games, we have to match them against other player whose skill is close to theirs, the question is how can we rate skills of a player. We designed a novel method which is suitable for rating skill of players in Multiplayer online battle arena (MOBA). The MOBA is the one of many games in which groups of players randomly meet and play as a team to win the game. We hence propose a new method to measure the individual skill level from several key factors. We analyze factors team s performance and show that it is better than the standard method. Keywords-Machine Learning; Skill Rating; Game; MOBA; Neural Network I. INTRODUCTION Skill rating method intends to measure skill level of a player to arrange a close competition which can make the player feel more excited. In general, the game has a scoring method indicating the skill level of the players called MMR (Matchmaking Rating), which is derived from the Elo Rating System [1]. Normally in MOBA, Skill Rating method, called Elo Rating System, determines skill by increasing skill score of the winner and decreasing one of loser. This method is suitable for two players or two teams. The whole team member gets the same score adjustment so that it cannot measure the skill level of an individual player. Typically, many games create a match by a group of 10 players and the split the players into two teams. Although goal of the players is to win in the match, but there is always argument about their role in the team, everyone loves playing main characters so that Supporting-role players need to work harder than the others. So, the methods to measure the work should be different by type of player. In this paper, a MOBA game, Dota 2 which we studied has a Web API named Dota2Api. This API will provide permission to retrieve various information such as game detail, data of the players in each game that can be used to identify major factors which affect outcome of the game. Furthermore, each character (or hero) that the player plays within the team will be focused in order to distinguish the contribution of each player. And also find out what seems to be a weight of each hero that contributes to a team win by Machine Sukree Sinthupinyo Department of Computer Engineering Chulalongkorn University Bangkok 10330, Thailand sukree@cp.eng.chula.ac.th Learning techniques. Finally, the obtained model will be used to measure the skill level of player. II. BACKGROUND A. MOBA The Multiplayer Online Battle Arena (MOBA) is an online game which has no stop time during playtime. Each player must collaboratively play as a hero within a team. to destroy the enemy s buildings or lives. Each team has five players with an assistance of some other autonomous units. The main difference of MOBA from other real-time strategy games is that the players is not required to construct neither buildings nor units. They can concentrate on their fighting skills according to the hero that was chosen. An example of maps in a MOBA game is shown in Fig. 1 Each team has three lanes heading to the other three lanes from the opponents. The dots denote defensive tower of each site and the bases of both team are in the opposite side. In some particular period of time, the autonomous units will spawn and raid to destroy their enemy along those lanes. Fig. 2 present heroes in dota2. Some hero with Carry or Nuker role will focus on doing the damages from spells or normal attacks as their first priority. Some with Support or Ganker role will focus on strike and support other role so the damage output should be low. Figure 1. Typical map of a MOBA genre game

2 Noppon Prakannoppakun Figure 2. Example of heroes with their abilities and role Figure 3. 10-folds Cross Validation B. Elo Rating System Elo Rating System [1] is a method of calculating the skill level of the player competition in the game, such as in chess. It uses the idea that a player with the higher score should perform better than lower-score player. Using this system, after every game, the winning player takes points from the losing one to preserver total points. The highly rated players are expected to win the game. It means that if they actually win the game, they will get only fewer points. On the other hand, if the player with not highly rate score or the player with lower score wins a game, this winner should get more points. This can be concluded that this rating system is able to run without any help from other rating system, the point of player will show their true skill. C. Cross Validation Testing Cross Validation Testing [2] is an evaluating method to compare learning algorithms. It divides all data into n folds; uses one fold as a test set and other folds as a training set. Then, the next fold is selected as the training set while the remaining folds are used to train a learning model. This training and test set selection is repeatedly done until all folds are completely used as the test set. With this method, the training sets and test sets will be interchangeable (cross-over). The basic form of cross-validation is k- fold cross-validation which the data are split into k equally (or nearly equally) sized segments or folds. After that, the one fold will be leaved for validation while the remaining k-1 folds are used for learning. In Fig. 3 illustrates how 10-folds cross validation works. The shaded blocks represent the training sets and the white blocks are the test sets. III. RELATED WORKS A. Works Relating to MOBA Nataliia (Pobiedina) Rümmele and Julia Neidhardt [3] were interested in the subject of the working as a team, how to form an effective team by using MOBA game. In this research, the results were exposed that a better role distribution in a team, a proper leader and more experienced players in team can increase chance to win a game. Alexandru Iosup et al. [4] proposed an approach to identify the implicit social structure from a set of SNGs (Social Networked Games) by a formalism. The study focused on formalizing mappings that extract graph from real data of DotA which is collected from the DotA communities Dota-League and DotAlicious. The result of this research was the social interactions are meaning ful for MOBAs like Dota2. In summarize, the result of this study was concluded that the proposed formalism can be applied to other gamegenres, for which it leads to new findings vs MOBAs, and suggest that even communities of popular networked games could benefit from new mechanisms that foster denser interaction graphs. Mirko Suznjevic et al. [5] proposed an application context based rating algorithm named ACARI for different rating system in MOBA games and used Heroes of Newerth (HoN) as a case study. The information related to the rating system in HoN such as rules, gameplay mechanics were used in this study. Beside this, a dataset contains details results of over 4,000 matches using API was collected for algorithm evaluation. The results of this study was shown that ACARI can increase the accuracy of prediction up to 10% compared with current rating system. B. Skill Rating A method to find skill rating value has been studied for a long time since there are several factors that be used to determine. The main point is to identify factors that should be focused. Delalleau, Olivier, et al. [6] proposed that a skill value should not be used in the skill rating calculation. They will try to maximize statistics that boosting their skill (e.g., their own number of kills) instead of doing something that make the team win. it can be assumed that these attribute should be avoided in calculation in order to prevent players exploit the system. This paper also proposes that the fun is more important than balance and showed how to use fun in a matchmaking system. Riegelsberger et al. [7] exposed that some player does not share the same respect to player who they enjoy playing with. Precise skill rating will bring in an easier task for many things like the comparison, ranking and prediction. Furthermore, the paper presented Bradley- Terry model which is a probability model to calculate probability that team A will wins over team B. Lei Zhang, Jun et al. [8] proposed a Factor-Based Context-Sensitive Skill Rating System(FBCS-SRS) and used to oppose to standard system that calculating based on match outcome (winning or losing). FBCS- SRS is a factor model for measure skill by depend on inner context and corresponding context of the game instead of measure a use only skill value from every context. The result was shown that FBCS-SRS has a better result.

Skill Rating Method in Multiplayer Online Battle Arena 3 C. Dota2 API Dota2 API [9] is a web service that developer can access information provided by Value. They can access via the http request by using API key from their Steam account. The data from this API can return in three different formats: json xml vdf (Value Data Format). The main expected methods to be used in this study are GetMatchHistory and GetMatchDetail. The first one will provides match data recently and also specify by account_id. And the second one will provide match detail data of the game which consists of 10 players and player s information. IV. METHODOLOGY In this paper, we propose a new method to measure a player s skill level by using statistic from game result. To identify the player that affect chance to win the match, it need to focus on role. However, in Dota2 Heroes can perform multiple roles. In this case skill rating measured by roles is not properly worked, instead of role we decided to focus on Hero and find importance attributes of each hero. In Ranked game mode of Dota2, each match will have 10 players join in the match. Each player is required to pick one hero one by one to be performed in the game. These players will use their hero kill hero and destroy building of the opponent in order to win. Each hero will be assigned weight value for attributes to identify which one is the most affect the game result, win or lose. For our target to know the importance of each attribute, based on the data that we already know the result of the match. we perform node that include weight and input for each attribute. Fig. 4 depicts The node that summing all these values is used as an input to our neural network model. We have created other two nodes; the team point node working as a sum of all players in the team and the winner node working as a node that judge which team is the winner by using The team point. We collected information by using Dota2 Api that will randomly select a match, and we will have the data that include 10 players (some people choose not to display the information, it will show up as an anonymous player and their account_id will be 4294967295). In order to have useful data, we only select All-Pick Ranked Mode and game that take more than 20 minutes. We will use player information to find match information and prepare for learning method. Our data sets have 4703 matches and 2477 unique players. Figure 5. Neural Network Model use for predict the wining team As Fig. 5 and our model that we described before, we create the model by assigning 10 attributes and weights to each attribute of hero to perform an input layer and another one layer to perform a team point. With 113 heroes,1130 values were adopted as input nodes and we have 2 sets of these nodes for the meaning of 2 team play against each other. With all input nodes, we will get the value 0 as an input if that hero did not participate in the game, and it will not have any effect to this model. Each weight was assigned a random value that will be used to represent the importance of each hero s attribute at first try and will be adjusted later with output that is different from our expected value. First, we calculate Player Point, by using equation where P is a Player Point, A is attribute of player and W is weight of attribute. Then we have Team Point(Tj) as an output node by Our Neural Network working with the prediction. The important thing is the result and decisions. We determine that chance of winning should be close to 50% of wining so we have designed our target point for the winner that should have more point compare to the loser as equation Figure 4. How to create player points

ECAI 2016 - International Conference 8th Edition Electronics, Computers and Artificial Intelligence 30 June -02 July, 2016, Ploiesti, ROMÂNIA Figure 6. Overview of Methodology Figure 7. Match Data Set Then we compare two Team Point to predict which team is the winning team. When the prediction is wrong, the new weight will be adjusted based on the input received, and the recalculate again until the prediction is right by using And get with where η is learning rate (we set learning rate to 0.02 due to our weight is very low), T is our target (expected team points that winner s has more than loser s), O is actual team point and X is input point of attributes. Fig. 6 show an overview of methodology that we are using to train our model. In order to know the weight of each hero s attributes, we use Neural Network and assign the weight value to each attribute for the hero to be used in the calculation of the score of each player in the game. For our dataset, we need to have dataset of historical matches with 10 attributes as Fig. 7 exposed and perform a matrix of weight for learning which has a total of 10 Attribute include Kills (the number of kills the player got) Deaths (the number of times the player died) Assists (the number of assists the player got) Hero Damage (the amount of damage the player dealt to heroes) Hero Healing (the amount of damage on other players that the player healed) Last Hits (the number of times a player lasthit a creep, this number told you how fat he is from farming) Denies (the number of times a player denied a creep) XP per Min (the player's total xp/min) Gold per Min (the player's total gold/min) Tower Damage (the amount of damage the player dealt to towers) With 113 heroes so we will have 1130 nodes of weight as our input nodes. After we have weight from

Skill Rating Method in Multiplayer Online Battle Arena 5 We use Neural Network to adjust weight of its links. Select weight from random process and match with a data input. We calculate the sum of the two teams to predict which one got a higher and that should be the winning team. If our prediction is wrong, we will modify the weight of each attribute by using Neural Network Model and the result shows the weight of each attribute, as example shown in Fig. 8. Then we use the weight from previous step and perform an evaluation method of the team winning prediction by using these weight and our attributes in match dataset with 10-folds cross validation. We try another method with neural network to determine skill level by focus on individual skill only by using Multilayer Perceptron [10]. Our Datasets are divided into the individual hero. In each dataset has attributes of that hero and the result of winning team. Then we try to predict the winning result with only one player s attributes as an input for network. With Elo rating system since we cannot retrieve MMR score via dota2api, so we try to simulate it by using its rule to assigned MMR score to our data sets. The Elo Rating system will add points to winner and take points from loser. Then we start from define initial value to the player (e.g. 3000) and after this player has played the game, we added 25 points when they win and removed 25 points when they are defeated. Use this MMR to predict the winning team by summing all MMR within team together and the team which got higher MMR should be the winning team. V. EVALUATION Since we propose a new method, so we compare this to the old skill rating method in the accuracy of prediction of the winning team. To test the effectiveness of the new method which is more than the old method will focus on the correct result of the assumption in any competition. The new method must be more than the old method at the significant level of 0.05. The comparison of the correct assumption, we define µ 1 is a precise assumption number of the new method. µ 2 is an accurate assumption of the old method. µ µ µ µ The evaluation method that we used is the Paired T-Test, which can be calculated by Figure 8. Example of weight of each attribute of Hero We do the experiment by separating the 4,700 games into 10 groups. The result of 10-folds cross validation displayed between Elo Rating System and Individual skill in Table 1, Elo Rating System and Team & Individual skill in Table 2, Individual skill and Team & Individual skill in Table 3. TABLE I. DIFFERENT VALUE BETWEEN ELO RATING AND INDIVIDUAL SKILL Folds Elo Rating Individual Skill Different 1 367 418 51 2 359 420 61 3 357 398 41 4 368 424 56 5 347 409 62 6 355 414 59 7 365 416 51 8 362 403 41 9 345 417 72 10 352 410 58 TABLE II. DIFFERENT VALUE BETWEEN ELO RATING AND INDIVIDUAL SKILL Folds Elo Rating Team & Individual Skill Different 1 367 435 51 2 359 437 61 3 357 428 41 4 368 426 56 5 347 423 62 6 355 430 59 7 365 443 51 8 362 433 41 9 345 425 72 10 352 434 58 TABLE III. DIFFERENT VALUE BETWEEN INDIVIDUAL SKILL AND TEAM & INDIVIDUAL SKILL Folds Individual Team & Individual Different Skill Skill 1 418 435 17 2 420 437 17 3 398 428 30 4 424 426 2 5 409 423 14 6 414 430 16 7 416 443 27 8 403 9 417 10 410 433 441 434 30 8 24

6 Noppon Prakannoppakun We summarize the result of the experiment by construct the Reject Null Hypothesis, if t > 1.6479 The result of Table 1, t value is 18.2477 The result of Table 2, t value is 33.8503 The result of Table 3, t value is 12.6758 The result of Table 1, Table 2 and Table 3 concludes the reject the null hypothesis because t>1.6479 Therefore, the number of the correct prediction of the new method are more than the old method. That means both new method is more efficient than Elo Rating System. VI. CONCLUSION This paper proposed a method to measure the skill level of the players by analyzing the attributes to rate players who can do the best in the team. So we decided to capture the idea from neural network to determine the importance of each attribute in the form of weight of neural network. The experiment shows that the method that used the individual skill can predict outcome better than using only the winning result and much more with using members of the team in part of analysis. Therefore, we can use this method to give points with those who have helped the team precisely. VII. REFERENCES [1] Wenfeng Li; Zhiqing Liu, "Elo rating of local contextual patterns," in Control and Decision Conference (CCDC), 2011 Chinese, vol., no., pp.2522-2526, 23-25 May 2011 [2] Refaeilzadeh, Payam, Lei Tang, and Huan Liu. "Crossvalidation."Encyclopedia of database systems. Springer US, 2009. 532-538. [3] Pobiedina, N.; Neidhardt, J.; Calatrava Moreno, M.C.; Grad- Gyenge, L.; Werthner, H., "On Successful Team Formation: Statistical Analysis of a Multiplayer Online Game," in Business Informatics (CBI), 2013 IEEE 15th Conference on, vol., no., pp.55-62, 15-18 July 2013 [4] Losup, Alexandru, et al. "Analyzing implicit social networks in multiplayer online games." Internet Computing, IEEE 18.3 (2014): 36-44. [5] M. Suznjevic, M. Matijasevic and J. Konfic, "Application context based algorithm for player skill evaluation in MOBA games," Network and Systems Support for Games (NetGames), 2015 International Workshop on, Zagreb, 2015, pp. 1-6. [6] Delalleau, Olivier, et al. "Beyond skill rating: Advanced matchmaking in ghost recon online." Computational Intelligence and AI in Games, IEEE Transactions on 4.3 (2012): 167-177. [7] Riegeisberger, J., et al. "Personality matters: incorporating detailed user attributes and preferences into the matchmaking process." System Sciences, 2007. HICSS 2007. 40th Annual Hawaii International Conference on. IEEE, 2007. [8] Zhang, Lei, et al. "A factor-based model for context-sensitive skill rating systems." Tools with Artificial Intelligence (ICTAI), 2010 22nd IEEE International Conference on. Vol. 2. IEEE, 2010. [9] Dota 2 Match History WebAPI [Online] Avalilable: http://dev.dota2.com/showthread.php?t=47115[accessed; 12- Nov-201 [10] S. Haykin, Neural Networks: A Comprehensive Foundation 2nd, Prentice Hall PTR Upper Saddle River, NJ, USA 1998, 1998.