CSU_Yunlu Soccer Simulation Team Description Paper

Huizhao Wang, Weishan Huang, Li Liu, Jun Peng, Fu Jiang

School of Information Science and Engineering, Central South University, Changsha, Hunan Province, China


Abstract CSU_Yunlu 2D simulation team was established in 2002 and ranked the third place in the China Open 2002. We have been participating in RoboCup since 2002 and in the China Open 2011 we got the second place which was the best score. For the first 9 years, our team was been based on UVA, and has done much work. In 2011, we updated our bottom code for Agent2D and made a lot of improvement on the aspects in this program. In this paper, we briefly present the framework of CSU_Yunlu 2012 and our current research effort.

1. Introduction

CSU_Yunlu 2D emulation soccer team which was founded in 2002, participated in the RoboCup China Open that year and ranked the third. In 2004, we adopted UVA2D as base code. In the beginning, we used a dynamic role-based cooperation model and a decision algorithm based on the behavior of MAS, thus we have strong cooperation capabilities. We have ranked 7 in the China Open 2010. After updating the base code to agent2D, through our efforts, we became runner-up in the China Open 2011. After a new round of development, we decided to participate in the 2012 World RoboCup to exchange strategies and tactics.

2. Tactical system

Football game is nothing more than offense and defense, manufacturing shot and limit shot, and a space and time utilization by further analysis; the purpose of offense is to make full use of per unit of time and create space to shoot. The purpose of defense is to restrict the opponents to use and create space to shoot.

This is related to possession, which naturally increase the chance to offense and reduce the opportunity of the opponent. But the case that a match was completely controlled by one side is impossible, so the problem is how to limit the opponent's space and regain possession.

After we analyze the cases of losing ball in football, we found that the trick that our players nearby will intercept the ball has made a law in football nowadays, the interception is usually used for reducing the speed of opponents' attack--meaning to restrict opponents going forward, as well as passing the ball to the week area in defense. But it makes differences in other players' actions, which is reflected in the depth of retracement. The main purpose of defending is to restrict opponents moving into these areas, so the more we retrace the better protection on these areas we can get, and the less active-room opponents can obtain.

Technical and tactical system is a very important part in football match and the use of a team's technique and tactics besides the players' personal competencies will determine the team's performance. In the current football field there are mainly four technical and tactical systems, one of which is the strength-type tactics presented by England and Germany; tactics that demand offence and defense of the entire team represented by Holland; tactics represented by Italy for defense and fast-break; the last one of which is stood by the Latin American's ball controlling tactics. After we have thought about the difference of simulation and actual football, we decide to apply the tactics that offence and defense of the entire team, which is represented by Holland, to the new CSU_YUNLU. Without the ball, to protect the defensive area, the tactics that demand offence and defense of the entire team stress the overall pressure on the front court and start to compress the opponents' space on the ball. At the moment of losing the ball, the nearest player closes down and others induce the opponents to kick the ball to the area that avails to us, which is bound to approve the success rate of interception. After the practice of this tactic, we find that we will get the ball possession again through the quick interception after losing the ball so as to increase the chance to attack.

3. Offensive system

Next, we will introduce our new offensive system. Team CSU_Yunlu has always been based on UVA until 2011 when we changed our base-code into Agent2D. These two bottom layer codes are so different that we can't just reload our old code to Agent2D. So we have to extract our ideas from old CSU_YUNLU and apply it to the new one. All our efforts about offence are concluded as follows.

3.1 One Planning Model based on Cooperation.

This model is used to improve the active-speed of a single anent efficiency of MAS(Multiple Agent System).

Next, we explain the Planning Model based on Cooperation.

Planning strategy based on cooperation is an important problem-solving technique, that starting from the initial state of a specific problem, and searching for a behavior sequence until it reaches the target state. PMBC is aimed to solve problems together with multiple agent cooperation. PMBC architecture is a mapping from a given initial state to a particular program. For example, we have established a set of states S {s1, s2, s3, s4}, and a collection of strategies {p1, p2, p3, p4}, so their relationship can be described as s1-p1, s2,-p2-p3, s3, s4-p4. Once the current situation meet a state, appropriate strategy will be executed. Because of the high frequency of these states and we have assigned the appropriate high-level strategy, we can make a quick decision-making to enhance the operating efficiency of the entire multi-agent system. PMBC is basically a collection of a series of pre-determined actions, and we assigned a suitable pre-condition and terminal conditions for each action, which are executed only in the case of all pre-conditions are met. At the same time, once the existing state complied with all conditions of the termination, the action will terminate immediately. The entire cooperation is a combination of premise, action and terminal conditions.

3.2 Counter attack

When the counter attack turns up, the ball will reach the front court through the quick short passes, and the winger players run with the ball, then the winger players can choose to pass to him directly or firstly rolls the ball back then passes the ball to the players outflanked in the penalty if the outflanks players comes up.

Counter attack illustration (left)
Counter attack illustration (left)
Counter attack illustration (right)
Counter attack illustration (right)

3.3 Pass and shooting strategy based on position

Accurate situation analysis, rational planning and team work are indispensable. Here, players participating in the attack can be simply divided into two parts: ball control players and secondary attack players. Ball control players are the heart of the attack, the choices of whom will determine whether the attack will succeed or fail, and it's especially important to choose next action reasonably. Ball control players must enter the other forbidden zone initiatively, as well as drawing away the opponents so as to make chances for other players. The choice made by secondary attack players and their ability of handling chances makes huge effect on the score. If secondary attack players are good at finding neutral position of the other side and choosing right opportunity of positioning, they can match up with ball control players and accomplish the attack task successfully.

3.4 A new shot strategy

At last, we added a better shot strategy which is superior to original code of the CSU-Yunlu in the shot function. If the goalkeeper is far away from the goal, we use parallelogram shot method. We use three points namely the position of our striker, the position of their goalkeeper and the position of one side of the goalmouth construct a parallelogram, then shot to the forth point of the parallelogram. If the goalkeeper is near from the goal, using the limitations of goalkeeper's defense, the ball will be brought the area where is close from the goalmouth, and shot toward the other side of the goalkeeper.

3.5 Multi-agent cooperation planning approach

Since the underlying code we used has a good shot strategy based on formation, we optimize some formations and adopt new approaches to shot strategy based on the dynamic conversion of role. We use a multi-agent cooperation planning approach based on domain knowledge. Domain knowledge refers to the important issues or concepts in a specialized field, and the correlation between these issues and concepts. We defined a lot of states, and each state has their corresponding characteristics of property, namely, $F = {feature_1, feature_2,...}$. These states were the spatial location S, the speed V, and ball-related direction V. All players can act as a role which was defined in set R. We defined $r_i \in [0,1]$ as the value function of role to describe the extent of the players belonging to a role. For instance, the value of a player belonging to the vanguard is 0.7, so the player's main task is to choose the right time to shooting the current circumstances. In this way, each agent will be able to switch roles dynamically, thus the flexibility of multi-agent cooperation will be improved, and also has more practical significance.

3.6 Evaluation based on location

We have improved the evaluation mechanisms of the bottom layer code according to the original geographical division, and the use of inductive learning algorithm. By learning from examples, a method of inductive learning is presented, in which the weight changes dynamically in the evaluation system. This makes it available that we have a more flexible way in different games.

4.1 Sidewalks defense

We found the defensive of Agent2D is not good enough to stop the other players to dribble into the bottom line, according to which we changed the strategy of defensing. Firstly, we focus on the defense of two regions: BA_MinDefArea and BA_DribbleBlockArea according to the partition in the underlying; then we modified the defensive role, such as side_back, center_back and defensive_half. The main principle of our modification is to keep our winger defensive player close to the ball, and take different approaches dynamically according to the conditions of their own, the defensive player and the ball. We have added three files to make the whole system more pellucid: role_defensive_half_move.cpp, role_center_back_move.cpp, role_side_back_move.cpp(as well as their own. h files). Screenshot of the sidewalks defense as follows:

Screenshot of the sidewalks defense
Screenshot of the sidewalks defense

4.2 Function of interception

Through large amount of experiments, we found that intercept function in the underlying is not perfect, and not particularly effective for the ball intercept. So we improved the function of the original intercept, and propose a better interception strategy:

We selected the following four eigenvalues in designing the interception strategy: the distance between interception point and the opponents' goal ----S; the physical strength of the ball player after ran to intercept the ball ----sta; body towards of the players that run toward the interception point ----dir; the shortest distance between the opponents and the interception point ----MinDist. Through these eigenvalues, we establish interception function to calculate posVel value at each interception point, and posVel has the largest value interception points. The posVel calculation function is given as follows:

$$posVel = 1 - k1 \times (\frac{S}{baseS}) - k2 \times (\frac{dir}{180}) - k3 \times (\frac{sta}{4000}) - k4 \times (\frac{MinDist}{basMinDist})(1)$$

Among them, baseS is distance threshold which were taken as the pitch length of the diagonal; baseMinDist is shortest distance threshold, which is valued as 10 meters; k1, k2, k3 and k4 are weights for each eiganvalue, the weights can be dynamically adjusted according to the characteristics of their own team.

Save the interception point if we can intercept when using the simulation method to calculate, and then continue the simulation till the other side get the ball or have achieved the required number of simulation cycles; Lastly, the best interception point was elected from the candidate interception points by formulation (1).

4.3 Defensive strategy Based on the formation and anti-cooperation SBD (Strategy Based on Disorganization) strategy thinking.

Defensive model based on formations mainly applies to the software Fedit2 which is part of underlying development. With this software, you can directly modify the locations in formation in the basis of ball's location. SBD anti-collaboration strategy is a senior strategy to collapse organized collaboration of the rival in the race, so as to achieve the purpose that decrease the crisis in front of the gate and increase offensive opportunities for our players. This is a positive defense which aims to solve the defensive problems after the defender intercept, and has a strong adaptability.

Our team used SBDD (SBD for Defend) strategy when the ball is under our control. The strategy determines a fan-shaped area by inductive learning algorithm, and calculates OptDir according to the number of opponents in the region. When the number of opponents is greater than 2, our players will kick ball to OptDir vigorously, thus the current crisis greatly reduced.

Since the premise of SBDD application is the players of our side first will be able to control the ball, guard defense need to improve the skills of intercept.

Screenshot of the SBDD defensive strategy
Screenshot of the SBDD defensive strategy

5. Summary and Future Work

This paper described our recent research of CSU_Yunlu. Although we have improved a lot in recent years, there is more problems need to solve and large amount of aspects need to improve. In future, we will give more attention to MAS and Agent's Learning.

References

  1. Jun Peng, Chenyang Ding, Realization of formation strategy in RoboCup. The 2006 International Conference on Artificial Intelligence, 2006/6/26.
  2. Jun Peng, Min Wu, Rui Guo, Kuo-Chi Lin, Study of neural network disturbance learning and application in RoboCup. High Technology Letters, 13(2), pp 203-206, 2007.
  3. Master thesis, Chinese Academy of Sciences Institute of Automation. About Multi-robot based on improved learning algorithm for LCS,2010
  4. Xiaoping Chen,et al, Challenges in Research on Autonomous Robots, Communications of CCF, Vol.3,No.12,Dec,2007
  5. Jun Peng, Miao Liu, Min Wu, Xiaoyong Zhang, Kuo-Chi Lin, Multi-agent coordination method based on fuzzy Q-learning. The 7th World Congress on Intelligent Control and Automation, pp 5411-5416, 2008/6/25.
  6. Master thesis, Chinese Academy of Sciences Institute of Automation. About Multi-robot based on improved learning algorithm for LCS,2010.