Machine Learning with League of Legends - Introduction

Introduction

In recent years, machine learning, especially in the field of reinforcement learning, has made impressive feats in regards with games.

  • In 2017, AlphaGo was an AI that was able to beat the world-class champion in the board game, Go.
  • In Janurary of 2019, AlphaStar beat the player “MaNa”, a world class champion, 5-0, in the real-time multiplayer strategy game, Starcraft 2.
  • In April of 2019, OpenAI Five was able to beat the champions of Dota 2, a complex five man multiplayer online battle arena video game. Paper

Here are some highlight clips that demostrate what the AI was able to accomplish in these games.

World champion Lee is surpised by AlphaGo's actions (Image source: BusinessInsider)

AlphaStar's army defeats MaNa's army

OpenAI Five manages to kill four of the five members of OG during a fight

Here are links to the matches:

League of Legends

League of Legends is a MOBA (Multiplyer Online Battle Arena), much like Dota 2. In League of Legends, the goal of a team is to destroy the other team’s nexus (a tower unit). There are five players per team and two teams face off during a match. Each player can select one champion from a pool of 100+ champions to play. These champions are the characters that represent the player in the game and usually has four unique abilities that the champion can use. Each champion also have certain statistics, such as health, mana, armor and magic resist to boost the champion’s offensive and defensive capabilities. The champion also can equip items bought from store to boost their statistics using gold. Gold is generated at a steady rate in the game and extra gold can be obtained by killing minions or enemy champions. Each player is assigned a role in a team – top, mid, bot, support, jungle. The roles usually determines what champions players pick and where in the map the players choose to fight their enemies.

The champion, Zed, uses multiple skills to defeat the champion, Camille

Here is a link to a more in depth guide to League of Legends

What has been done in currently League of Legends?

There are quite a few machine learning projects that have been done with League of Legends.

Detecting champions on the minimap (Image source: Medium)
  • Voice Assistant that recommends players with advice to improve their gameplay
  • LeagueAI is a basic AI that performs basic actions by determining the state of the game via image detection

Moving forward

Some interesting problems in League of Legends have been tackled by the community and proved quite successful. However, there are existing solutions that can be improved on and there are new problems that have never been attempted before. The goal of the future posts are to explore and tackle possible problems and discuss my approach to them.




Enjoy Reading This Article?

Here are some more articles you might like to read next:

  • Uniqueness
  • Paul Graham - When To Do What You Love
  • Review - Managing Memory Tiers with CXL in Virtualized Environments
  • Paul Graham - The Right Kind of Stubborn
  • Working on hard problems