Comparing voronoi based multi-agent coverage maps to human soccer player data Rami Hamzey Boston University ME 570 - Robot Motion Planning [email protected] Abstract compared against voronoi diagrams derived from a gradient based controller [7]. These two seemingly differing ideas will be reconciled, the problem formulated, and then results shown to compare human team distribution to a voronoi diagram generated with the same number of players and using a cost optimization algorithm. Understanding how to use multiple robots to cover a map with changing environments has garnered attention in robotics and logistical planning literature, but no consensus approach has emerged. One avenue to gaining greater insight into this problem is to observe and learn from how humans and animals act in similar scenarios. The purpose of this paper is to understand coverage strategies used in a soccer game to enhance our understanding of possible approaches in robotics. Player coordinate data was used to develop a voronoi diagram during one half of a professional soccer match. Characteristics of the resulting voronoi diagrams were compared to a multi-agent coverage map using a gradient descent method on a cost function that is equivalent to a voronoi diagram. 1.1. Previous Work After the computer science field considered itself to have conquered the chess realm, soccer became one of the next avenues for developing artificial intelligence and robotics. Soccer is widely played and has simple objectives, but is also dynamic and continuous. This makes it an attractive paradigm for testing strategies that could eventually find their way into real-world applications. Two obvious avenues that exist for reviewing previous strategies for teambased defensive positioning are videogames and the annual RoboCup. Few specifics exist about the algorithms used in videogame artificial intelligence, but the academic spirit of the RoboCup offers a source of applied research in many aspects of robotics and artificial intelligence. Carnegie Mellon University, a consistent top performer in the RoboCup small-size league, describe an effective defensive strategy that uses a two-tier threat classification strategy based on the most likely shot position and available passing lanes [2]. This approach is effective for games with relatively few agents/players, and where a goal could be scored from any position on the field. It does not address a strategy for distributing the defensive agents to threats further down the line of importance. Secondly, it is difficult to predict how this strategy might expand to a full field of real-world soccer where a primary a threat might not be the player with the ball or even that players nearest pass. To address this strategy gap, we turn to multi-agent coverage algorithms, which aim to optimally distribute a group of robots/agents in a defined space. Frasca et al. describe an effective way to partition an open space into a Voronoi diagram [3]. In fact, many approaches exist that use Voronoi cells to solve the multi-agent coverage map problem [7, 1]. 1. Introduction One of the fruits of improved data processing capabilities is that deploying multi-agent robotic systems is now within reach. Understanding how to control these systems is an area of much potential and little consensus, mostly because the numerous environments and goal tasks one can imagine are nearly infinite. Additionally, the advent of computer vision and wearable technology is ushering in a more quantitative view of how animals interact with their environment. This phenomenon now gives us a waterfall of real-world data sets where we have usually been restrained to the lab. Sports player tracking data are becoming available and are a valuable resource to researchers looking to understand the dynamics of team-based interactions, because they are wellcontrolled, finite in time, and offer a variety of options for individual or group-based analyses. This paper aims to take advantage of a preexisting player and ball tracking data set from a professional Norwegian soccer team in order to understand team positioning and dynamics [6]. The real world player positioning will be 1 Okabe and Suzuki give a thorough summary of various formulations of facility placement optimization problems and approaches using Voronoi diagrams [5]. However, these do not specifically address strategies for dealing with dynamic environments where the position of a target may change. Novaes et al. examined continuous location optimization problems in transportation and logistics [4]. In their paper, both the problem space and demand points can vary. Lastly, while there are a variety of approaches to multiagent coverage optimization, Schwager et al. produced a unifying approach that uses a single, free parameter to adapt the same formulation between potential-based, probability based, and geometry based planners. This elegant approach will be implemented in this paper to solve the multi-robot deployment problem of soccer players distributing themselves on a field [7]. It remains to be seen how well the multitude of these approaches apply to humans and other animals, though some literature does exist on how wild animals establish territory in the wild. This is an interesting question, because sensing, computation, and communication are handled very differently in a biological context, not to mention a goal-directed task like a soccer game. Some analysis has been completed on soccer player distributions in futsal using Voronoi diagrams, but it has not been scaled to a full 11-player team, nor have the studied characteristics been implemented in a model or testing environment /citeFonseca. In this project the data from real-world player positions during a game will be plotted against an automated voronoi diagram and compared. Potential applications for this research go beyond recreation. For example, research in this realm could inform strategies that create coverage maps in dynamic environments, help coaches further develop their training philosophy, or inform strategies for city-wide pursuits, surveillance, and crowd control tasks. xb ) Figure 1. A visual representation of the importance function φ(x based on the ball location x b = (90, 15) i.e. the coordinates, in meters, of the ball from the origin as indicated at the nearest corner of the field in this view. The value of the function is 1 at the location of the ball, and drops off quadratically to 0 around the edges of the field. is available with this data set. Figure 1 shows an example of this function. The peak is the ball location, though a function could be written to add importance to either goal location as well. For the sake of simplicity only the ball position was taken into account in the importance function φ(pp). 3) Lastly, a ”mixing function,” gα dictates how mutiple players should act, assuming that they all have a full view of the field. In robotics, this would be analogous to all robots sensing some common event. n X α gα = (fdist,1 , ..., fdist,n ) = ( fdist,i )1/α where α represents a parameter that can be changed depending on the formulation. In this case, since our goal is a geometric voronoi diagram, α can be set arbitrarily low, as a true voronoi diagram results when α → −∞. For more information, see Schwager et al. In Eq. 2, the n cost functions represent the sum of cost functions for all players/robots on the field. Together, the importance function, the mixing function, and the distance these three pieces of information are combined to create a unifying cost of the players’ current formation on the field. The generalized cost function can be defined as follows: Z X n α Hα = ( fdist,i )1/α φ(pp)dpp (3) 1.2. Formulation of Robotic Voronoi-based distribution The following formulation has been adapted from Schwager et al. and adapted to fit this idea of controlling multiple robotic ”players” on a soccer field, that is 105 meters long and 68 meters wide. The origin of the 2d field plane (P ∈ R2 ), is at one of the corners of the field. In the authors’ unifying theory, a generalized cost function is formulated based on three different pieces of information regarding the positions of the players on the plane of the field: 1) The distance of each player, x p , from the ball, x b (in this case, a Euclidean norm on the plane: xp − x b k fdist = kx (2) i=1 P i=1 Now that we have a cost function integrated over the entire field, for each ”robotic” player, pi , we can take the derivative of the general cost function in order to use it as a controller for multiple players on the field, or the vector velocities of all players, P : (1) dHα (4) dP where k is a gain set by the user. To summarize, equation 4, gives the velocity vectors for each player in the field, so Ṗ = −k 2) a measure of importance of every point on the field. In this case, the measure of importance will be the location of the ball, since no information about opponent location 2 when these velocities reach near zero, the minimum cost (Eq. 3) associated with the current configuration of players, P has been reached. This brief formulation passes some intricacies that are well defined by Schwager et al., and the reader is encouraged to refer to that document. 2. Data Analysis 2.1. Source Data Figure 2. This figure represents the control velocities given to the player coordinates over time in meters per second after each iteration. The x-axis includes each iteration from 0 to 60. As the control velocity function iterates, the velocities decrease showing an approach toward stability for the player distributions. The source data was pulled from a preexisting data set published in 2014 at http://home.ifi.uio.no/ paalh/dataset/alfheim/. The data set was collected at 20 Hz and includes positioning, energy consumption, speed, heading, total distance covered, and other performance-related metrics for all players on the field during a single half of the game. In total, at least 8 players were on the field at a time, though in a regulation match there are 11 to start. No explanation was given as to why fewer players exist on the field, though they may have just not been wearing sensors. Based on the movements of the players during this time period, which can be seen at https://drive.google.com/open?id= 0B1tUq3tNASJJNk9FOFF3ak9lcHc the goalkeeper was not included in this dataset. 2.2. Data processing All data processing was completed using MATLAB 2015b with functions from the image processing toolbox. The real player data was downsampled to 1Hz and ball position was transformed from the given video pixel coordinates to (x,y) field location in meters using a homography estimate. This proved difficult and the resulting processed ball positions show jagged movement, likely due to noise introduced in the transformation. In total, roughly 39 minutes of data was collected. The player data was plotted and voronoi diagrams calculated using the voronoi.m and voronoin.m functions in matlab. These were plotted for the entire half of the game, as shown in the video in the url linked above. Once this data was processed, player positions based on the voronoi construction above was calculated using the players’ real data positions, and ball position as inputs into the gradientbased controller of the voronoi formulation from section 1.2 above. The controller function, Eq. 4, was allowed to iterate with this input data for 60 iterations, or until all control velocities reached below example was allowed to iterate until the control velocities each reached 60 iterations or all control velocities reached below 0.1 m/s. Qualitative comparisons were then made on the differring voronoi distributions that resulted from the real world data and the gradient-based iterative control method formulated above. Figure 3. Simulated player locations are given in Figure A after 60 iterations of the control algorithm Eq. 4. The ball is displayed in purple, and the players in light green. Note the difference from the real world player locations given in B. 3. Results Because the real-world data is incomplete and This threshold was not reached, but control velocities generally decreased asymptotically below 2 m/s before reaching 60 iterations. See Figure 2. The α level was set to -50. In Figure 3 one can see that the computer generated voronoi plot, after 60 iterations, and the real-world data do not agree. More work must be done to quantify this difference, though much of the time on this project was taken 3 during the data processing and formulation steps. Unfortunately, at this time, no quantitative results are available. The real world data proved very difficult to filter and transform to reach the appropriate format. [6] S. A. Pettersen, D. Johansen, H. Johansen, V. Berg-Johansen, V. R. Gaddam, A. Mortensen, R. Langseth, C. Griwodz, H. K. Stensland, and P. Halvorsen. Soccer video and player position dataset, 2014. Available at http://home.ifi.uio.no/ paalh/dataset/alfheim/. [7] M. Schwager, J.-J. Slotine, and D. Rus. Unifying Geometric, Probabilistic, and Potential Field Approaches to Multi-robot Coverage Control, pages 21–38. Springer Berlin Heidelberg, Berlin, Heidelberg, 2011. 4. Conclusions Based on the formulation determined by Schwager et al. the real world voronoi diagrams did not correlate after visual inspection. There are multiple reasons why this could have happened. The importance function could take into account more specific information about the field space, rather than just accounting for the ball location. For instance, if data were available on the opponents it might inform the importance function. Similarly, there must be a way for strategy to be quantified in this model. Defensive players like to keep compact, and future iterations of this algorithm could include zone limits based on the players furthest down the field, for which to bound the players (i.e. and offside line). Furthermore, which team has the ball is highly important in the distribution of the players on the field, as the attacking team generally will spread out more than the defending team. The computation time for 60 iterations was on the order of 10 minutes, so efficiency in the algorithm could be improved. Lastly, a lower α could be used in future versions of this paper to approach a true distribution based on voronoi diagrams. Overall, this was a challenging approach, and much work needs to be done to account for these strategic nuances and field distribution changes that occur over the course of a game. Much more study needs to be done on the data as well, so while the initial intent was to create a model, this paper represents a first step in visualizing real world data and comparing it to a player distribution constructed via a gradient descent algorithm. References [1] F. Aurenhammer and H. Edelsbrunner. An optimal algorithm for constructing the weighted voronoi diagram in the plane. Pattern Recognition, 17(2):251 – 257, 1984. [2] J. Biswas, J. P. Mendoza, D. Zhu, B. Choi, S. Klee, and M. Veloso. Opponent-driven planning and execution for pass, attack, and defense in a multi-robot soccer team, 2014. [3] P. Frasca, R. Carli, and F. Bullo. Multiagent coverage algorithms with gossip communication: Control systems on the space of partitions. In 2009 American Control Conference, pages 2228–2235, June 2009. [4] A. G. Novaes, J. S. de Cursi, A. C. da Silva, and J. C. Souza. Solving continuous locationdistricting problems with voronoi diagrams. Computers & Operations Research, 36(1):40 – 59, 2009. Part Special Issue: Operations Research Approaches for Disaster Recovery Planning. [5] A. Okabe and A. Suzuki. Locational optimization problems solved through voronoi diagrams. European Journal of Operational Research, 98(3):445 – 456, 1997. 4
© Copyright 2026 Paperzz