IraNad Soccer 2D Simulation Team Description Paper 2022
Reza Aghayari, Shahrooz Shahbazy, Mohsen Iranmanesh, Amirhosein Nikfetrat
IraNad
Abstract In this paper, we will discuss goals, ideas, and algorithms used in the IraNad Soccer 2D simulation team and introduce our approaches towards improving the algorithms which we utilized and implemented in the team. In this paper, offense, defense algorithms, and the team strategy like shoot, goalie buddy and will be explained.
1 Introduction
IraNad Soccer 2D Simulation Team was established in 2021 due to our team members' hype during the last RoboCup. Although it was online, it carried a lot of emotions and hope. The main goal of the IraNad members is to apply the knowledge acquired by reading papers and attending the classes in the development of the 2D soccer Simulation. A lot of TDP reading, game observation, bases code studies, and soccer strategies were applied to improve accuracy in passing, kicking, man2man marking, decision-making, and other parts of the team. The IraNad's team code is based on cyrus14 released base, and all the team members' efforts were focused on learning and finding ideas by reading released papers, other teams' codes, and watching games.
2 Related Work
Soccer has been one of the most popular team-based sports globally since around 1860. Soccer is almost the oldest multi-player, real-time, strategic, and partially observable game in which players should cooperate to score more goals than their opponent. In addition to cooperating, players should manage different tactics and technical strategies against their different opponents. The world Cup Robot Soccer Initiative was founded to create a realistic environment similar to authentic soccer that encourages researchers to employ Robotic intelligence and AI for solving a wide range of problems. The first RoboCup was held in 1997 at the IJCAI-97 [1], and it offered three competition tracks: real robot league, software robots, and expert robot competition. Among them, the Soccer Simulation 2D league (SS2D) as one of the oldest leagues in RoboCup [2] provides a wide range of research challenges from network-based multi-agent interaction to individual decision making due to it does not have any physical blockage and being a simulation and inspired a lot of researchers to compute in SS2D each year. We have studied many papers and TDPs and worked hard in optimizing our code to improve the capabilities of offensive and defensive actions in total. Although many teams adapt agent2d-base released by the Helios team [3], we decided to check newer bases like Gliders2d [4] and Cyrus2D Release team code [5] to find more incredible ideas and a more leisurely start for our team. as Cyrus team is the current titleholder [6–9] and Helios Team has won four championships [10– 12], we started by reading these papers and moved on to other teams afterward. We found out a slight improvement over basic behaviors results in a considerable advantage overall from Perspolis[14], Razi[13] and Aras[15]. Osxy Team's ideas [16, 17] for offside trap gave us the idea to create a defense line breaker. FRA-United[18, 19] uses reinforcement learning [20] in brilliant ways in SS2D, which encouraged us to learn machine learning algorithms.
3.1 Shoot
We need to score to win. Moreover, to score more goals, we need more accurate shots that are more likely to score. To achieve this, we implemented a new shoot behavior consisting of three parts. one part calculates which part of the goal has a higher risk of missing due to the action and partial noise. The next part receives the last part calculations and evaluates each point by how likely the opponent goalie or players will intercept the shot. This part also considers the position count of the ball and opponents, which brings us to the Behind Score factor. A behind Score factor is a number that uses the goal difference and the game time. If we scored fewer goals than the opponent, it would help us shoot more by lowering the position count coefficient in the evaluation equation and vice versa. The last part will connect points that are close together, have a close validation score, find the most extensive continuous connected points, and returns the center point to the kicker for a shoot. The broader angle will be selected if we have two or more big areas of connected points with identical values.
3.2 Mark Breaker
There are a lot of great teams in the 2d soccer simulation league. Almost all of them have a very great defense. To create a goal situation, we need to move the ball forward and break the opponent's defense. Therefore developed an anti-mark agent behavior whose job is to run around and create distractions behind the opponent's defense line. As teams have different defense systems, each defense system's distraction pattern is unique. It statically increased our goal chance and granted us better positioning in trade-offing stamina on one or two players.
4.1 Goalie Buddy
In SS2D, there is much pressure on the goalie; opponents can easily make accurate kick that is more likely to score a goal if our goalie is in a wrong position which he can not reach and catch the ball. On the other hand, coordination between goalie and players is critical. In order to relieve the pressure on the goalie, we defined one of our defensive players as the buddy for the goalie. This buddy tries to match himself to the state and placement of the goalie. We defined different states and conditions when the ball was near our goal area. States contain other information like the number of opponents and teammates players in the area, angle of opponents kicker to the goal, and possible score points for opponents in goal. We categorized these states into three categories, less move, corner shot, and chaos mode. The first category is less move; in this kind of state, the goalie and his buddy divide the goal into two areas, find potential scoring points in both goal areas, and draw lines from the kicker to the goal points and goal poles to create some covering angles. After that goalie and his buddy divide these angles into three sub angles. Then the goalie stands perpendicular to opponents in the larger portion of the angle, and the buddy covers the reaming. A visual example of a buddy system is shown in Figure 1. The next mode occurred when the opponent got to shoot a corner; this mode is similar to the last one, but this time goalie covers the pole and middle of the goal, and buddy is covering the most dangerous opponent angle (the nearest with a broader angle towards the goal).
In the final mode or the chaos mode, the buddy decides to play as a goalie because the goalie is out of reach or in a wrong position and can not intervene in the goal until the goalie is back in it; the buddy stands in the larger portion further from goalie position.
this method helps us achieve a reduction in the average of received goals.
4.2 circle2man mark
Mark is a defensive behavior that some agents tend to stay between opponents and the kickable opponent, the one with the ball, so that player is unable to pass the ball to his other teammates. We developed a semi greedy algorithm for marking the opponent by drawing angled circles with a radius relative to each opponent's danger value according to his movements. This danger value is calculated from how far a player is from the goal, his angle, and a value represents how big his kickable area is; an example is shown in the fig 2. After sorting opponents by this danger point, the most dangerous opponent must have the smallest circle. Then, by calculating the distance of players inside that circle to the most dangerous opponent, the closest player inside the circle to that opponent would be selected as the marker of that opponent. The next closest player will be selected as marker-reserve. Suppose there is a circle without any defender in it. In that case, the algorithm goes back to the nearest circle with a maker-reserve player, switches the marker with marker-reserve, and recalculates the non-player circle. If there is still no player inside, the algorithm skips this circle. In the same way, the algorithm will be executed again and continued until there is no circle left except the skipped ones. If the skipped circles have a distance of more than 40 to the goal, the algorithm ends. Else for each circle within the 40 range of our goal, the none-marker players get sorted by distance to circles, and the closest player will be selected as a marker for that circle. Remains players who are not marking any opponent at the moment will be selected as marker-helpers if the distance of helpers closest marker to its opponent is more than the half radius of the opponent marking circle.
5 Results
This paper describes Iranad team approaches such as algorithm implementation and innovation in defense and offense strategy/ In order to show the effectiveness of the strategies series of computational experiments were conducted. The table below shows the summary 1.
6 Future Work
We intend to use neural networks and machine learning to lower the shoot processes, create an accurate multi-agent blocking system, and improve other behaviors such as passing and dribbling.
Table 1. The impact of different approaches on Iranad performance against base
| Approach | WinRate | Goal Avg | Goal Against |
|---|---|---|---|
| Offense Only | 70% | 2.72 | 2.28 |
| Defense Only | 76% | 1.52 | 1.08 |
| Total | 85% | 2.68 | 0.98 |
References
- Kitano, H., Asada, M., Kuniyoshi, Y., Noda, I., Osawa, E. (1997). RoboCup: The Robot World Cup Initiative. AGENTS '97.
- Kitano, H., Asada, M., Kuniyoshi, Y., Noda, I., Osawa, E., Matsubara, H.: RoboCup: A challenge problem for AI. In:AI magazine18.1 (1997), pp. 73–73.
- Akiyama, H., Nakashima, T.: Helios base: An open source package for the robocup soccer2d simulation. In:Robot Soccer World Cup. Springer. 2013, pp. 528–535.
- Prokopenko, M., Wang, P.: Gliders2d: Source Code Base for RoboCup 2D Soccer Simulation League. CoRR abs/1812.10202 (2018)
- Khayami, R., Zare, N., Karimi, M., Mahor, P., Afshar, A., Najafi, M. S., Asadi, M., Tekrar, F., Asali, E., Keshavarzi, A.: CYRUS 2D simulation team description paper 2014. In: RoboCup 2014. Joao Pessoa, Brazil, 2014.
- Zare, N., Sarvmaili, M., Mehrabian, O., Nikanjam, A., Khasteh, S.-H., Sayareh, A., Amini, O., Barahimi, B., Majidi, A., Mostajeran, A.: Cyrus 2D Simulation 2019. In:RoboCup(2019).
- Zare, N., Sayareh, A., Sarvmaili, M., Amini, O., Soares, A., Matwin, S.: CYRUS 2D Soccer Simulation Team Description Paper 2021. In: RoboCup 2021 Symposium and Competitions, Worldwide (2021)
- Zare, N., Sayareh, A., Sarvmaili, M., Amini, O., Matwin, S., Soares, A.: Engineering Features to Improve Pass Prediction in 2D Soccer Simulation Games. In: RoboCup 2021: Robot World Cup XXIV, Springer (2021)
- Zare, N., Amini, O., Sayareh, A., Sarvmaili, M., Firouzkouhi, A., Soares, A., Matwin, S.: Improving Dribbling, Passing, and Marking Actions in Soccer Simulation 2D Games Using Machine Learning. In: RoboCup 2021: Robot World Cup XXIV, Springer (2021)
- Akiyama, H., Nakashima, T., Fukushima, T., Zhong, J., Suzuki, Y., Ohori, A. (2019). HELIOS2018: RoboCup 2018 Soccer Simulation 2D League Champion. In RoboCup 2018: Robot World Cup XXII.
- Akiyama, H., Nakashima, T., Fukushima, T., Suzuki Y., Ohori, A.: HELIOS2019: Team Description Paper. In: RoboCup 2019 Symposium and Competitions. Australia, Sydney (2019).
- Yamaguchi, M., Kuga, R., Omori, H., Fukushima, T., Nakashima, T., Akiyama, H.: Helios2021: Team description paper. In: RoboCup 2021 Symposium and Competitions, Worldwide (2021)
- Noohpisheh, M., Shekarriz, M., Bordbar, A., Liaghat, M., Salimi, A., Borzoo, D., Zarei, A.: Razi Soccer 2D Simulation Team Description Paper 2019. In: RoboCup 2019 Symposium and Competitions: Team Description Papers. Sydney, Australia (2019).
- Noohpisheh, M., Shekarriz, M., Zaremehrjardi, F., Khademi Ardekani, F., Khorsand, S. A.: Persepolis Soccer 2D Simulation Team Description Paper 2021. In: RoboCup 2021 Symposium and Competitions: Team Description Papers. Worldwide (2021)
- Teimouri, M., Sadreddin, A., Moazen, M., Sadraii Rad, A.: ARAS Team Description Paper 2021. In: RoboCup 2021 Symposium and Competitions: Team Description Papers. Worldwide (2021)
- Marian, S., Luca, D., Sarac, B., Cotarlea, O.: OXSY 2018 Team Description. In: RoboCup 2018 Symposium and Competitions: Team Description Papers. Montreal, Canada (2018).
- Marian, S., Luca, D., Sarac, B., Cotarlea, O.: OXSY 2021 Team Description. In: RoboCup 2021 Symposium and Competitions: Team Description Papers. World-Wide (2021).
- Gabel, T., Sommer, F., Breuer, S., Godehardt, E.: FRA-UNIted–team description 2019. In: RoboCup 2019 Symposium and Competitions: Team Description Papers. Sydney, Australia (2019).
- Gabel, T., Kloppner, P., Eren, Y., Sommer, F., Breuer, S., Godehardt, E.: FRA-UNIted — Team Description 2021. In: RoboCup 2021 Symposium and Competitions, Worldwide (2021).
- Sutton, R.S., Barto, A.G.: Reinforcement Learning. An Introduction. MIT Press/A Bradford Book, Cambridge, USA (1998)