Uploaded by andreicalinciobanu

IEEE SSCI 2020 Vision Rocket League

advertisement
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/348262202
On the Potential of Rocket League for Driving Team AI Development
Conference Paper · December 2020
DOI: 10.1109/SSCI47803.2020.9308248
CITATIONS
READS
2
413
2 authors:
Yannick Verhoeven
Mike Preuss
University of Münster
Leiden University
3 PUBLICATIONS 5 CITATIONS
266 PUBLICATIONS 5,585 CITATIONS
SEE PROFILE
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
General Intelligence on Games View project
PropStop: Identification, detection, and combating of hidden propaganda attacks via online media View project
All content following this page was uploaded by Mike Preuss on 11 January 2022.
The user has requested enhancement of the downloaded file.
On the Potential of Rocket League
for Driving Team AI Development
Yannick Verhoeven
Mike Preuss
Department of Information Systems
Westfälische Wilhelms-Universität Münster, Germany
yannick.verhoeven@uni-muenster.de
Leiden Institute of Advanced Computer Science
Universiteit Leiden, The Netherlands
m.preuss@liacs.leidenuniv.nl
Abstract—Several Games have been used as test cases for new
AI developments in the last years, e.g. the games of the Atari
Learning Environment, Go, and also StarCraft. As many single
player problems are treated successfully now, research is turning
more to Team AI problems: AI/human and AI/AI coordinated
decision making in mixed cooperative/competitive environments.
OpenAI Five and RoboCup and related environments as MuJoCo
soccer are pushing into this direction. Rocket League is an
interesting alternative as it has quite different game mechanics
compared to soccer, and an API with a number of different bots
already exists. We summarize the current state, relate it to the
situation in the fields that may provide useful approaches as e.g.
sports analysis, and argue that it makes sense to do more research
on Rocket League bot control and coordination.
Index Terms—Rocket League, multi-agent control, Team AI
as its e-sport variants. However, there are certain aspects that
also limit agent coordination research, e.g., it features a strong
positional system. We therefore argue that Rocket League is
a good addition to soccer for research because of its inherent
differences:
•
•
•
I. I NTRODUCTION
Computer games have played a very important role in recent
AI research by providing relatively simple but well structured
and scalable decision problems [1]. After Go [2], even the
much more complicated realtime strategy game StarCraft [3]
has been mastered successfully by means of specifically created AIs. The next complexity level for artificial agents is
arguably multi-agent coordination, or more general, team AI,
including agent/agent as well as human/agent collaboration.
This is not to say that there is no research in that direction
yet. Next to an unmanageable size of publications on multiagent systems that have been produced over the last decades,
there are at least three notable developments that are related
to team AI in games:
• Robocup features robots playing soccer, in hardware or
in simulation only. It exists since 1995 and has been
extended to a lot of leagues and tackled a lot of scientific
challenges, especially in the area of agent coordination [4].
• OpenAI Five [5] is an approach that is able to control
5 individual Dota2 players on human competitive level.
It is related to the emergent tool use work of [6] that is
much more general. Both use long-term, very resource
intense deep learning.
• MuJoCo soccer [7] is a multi-agent simulation based
framework for team coordination research.
Soccer is definitively a good test setting for many types of
team AI problems, and it has the advantage that it can draw
large public interest from its popularity as a real game as well
•
In Rocket League, player roles are not fixed, instead they
are rotated steadily, such that every player is changing
from offense to defense and back regularly.
Orientation towards team members is important at all
time, uncoordinated movement often provides scoring
opportunities to the opponent team.
Conservation of momentum is a crucial aspect of competitive play, which forbids idling on a position as the
default state.
Movement patterns for ball and players are more complex
than e.g. in soccer as they rely much more on the 3dimensional space. The ball is rarely moving flat on the
ground.
The requirement that every player/bot has to be able to play
a bit of every role means that there no strong specialization,
as opposed to soccer. Together with the low number of players
and the relatively simple interface this leads to a comparably
low entry barrier. We shall later on look at the currently
available bots in order to see how good they are. However,
we can already state now that they are not very good at
coordinated play, meaning that the entry barrier for bots and
bot teams is also rather low.
Next to full bot teams, Rocket League also poses an
interesting test case for human/AI mixed team coordination.
Whereas humans tend to intuitively extrapolate the behavior
of their team mates in order to anticipate movements and
tactics, this is not so easy for bots. However, these can
easily scan the whole playing field and know all positions
of teammates and opponents, even if these are placed behind
them. Humans cannot do this without turning their camera due
to field of view limitations . Of course, there is a potential for
collaboration here as the abilities of humans and bots are partly
complementary.
As for other e-sports, the extensive research on team behavior in real sports due to the growing availability of spatiotemporal data [8] can only benefit team behavior analysis in
video games. For Rocket League, such data is available as
well, and methods shall be at least partially transferrable.
Another important aspect that may be studied utilizing
Rocket League as a test case is ad-hoc teamwork between
bots and in mixed human/bot teams with and without communication. Rocket League teams are ad-hoc by default and
draw on predetermined vocabularies for communication, such
that human-agent cooperation is already possible. However,
we are not aware that it is already explicitly used.
Summarizing, Rocket League is a readily available candidate for team AI research that could clearly enrich the current
zoo of utilized games with some unique features.
In the following, we first explain the game mechanics of
Rocket League (Sect. II) before we assess the potential of
spatio-temporal data analysis in Sect. III. Sect. IV deals with
the intricacies of the tactical system in Rocket League that are
somewhat different from many team sports, and in Sect. V
we investigate team communication in Rocket League. We
continue with reporting on a tournament with Rocket League
bots we have conducted in Sect. VI before specifying different
ways for assessing team behavior in Sect. VII, followed by
conclusion and outlook. More detailed results can be looked
up in the Master’s thesis this work is based on [9].
II. ROCKET L EAGUE
Rocket League is “a high-powered hybrid of arcade-style
soccer and vehicular mayhem with easy-to-understand controls
and fluid, physics-driven competition” 1 . The aim of the game
is simple: To shoot the ball into the opposing team’s goal.
Towards that end, players control their cars and try to make
contact with the ball, transferring part of their momentum onto
the ball according to rules of physics dictated by the game
engine. The field is bounded by walls and a ceiling, similar to
cage soccer. Consequently, the ball cannot go out of bounds.
Furthermore, there are no rules, and therefore no fouls, in
Rocket League, meaning that play is never interrupted unless
a goal is scored. Figure Fig. 1 is a screenshot, taken from a
3v3 bot game, that shows how cars, the ball, the goal, and
the walls look in an actual game. Fig. 3 As can be seen from
the screenshot, cars are able to achieve lift in Rocket League,
adding a third dimension to the potential movement options.
This is done by jumping and/or utilizing boost (a limited
resource collected from pads on the field), which grants thrust
acceleration. When pointed downwards, this can sustain flight
for a limited duration. The features of games discussed by the
group working on the question “Which games should we (AI)
explore next?” during an NII Shonan meeting on game AI in
2019 [10, p.17] are used for the characterization of the game.
These are formulated from the perspective of how an artificial
intelligence can play the game. Rocket league is a multiagent game with a team structure of either 1v1, 2v2, or 3v3.
The team structure discussed in this thesis is predominately
3v3. It is a mechanically challenging game based on physics,
and bots work by relying on position data for all players
and the ball provided at each time cycle. As is typical
Fig. 1: Rocket League Bot Gameplay. Two teams of 3 cars
each try to put the ball into the goal of the opposite team.
for team sports games, the environment is continuous, and
all agents can act simultaneously and independently. Rocket
League is characterized by sparse rewards and a long timehorizon, because goals are scored infrequently during play. It
requires several cognitive capabilities, including memorizing
the spatio-temporal information gained through perception of
the environment, communicating this information for a shared
team awareness, planning based on this awareness, and being
attentive to actions of the opposing players [10, p.19].
There have been some successful machine learning/AI applications in Rocket League, but these have been reported in
informal literature. We list some highlights in the following:
Harry Xie [12], a member of the Rocket Bot community,
successfully trained an agent to air dribble (a maneuver that
keeps the ball balanced on top of the car by continuously
adjusting the car position to stay under the ball’s center
of gravity) in place with a randomly generated initial state
with fixed car and ball positions and randomized yaw and
roll parameters. Using deep deterministic policy gradients,
the maximum carry duration reached was roughly 30s, with
averages around the 7s mark. This is already longer than
the overwhelming majority of players can manage. With twin
delayed deep deterministic policy gradients (TD3), evaluation
episodes averaged two minutes, with some episode being far
longer. A clip of a very successful episode using TD3 that is
competitive with the best human air dribblers, who dedicate
a lot of time to this skill and are far better than professional
players in that regard, is available online.2
The same author also made progress on even more challenging shots using ghost controls of a human completing the task
for denser rewards. Also, a Rocket League positioning neural
network was created and trained on professional replays3 .
It predicts the likely position of the sixth car based on the
positions of the other five cars and the ball. This is currently
not useful for positioning of bots, because the situations arising
in the professional replays are not replicated in bot games.
However, it could be valuable for the assessment of adherence
2 https://www.twitch.tv/videos/479182384
1 from
Rocket League® - official site: https://www.rocketleague.com/
3 https://www.youtube.com/watch?v=-VE4iYkmd8g
Fig. 2: Movement Model Creation Steps (left to right), standardization, example data set, resulting movement model after
smoothing with kernel density estimation, Brefeld et al. 2019, p.132 [11]
to the tactical system in the future, when bots are closer to the
team formations exhibited by the players the neural network
is trained on.
III. S PATIO -T EMPORAL DATA A NALYSIS
Team sports games, such as soccer, basketball, ice hockey
or handball have been analyzed by coaches, sports analysts,
television commentators, and viewers with differing degrees of
precision for decades [13]. However, detailed game analyses
through observational approaches are highly time consuming
and, due to the highly dynamic and continuously changing
situations, the reliability of such analysis is debatable, creating demand for quantitative approaches [14]. Lately, the
availability of reliable, automatically generated data, such as
positions of the ball and the players for each time frame,
has motivated intensive research into such data-driven sports
game analysis [8]. In contrast to traditional analysis, the
automated analysis of spatio-temporal data yields objective
and comparable results, provided the difficulty of associating
the continuous nature of this data with events [15] is managed
appropriately. The two major strands of research attempting
to leverage this data are the analysis of spatial arrangements
of teams, and the use and control of space by teams [8].
Even though this research is based mostly in real-life sports,
several concepts can be adapted to e-sports, and specifically
Rocket League. For example, inferring information about the
opposing teams strategy is possible by analysing ball movements during each teams possession periods [15]. Adapting the
automated determination of team formations by Bialkowski
et al. [16] - which is based on player positions relative
to static space defined through iterative minimum entropy
data positioning - to dynamic roles based on ball position
and possession can show agents’ tendencies and differences
in tactical formations between teams. Both approaches have
potential for opponent modelling and self-improvement by
quantifying the bots’ team behavior. Movement models describe the positions players can reach on the field in a given
time based on their current position, orientation and velocity.
First introduced by Taki et al. [17], and improved in [18],
movement models are an important part of sports analysis
and were since revisited and further refined [19], [20]. The
growing availability of precise and continuous position data
through tracking techniques enabled Brefeld et al. [11] to
create a method for the automated generation of probabilistic
individual movement models (Fig. 2). The method represents
the positional data points as triplets (ps , pt , pu ) including a
starting position, present position, and future position. This
data is first standardized through translation and rotation so
that the movement vector ps pt is in alignment with the x-axis
and pt is in the origin. The point pu then describes the point
reached by the player from the origin given the initial velocity
and orientation defined through the vector ps pt in the triplet.
By calculating the distance from the origin to pu and the
angle between ps pt and pu for all available data triples for the
player, the ability of the player to move in different directions
with a given initial speed is described. Though individual
differences in physical performance are irrelevant in virtual
games because the maximum acceleration, velocity, and turn
radius are constants defined by the game engine, differences
in performance of the controlling agent, human or artificial,
lead to different movement models. Therefore, adapting the
method of Brefeld et al. [11] to Rocket League can provide
insights into individual agent performance and reveal zones
of control. The zone of control is the zone on the field that
an agent can reach before any other agent [18] and is crucial
for passing algorithms [21], while the sum of agent’s zones of
control is an important measurement for effective use of space
and an indicator for team behavior. Due to Rocket Leagues
allowing for movement in three dimensions the results would
show an ellipsoid of control rather than a zone, which becomes
increasingly more spread out for higher initial velocities.
The analysis, interpretation, and abstracted description of
one or multiple adversary’s actions with the goal of formulating a counter-strategy is called opponent modelling [22]–
[24]. Opponent models can be created during competition
or based on historical data for pre-game preparation of a
targeted strategy. Though humans tend to create opponent
models subconsciously, and analyzing soccer teams for apriori tactical decisions by coaches is an established practice,
modelling three-dimensional autonomous multi-agent environ-
ments is a relatively new and challenging concept [14], [22],
[23]. The first problem in more complex three-dimensional
environments, such as the RoboCup 3D Simulation Leagues or
Rocket League, is the unavailability of annotations for actions
(e.g. pass, shot, dribble). Following the research of Iglesias
et al. [22], targeted towards the RoboCup Coach Competition
held in 2006, sequence tries for Rocket League can be created.
The added complexity stemming from Rocket Leagues threedimensionality can be managed by introducing ranges for
the height of players during atomic actions such as shots,
differentiating ground, jump, and aerial shots. The resulting
tries can be used for opponent modelling and the formulation
of counter strategies. Abusing individual movement models
is a valid strategy especially on lower levels and can be as
simple as tracking the average height of the opponent’s car,
which, when low, may indicate vulnerabilities to aerial play.
This potential vulnerability can then be exploited by relying
more on chips and high passes. If the average height does not
rise in response, or goals are conceded, the vulnerability is
confirmed.
IV. ROCKET L EAGUE TACTICAL S YSTEM
A problem for the creation of a computational team behavior
model for use with bots in a specific domain, such as RoboCup
or Rocket League, is that an accurate model requires the collaboration of domain experts, analysts and software developers
[25]. These groups rely on different ways of presentation,
ranging from natural language to formal modelling languages.
For Rocket League team behavior, inputs from sports analysis
research, RoboCup research, and domain knowledge of players
are relevant. The domain knowledge that all players implicitly
possess to some degree has to be expatiated and aggregated to
become accessible, which has been done by content creators
over the last years. By combining these inputs, a tactical
system for Rocket League, which can form the basis for bot
behavior modelling was created. This system is applicable
for the standard format of competitive play, 3v3, and relies
on continuous reassignment of roles based on rotation. The
roles are not defined through static space on the field, but
dynamically in relation to the ball position.
The roles, numbered from 1 to 3, are the attacker, receiver
and defender respectively as shown in Fig. 3. The attacking
role, determined by lowest travel time to the ball combined
with proper orientation, is tasked with challenging, dribbling,
shooting or passing the ball. The receiver, usually comparably
far up the field but on the different side to the attacker, exerts
pressure by threatening a passing play via the passing lanes
(yellow). Lastly, the defender stays behind and between the
two attacking players and acts as backup. After a shot or
pass, role 1 transitions to role 3 by rotating behind player
3 while collecting boost on the field. Role 2 becomes the
new attacker, provided he is able to reach the ball coming
from role 1, and role 3 becomes the new role 2 by moving
up the field. Adhering to this tactical system, characterized
by continuous reassessment of the game state and dynamic
assignment of roles, allows for all players to retain their
Fig. 3: Rotation scheme (roles) in Rocket League with role
numbers. Each number represents a car, the grey circle
represents the ball. Orange dots represent boosts, red lines
are meaningful move alternatives for all roles, yellow lines
represent possible passes.
momentum while maintaining adequate spacing relative to
their teammates. This in turn maximized the team’s zone of
control while simultaneously ensuring good resource (boost)
management.
V. ROCKET L EAGUE C OMMUNICATION
Communication is defined as the process by which information is clearly and accurately exchanged between individuals in
a prescribed manner through use of proper terminology [26].
It is a fundamental part in scenarios focused on collaboration
and teamwork and should be as natural and intuitive as
possible [27]. In team games such as soccer or Rocket League,
players create their own spatial mental models which are
representations of their environment [28]. These models, with
weights given to features pertaining to current goals, form
the basis of human decision making in complex environments
[28], [29]. Concepts such as zones of control, pressure or team
formations are essentially formally expatiated representations
of the mental models that players build for their respective
needs, like identifying potential receivers for a pass. Because
individuals base their decision making on their spatial mental
models, successful operation as a team requires a shared model
[30]. Without a shared understanding of positions, responsibilities and plans, each individual makes decisions based
only on his or her interpretation of the information available,
making good team behavior difficult. A shared understanding
can be achieved through regular communication between team
members with the purpose of aggregating each individual’s
situation awareness and plans [30], [31]. Therefore, good
communication is a major driver of team performance. The
difficulty lies in finding the right channel, recipients, content,
volume, and time for communication. Whereas a lack of
communication leads to mistakes in decision making due to
differing individual mental models [27], over-communicating
carries high coordination costs, meaning that the overall taskrelated performance could be worse due to excessive time
spend on communication [31] Three general types of communication, human to human, human to bot, and bot to bot
communication are interesting for team behavior in games.
•
•
•
Human to human communication can serve as the foundation by giving insights into which players want to know
what, how much information they want, and when they
need that information (recipients, content, volume, time).
Human to bot communication, often called human-agent
communication, is the most complex due to the different
needs, strength and weaknesses of humans and machines.
It is a hot topic in current research for diverse humanagent teaming applications [27]–[33].
Lastly, bot to bot communication can become a driver for
team performance in premade and ad-hoc bot teams and
therefore advance team behavior of artificial intelligence
bots in games.
For the analysis of human communication in Rocket League,
we investigated the voice communication of professional players during games. Through transcription and color coding
based on the message content and intent, five communication categories were identified. Frequency analysis showed
that information pertaining to the sending players situation
(e.g. position, boost-level) and intention (e.g. going for the
ball, falling back) were communicated most frequently with
more than half of the messages falling in either category,
followed by information about opposing players situation or
anticipated intention. Estimations about future game states,
tactical directives, confirmation and feedback were present,
but less frequent (< 5% of total messages). Since ad-hoc
teams usually do not utilize voice communication, quick chat
commands, which form a domain specific fixed-vocabulary
system, can be used to communicate information. Mapping
the categories identified in the voice communication analysis
to the available quick chats showed that almost everything
can be communicated, albeit with reduced precision. These
quick chats are thus usable for human-bot communication.
The communication volume in pure bot games can exceed
what is possible in human communication because the cost
for communication is low and information processing speed
is much higher [30].
Bot communication within the current framework can be
done via sending and receiving quick chat messages4 or via
Matchcomms5 . The quick chat is comparable to the limited
standard communication protocol for the RoboCup drop-in
league, where robots are randomly put into ad-hoc teams and
do not know the identities of their teammates [34].
4 see
5 see
https://github.com/RLBot/RLBotPythonExample/wiki/Quickchat
https://github.com/RLBot/RLBot/wiki/Matchcomms
VI. B OT T OURNAMENT
In order to assess the current level of Rocket League bots
in terms of mechanical skill and team behavior, the 21 bots
developed and made available in the framework by the Rocket
Bot community were first put against each other to determine
the fittest bots. The match settings were set to the default
state used in competitive play. Because the client currently
does not support simultaneous matches, and tests showed
that speeding the game up resulted in performance drops for
some of the bots (measured by packet loss), the game could
not be sped up beyond real time. Consequently, quantitative
testing with large sample sizes, which would lead to more
robust results, was not feasible. Instead, the validity of the
results was increased by using a competition format that yields
good placement results for relatively small samples for the
team competitions [35]. This competitive format consists of
a round-robin with one game played for each pair of teams
and can include placement matches between the pairs directly
adjacent on the resulting leader-board. For the initial screening
and preliminary placement of the bots, each custom bot was
made to play three matches against the official bot used in
the client by Psyonix, set to the highest skill level (Allstar).
This approach has two advantages. First, it ensures a fair
comparison for the initial test, as each bot plays the same
opponent. Second, it provides a good first insight into the level
of the bot, because the in-game bot is familiar to most players
and forms a good baseline. During this process, 3 bots were
excluded from further consideration due to malfunctioning
or cheating by ignoring physics rules. For the next stage,
three-player teams made up of equal bots were formed and
set against each other in the round-robin format suggested
by Budden et al. [35]. Using the placement results from the
three versus three equal team tournament, the top five bots
were combined into mixed three player teams, leading to ten
teams which were again set against each other in a round-robin
tournament. Finally, the top performing equal bot teams were
set against the top performing mixed bot teams. The results
show that mixed teams are slightly superior to equal teams
with current bots. Presumably, this is due to less overlap in
the team’s zone of control and fewer double commits (two
teammates challenging for the ball at the same time) for bots
that have different decision-making processes. Especially for
bots that appear to have little or no consideration for their
teammates, a team of three bots that make decisions based
only on their own position and the ball position would be
expected to perform worse in equal teams when compared
to mixed teams. Arguably, a team with three players who all
make egoistical decisions is better off if those three players
are as different as possible. Even in teams that have bots with
team-behavior, having bots with different decision making can
improve the team. For example, an equal bot team with only
defensive bots is unlikely to beat a mixed team with two
defensive and one offensive bot.
VII. A SSESSMENT OF T EAM B EHAVIOR
Team performance is relatively easy to assess by looking
at match results and using simple metrics such as win rate
and goal difference. Assessing team behavior is much more
difficult, because it requires determining how much of the
team performance is actually due to team behavior and how
much is just the individual skill of the players. In RoboCup,
MacAlpine and Stone [34] found a high correlation between
the performance of a team in the regular competition and
in drop-in leagues, which could also be observed in the bot
tournament. This suggest that the high win rate and goal
difference of teams with skilled bots is - to a non-trivial
extend - due to its individual mechanical skill and not its
team behavior. There are several potential ways to assess team
behavior.
First, based on observation. The straightforward way is to
observe replays and judge team behavior manually, which is
time consuming and subjective [14]. Alternatively, to observe
replays and judge team behavior based on predefined attributes
or conditions and utilizing checklists and counting occurrences
is still time consuming but more objective. The next step could
be to automate this process.
Second, to find metrics that can be extracted from replays
and assess team behavior. Promising metrics for team behavior
in Rocket League are assisted goal percentage, total boost
acquired by the team and demolitions (short-term disablement
of opposing cars via crashes), among others. These were
identified by comparing the relative performances of players
across two different 3v3 playlists, the 3v3 standard and the 3v3
solo standard leagues. 3v3 standard allows for teams of up to
three players to play together, while solo standard is only open
to individuals. Therefore, all teams in solo standard are ad-hoc
teams, while the standard playlist is usually played by premade
teams of three. It stands to reason that the team behavior in
a premade team, which is also more likely to utilize voice
communication, is better than the team behavior of ad-hoc
teams restricted to quick chat communication. This should be
reflected in the data, meaning that metrics that show distinct
differences for the two leagues are likely metrics linked to
team behavior. Another advantage gained from the availability
of human replays is that the performance metrics of bots can
be put into perspective by comparing them to the performance
of human players of differing skill levels. The data for the bots
was generated and averaged over the several stages of roundrobin competition, while the human player data was extracted
from replays available online 6 . The data is based on roughly
80 hours of competitive play in 3v3 solo standard and 100
hours of competitive play in 3v3 standard across the different
skill groups, assuming an average match length of 7min.
The performance of bots compared to human players, averaged over hundreds of games for different 3v3 playlists and the
several competitive matchmaking ranks, are shown in Fig. 4
for the metric assisted goal percentage. The best three equal
bot and the best three mixed bot teams, determined by win
6 see
ballchasing.com
Fig. 4: Assisted goal percentage. Solo Standard and Standard
values are based on human player replays across the 6 skill
groups, SDC, Relief and Botimus are the best equal bot teams,
Teams 2, 4, 8 are the best mixed bot teams based on the bot
tournament
rate and goal difference through round robin tournaments, are
chosen here. Compared to humans, the equal bot teams showed
values for assisted goal percentage that are slightly below the
lowest skill level (bronze) on average, while two of the most
successful mixed teams approach the performance of players
at the silver or gold ranks. This is consistent with the observed
trend that mixed teams exhibit superior team behavior.
Lastly, the code the bots run on can be analyzed, if available, as it will clearly show whether the bot considers his
teammates, and in which way. By comparing this with domain
knowledge on tactical formation and team behavior, statements
regarding the bot’s fitness for teamwork are possible. Investigating the top-performing bots, for which the code was openly
available, showed, that rudimentary team behavior, in the form
of adherence to the rotational system, is implemented. More
advanced algorithms, for example for passing, are missing,
but are believed to hold the potential to drastically increase
competitiveness when implemented.
VIII. C ONCLUSION / O UTLOOK
Several game analysis concepts from real life sports can be
adapted to the Rocket League domain and used in combination
with domain knowledge for the formulation of a well-founded
team-oriented tactical system for Rocket League. This tactical
system forms the basis for the current and future development
and assessment of artificial intelligence team behavior in
Rocket League. It can be used as input for the development of
better behavior trees for coded game playing agents or aid in
the formulation of shaped reward functions for reinforcement
learning techniques. Additionally, the team behavior of human
or artificial players can be assessed based on their adherence
to the tactical system, through manual observation along
predefined criteria. However, additional research is required to
develop and implement systems that can automatically assess
the team behavior of an individual agent or a team. This
could include the use of entropy maps for the assessment
of passing variability, or an adaption of the automatic team
formation identification by Bialkowski et al. [16] to dynamic
zones defined relative to the ball position. Especially the ability
to automatically infer the current role of a bot from spatial data
could greatly enhance team behavior assessment, by giving
better insights into bot decision making processes.
The analysis of professional player communication logs
yields interesting insights into the content, volume, and timing
of messages on the highest level of competition. These insights
are valuable for the eventual design of human-agent communication in Rocket League and can also be used to derive
information needs in bot games. The assessment of existing
bots, through observation, different metrics, and code analysis
reveals that even comparatively well-performing bots do not
show sophisticated team behavior. Most notably, intentional
passing behavior, which is one of the most basic forms of
teamwork in any ball game, is not observable in existing
bots. This is evident from the relatively low assisted goal
percentage, the lack of passing behaviors in the analyzed code,
and the under-representation of role 2 (pass receiver) during
experimental analysis. Furthermore, no bot was observed to
use communication for its decision-making process. Though
some bots show promise, especially in defensive behavior,
boost collection behavior, and demolition tactics, the team
behavior of current bots can only be described as lacking.
On account of this, the development of a bot that fixes
these shortcomings is the logical next step for Rocket League
team behavior research. The development can draw on existing
bot’s code for physical calculations, and the Rocket Bot
framework supports python, java, .NET, Scratch, and Rust,
thus allowing researchers to get started with relative ease.
In this line of research, the development of a skills, tactics,
and plays architecture for distributed multi-agent teams is
an interesting prospect. Optionally, skills could be learned
using reinforcement learning, which was successfully done
in Rocket League for the comparatively difficult mechanical
skill air-dribbling regardless of current limitations. Due to
Rocket Leagues advantage of accommodating both artificial
and human players, the comparison of bots to human players
based on observation could show interesting results. In that
direction, a Rocket League Turing test could be administered
by letting humans guess which of the players on the field is
a bot. Another interesting experiment could be to let humans
guess the rank of an agent without telling them that the agent
is a bot and comparing the guessed ranks to the results gained
from ranking the bot based on quantitative metrics gained from
replays.
Although Rocket League has some inhibitors for machine
learning, most notably that the game cannot be sped up
significantly, it is in our view more suited for human-agent
teaming and communication research than RoboCup. The
availability of human replay data and the possibility to test
bots with and against humans, while still retaining the ability
to draw on sports analysis, work on RoboCup, and general
artificial intelligence research, is unique to Rocket League.
Furthermore, even the existing bots, which are almost completely lacking team behavior and mechanically behave around
the level of an average player, are much closer to beating the
RLCS champions than RoboCup teams are to beating the FIFA
champions, which is their long-term goal. Rocket League bot
developers have the advantage of being able to test their bots
against humans early and repeatedly. Insights gained from such
tests are meaningful for bot development, because humans
tend to be very good at finding and exploiting weaknesses,
thus uncovering potential for improvement. Due to the ability
to draw on differing fields of research, the low entry barriers
for bot development, and the game’s inherent advantage of
providing an even playing field for human players and bots in
ad-hoc teams, Rocket League is an interesting game for future
research and has great potential for driving all aspects of team
AI development.
R EFERENCES
[1] S. Risi and M. Preuss, “From chess and atari to starcraft and
beyond: How game AI is driving the world of AI,” Künstliche
Intell., vol. 34, no. 1, pp. 7–17, 2020. [Online]. Available:
https://doi.org/10.1007/s13218-020-00647-w
[2] D. Silver, A. Huang, C. J. Maddison, A. Guez, L. Sifre, G. Van
Den Driessche, J. Schrittwieser, I. Antonoglou, V. Panneershelvam,
M. Lanctot et al., “Mastering the game of go with deep neural networks
and tree search,” nature, vol. 529, no. 7587, p. 484, 2016.
[3] O. Vinyals, I. Babuschkin, W. Czarnecki, M. Mathieu, A. Dudzik,
J. Chung, D. Choi, R. Powell, T. Ewalds, P. Georgiev, J. Oh, D. Horgan,
M. Kroiss, I. Danihelka, A. Huang, L. Sifre, T. Cai, J. Agapiou,
M. Jaderberg, and D. Silver, “Grandmaster level in starcraft ii using
multi-agent reinforcement learning,” Nature, vol. 575, 11 2019.
[4] M. Asada and O. von Stryk, “Scientific and technological challenges
in robocup,” Annual Review of Control, Robotics, and Autonomous
Systems, vol. 3, no. 1, pp. 441–471, 2020. [Online]. Available:
https://doi.org/10.1146/annurev-control-100719-064806
[5] J. Raiman, S. Zhang, and F. Wolski, “Long-term planning and situational
awareness in openai five,” 2019.
[6] B. Baker, I. Kanitscheider, T. Markov, Y. Wu, G. Powell, B. McGrew,
and I. Mordatch, “Emergent tool use from multi-agent autocurricula,”
2019.
[7] S. Liu, G. Lever, J. Merel, S. Tunyasuvunakool, N. Heess, and
T. Graepel, “Emergent coordination through competition,” in 7th
International Conference on Learning Representations, ICLR 2019,
New Orleans, LA, USA, May 6-9, 2019. OpenReview.net, 2019.
[Online]. Available: https://openreview.net/forum?id=BkG8sjR5Km
[8] G. Andrienko, N. Andrienko, G. Budziak, J. Dykes, G. Fuchs,
T. von Landesberger, and H. Weber, “Visual analysis of pressure in
football,” Data Mining and Knowledge Discovery, vol. 31, no. 6, pp.
1793–1839, nov 2017. [Online]. Available: http://link.springer.com/10.
1007/s10618-017-0513-2
[9] Y. Verhoeven, “Team Behavior of Artificial Intelligence Bots in Games,”
Master’s thesis, Rijksuniversiteit Groningen, Westfälische WilhelmsUniversität, Münster, Germany, 2020.
[10] R. Thawonmas, J. Togelius, and G. N. Yannakakis, “Artificial
General Intelligence in Games : Where Play Meets Design and
User Experience,” in NII Shonan Meeting, no. 130, 2019. [Online].
Available: https://shonan.nii.ac.jp/seminars/130/
[11] U. Brefeld, J. Lasek, and S. Mair, “Probabilistic movement models
and zones of control,” Machine Learning, vol. 108, no. 1, pp.
127–147, jan 2019. [Online]. Available: http://link.springer.com/10.
1007/s10994-018-5725-1
[12] H. Xie, “Achieving Human-Level Results in a Physics-Based Game
Environment Using Reinforcement Learning in Rocket League,” vol. 0,
pp. 1–10, 2019.
[13] M. Clements and D. Polani, “Empowerment as a generic utility
function for agents in a simple team sport simulation,” in Lecture
Notes in Computer Science (including subseries Lecture Notes in
Artificial Intelligence and Lecture Notes in Bioinformatics), vol.
10459 LNAI. Springer, Cham, 2017, pp. 37–49. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-66471-2 5
[14] R. Rein and D. Memmert, “Big data and tactical analysis in elite
soccer: future challenges and opportunities for sports science,” p.
1410, dec 2016. [Online]. Available: http://springerplus.springeropen.
com/articles/10.1186/s40064-016-3108-2
[15] P. Lucey, D. Oliver, P. Carr, J. Roth, and I. Matthews, “Assessing team
strategy using spatiotemporal data,” in Proceedings of the ACM SIGKDD
International Conference on Knowledge Discovery and Data Mining,
vol. Part F1288. Association for Computing Machinery, aug 2013, pp.
1366–1374.
[16] A. Bialkowski, P. Lucey, P. Carr, Y. Yue, S. Sridharan, and I. Matthews,
“Large-Scale Analysis of Soccer Matches Using Spatiotemporal Tracking Data,” in Proceedings - IEEE International Conference on Data
Mining, ICDM, vol. 2015-Janua, no. January. Institute of Electrical
and Electronics Engineers Inc., jan 2014, pp. 725–730.
[17] T. Taki, J. ichi Hasegawa, and T. Fukumura, “Development of motion
analysis system for quantitative evaluation of teamwork in soccer
games,” in IEEE International Conference on Image Processing, vol. 3.
IEEE, 1996, pp. 815–818.
[18] T. Taki and J. ichi Hasegawa, “Visualization of dominant region in
team games and its application to teamwork analysis,” in Proceedings
of Computer Graphics International Conference, CGI. IEEE, 2000, pp.
227–235.
[19] A. Fujimura and K. Sugihara, “Geometric analysis and quantitative
evaluation of sport teamwork,” Systems and Computers in Japan, vol. 36,
no. 6, pp. 49–58, jun 2005.
[20] J. Gudmundsson and T. Wolle, “Football analysis using spatio-temporal
tools,” Computers, Environment and Urban Systems, vol. 47, pp. 16–27,
2014.
[21] Z. Chen, H. Zhang, D. Guo, S. Jia, X. Fang, Z. Huang, Y. Wang,
P. Hu, L. Wen, L. Chen, Z. Li, and R. Xiong, “Champion Team
Paper: Dynamic Passing-Shooting Algorithm Based on CUDA of The
RoboCup SSL 2019 Champion,” Robocup 2019: Robot World Cup
XXI, pp. 479–490, 2019. [Online]. Available: http://link.springer.com/
10.1007/978-3-030-35699-6 39http://arxiv.org/abs/1909.07717
[22] J. A. Iglesias, A. Ledezma, and A. Sanchis, “Opponent Modeling
in RoboCup Soccer Simulation,” in Advances in Physical Agents.
WAF 2018. Advances in Intelligent Systems and Computing, vol
855. Springer, Cham, nov 2019, pp. 303–316. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-99885-5 21
[23] A. S. Larik and S. Haider, “Opponent classification in robot soccer,”
in Lecture Notes in Computer Science (including subseries Lecture
Notes in Artificial Intelligence and Lecture Notes in Bioinformatics),
vol. 9101. Springer, Cham, 2015, pp. 478–487. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-19066-2 46
[24] M. Shvo, S. Sohrabi, and S. A. McIlraith, “An AI planning-based
approach to the multi-agent plan recognition problem,” in Lecture
Notes in Computer Science (including subseries Lecture Notes in
Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 10832
LNAI. Springer, Cham, 2018, pp. 253–258. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-89656-4 23
[25] R. Evertsz, J. Thangarajah, and M. Papasimeon, “The conceptual
modelling of dynamic teams for autonomous systems,” in Lecture
Notes in Computer Science (including subseries Lecture Notes in
Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 10650
LNCS. Springer, Cham, nov 2017, pp. 311–324. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-69904-2 25
[26] S. I. Cannon-Bowers, J. A. Tannenbaum, E. Salas, and C. E. Volpe,
“Defining competencies and establishing team training requirements,”
in Team effectiveness and decision making in organizations.
San
Francisco, CA: Jossey-Bass, 1995, pp. 333–380.
[27] C. Pons Lelardeux, D. Panzoli, V. Lubrano, V. Minville, P. Lagarrigue,
and J. P. Jessel, “Communication system and team situation awareness
in a multiplayer real-time learning environment: application to a
virtual operating room,” Visual Computer, vol. 33, no. 4, pp. 489–
515, apr 2017. [Online]. Available: http://link.springer.com/10.1007/
s00371-016-1280-6
[28] K. E. Schaefer, B. S. Perelman, R. W. Brewer, J. L. Wright, N. Roy,
and D. Aksaray, “Quantifying human decision-making: Implications
for bidirectional communication in human-robot teams,” in Lecture
Notes in Computer Science (including subseries Lecture Notes in
Artificial Intelligence and Lecture Notes in Bioinformatics), vol. 10909
LNCS. Springer, Cham, jul 2018, pp. 361–379. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-91581-4 27
View publication stats
[29] A. R. Marathe, K. E. Schaefer, A. W. Evans, and J. S. Metcalfe,
“Bidirectional communication for effective human-agent teaming,” in
Lecture Notes in Computer Science (including subseries Lecture Notes
in Artificial Intelligence and Lecture Notes in Bioinformatics), vol.
10909 LNCS. Springer, Cham, jul 2018, pp. 338–350. [Online].
Available: http://link.springer.com/10.1007/978-3-319-91581-4 25
[30] S. Li, W. Sun, and T. Miller, “Communication in human-agent teams for
tasks with joint action,” in Lecture Notes in Computer Science (including
subseries Lecture Notes in Artificial Intelligence and Lecture Notes in
Bioinformatics), vol. 9628. Springer Verlag, 2016, pp. 224–241.
[31] F. Gao, M. L. Cummings, and E. Solovey, “Designing for robust and
effective teamwork in human-agent teams,” in Robust Intelligence and
Trust in Autonomous Systems. Springer US, jan 2016, pp. 167–190.
[32] K. Gillespie, M. W. Floyd, M. Molineaux, S. S. Vattam, and D. W.
Aha, “Semantic classification of utterances in a language-driven game,”
in Communications in Computer and Information Science, vol. 705.
Springer Verlag, 2017, pp. 116–129.
[33] M. Zuparic, V. Jauregui, M. Prokopenko, and Y. Yue, “Quantifying
the impact of communication on performance in multi-agent teams,”
Artificial Life and Robotics, vol. 22, no. 3, pp. 357–373, sep 2017.
[34] P. MacAlpine and P. Stone, “Evaluating Ad Hoc Teamwork Performance
in Drop-In Player Challenges,” in Lecture Notes in Computer Science
(including subseries Lecture Notes in Artificial Intelligence and Lecture
Notes in Bioinformatics), vol. 10642 LNAI. Springer Verlag, 2017, pp.
168–186.
[35] D. Budden, P. Wang, O. Obst, and M. Prokopenko, “Simulation
leagues: Analysis of competition formats,” in Lecture Notes in Artificial
Intelligence (Subseries of Lecture Notes in Computer Science), vol.
8992. Springer, Cham, 2015, pp. 183–194. [Online]. Available:
http://link.springer.com/10.1007/978-3-319-18615-3 15
Download