Abstract With the development of computer technology, the theory and application research of multi-agent systems (MAS Multi-agent System) in distributed artificial intelligence have become a hot spot in artificial intelligence research. RoboCup (Robot World Cup) , the Robot World Cup Football Championship, is a problem of studying multi-agent decision-making and cooperation in an asynchronous, noisy confrontation environment. This article introduces in detail the design and implementation of offense and defense in computer simulation football robot competition.
Keywords offense; organization; accuracy; speed; defense; flexibility
RoboCup (Robot World Cup), the Robot World Cup Football Championship. It is an international large-scale competition and academic activity held to improve the level of education and research in related fields. It promotes the research and development of distributed artificial intelligence, intelligent robotics, and related fields by providing a standard task. Training and manufacturing robots for football matches is one of the current research hotspots in the field of artificial intelligence and robotics. During the game, after the team's formation is determined, each player is assigned a corresponding role and begins to discuss the team's overall and local offensive and defensive tactics.
Full-team offensive tactics
Full-team offensive tactics refer to the coordination method used by one side to achieve the purpose of shooting through the passing and cooperation between players after getting the ball during the game. Compared with local offensive tactics, the whole team's offensive tactics have a wider range of attack, including participation in offense and quick counterattacks. There are mainly side attacks, center attacks, quick counterattacks, etc.
1. Side attack: The method of using areas on both sides of the court to launch an attack is called side attack. Wing attack is one of the main forms of the team's offensive tactics. Its main feature is that it is conducive to exerting offensive speed and breaking the opponent's defense to create gaps.
2. Central attack: The central attack is an attack organized in the middle area of ??the court. Although this attack can shoot directly, it is the most difficult because the central defense is the tightest and the forward attacker must be extremely responsive. Players who are keen, aware and skilled, willing to take risks, fast and good at positioning.
3. Quick counterattack: When the attacker attacks during a game, the back line often presses close to the midfield, and the number of defenders is relatively reduced due to the attack and assists. At this time, it is more convenient to seize the gaps in the opponent's defense zone. When Yamato is slow to return to defense, it can often achieve good results by launching a quick counterattack when it loses the ball. Quick counterattack is the most threatening offensive method and can effectively launch a quick counterattack. It can score effectively, but it is somewhat risky. Therefore, we must master the principle of accuracy and speed. Cooperation must be organized and have a tacit understanding, which requires multiple practices. Otherwise it would be difficult to implement in competition.
Team defensive tactics
Defensive tactics can be divided into two basic types: man-to-man pressing defense (man-to-man defense), that is, man-to-man pressing within a specified range , no exchange of guards: zone pressing defense (combination of marking and zone), that is, the popular comprehensive defense today, combining pressing and protection, pressing in one's defense zone, and alternating guards. In man-to-man defense, each player has a clear target to defend. The most fundamental principles of defense are pressing and protecting. Only pressing can effectively take the initiative to steal, suppress the opponent's technical advantages and gain the initiative: protection is to better press and control gaps, and prepare opportunities to win the game. Defense can be interpreted as a staged event. In the Tsinghua design team, it uses a type of strategic layout theory based on situations. The most important point of placement is in the basic formation, which determines a player's position through standard role assignments, ball position and ball control status. In this defense problem, basic information is provided as a standard, naming, a role that is the same as role assignment and task evaluation. Another important fact is positional flexibility in defence, this measures how dangerous an opponent is if he stands in a given position. Defensive positional flexibility because any point on the field is previously known among all teammates.
Four types of defensive actions:
1. Lock (obstruction): cross an opponent's possession of the ball on the outside of our goal and prevent him from advancing forward.
2. Press (pressure): run, when an opponent possesses the ball and is near our goal, remain a threat to him
3. Mark (marking): Focus on an opponent who does not have the ball, so his teammates cannot pass the ball to him
4. Point Defend (positional defense): Standing in a basic information position, this will be beneficial when a nearby A teammate fails in a 1vs1 or when the team regains control of the ball.
To simplify this problem, we set a rule that a defensive player cannot guard two opponents at the same time, and two defensive teammates should not guard the same opponent. This mutually exclusive operation is provided under the same conditions. This conflicting operation is not used here. There is an alternative there, that is, block and press are set to conflict, instead of mutual exclusion, providing a different defensive strategy. Therefore, the other one is also possible, and we will not discuss it further. After breaking down a defensive task into defending each offensive object, and standing on the basic information points, a schedule is generated by linking each defensive player to each sub-task. At that time, this procedure reaches the function of evaluating individuals.
We define an evaluation function for each type of action. These variables are used as inputs to each evaluation function: Intensity, which measures the time interval from the player's current position to the defensive position, Deviation, which measures the distance from the defensive point to the player's basic formation position, Threat, which is the flexibility of this defensive position The sexual rival's current position. The output of this function increases with threat and decreases with distance and departure. For point defense, only threats are used as input. In order to get the actual value of each function, we set up some typical scenarios, extract the input values ??from them, and then assign the output value to the function. This value is carefully loaded to preserve slight variations. In this way, a list of input and output data is generated.
In Tsinghua Design, they use BP network neural to encode the evaluation function. This list is generated to be used as a setting for training the neural network. After training, the networks are tested to ensure that they suit the requirements in the previous section, so the evaluation function is determined, but is still being improved by our team. The rest of the planning to a standard procedure is now above and requires no further discussion. It also leaves the production of a remediation plan. Sometimes the team fails to stay consistent. For example, when an opponent is positioned at the same distance from two defenders and at the same time. Point of formation. The two arrangements will have similar ratings and the two defensemen may conflict. Our design leverages this absolute feedback into the system. Because the ball will keep moving in this game, and the opponent must move forward to attack, additionally this basic information position or defensive point will change in the next cycle. There's a small change there that allows both arrangements to still hold the same rating. Once the two arrangements are different it's obvious enough for both defenders to tell the difference. The pre-defender will perform this defensive action, moving closer to the opponent. Then the other one will move in the other direction. Thus, the contrast increases and the system extracts a state separation from the previous dilemma. So consistency can be achieved again.
Implementation of defensive algorithm
1. Initial idea of ??defensive algorithm
Step 1: Find the position of the ball and update it in real time
Step 2: Determine whether the ball is within the kickable range:
If it is kickable, make corresponding actions based on your position, specifically:
If the free throw goes inside, Kick the ball out immediately and try to pass it to your teammates; if it is outside the penalty area, you can dribble the ball appropriately and send it to the midfield;
If it cannot be kicked, enter the third step;
p>
Step 3: Determine whether you have the responsibility to steal the ball:
If you do, then steal the ball without hesitation. Stealing the ball must also be divided into areas. In the penalty area, you must Run with all your strength to steal the ball. If there is a teammate behind you, you can consider tackling. If you are behind the offensive player (he has passed me), you should immediately tackle from behind;
If not, you need to assist in defense and enter the fourth step;
Step 4: Assist in defense. I think this step is the most difficult, because there are too many such situations, and now there are only a few general ones. Thought: We still need to divide the second half and adopt various mark strategies for each zone
Step 5: Adjust your position according to the formation
2. Implementation process of the defensive algorithm:
|-->If there is no kick-off:
| |-->If it is our own kick-off and the player is No. 9:
| | |- >If the ball is within the kickable range: then kick the ball out with maximum force;
| | |->If the ball cannot be kicked: then steal;
| |-->If If the current formation is not the initial formation or the actual position of the players deviates from the prescribed position of the formation (hereinafter referred to as the strategic position) by more than 1m: the initial formation will be imported and the players will directly move to their own strategic position;
| |-->If it is No. 7 or No. 8: Prepare to move to the kickto point of No. 9 and turn your head to the ball;
| |-->In other cases: Turn your body towards (0 , 0), and turn your head to the ball;
|-->If the ball has been kicked off: first introduce the defensive 433 formation,
| |-->If the ball information Not the latest: then search for the ball and turn your head to help find it;
| |-->If the ball is within kickable range:
| | |-->If within The player's own penalty area: Use maximum force to kick the ball out of the penalty area at a relatively safe angle;
| | |-->If it is 5m in front of you, the angle is (-80, 80) If there is an opponent player in the fan-shaped area: transfer the ball with maximum force, that is, ClearBall;
| | |-->If there is no player in the fan-shaped area 5m in front of you and the angle is (-80, 80) Opposing player: kick the ball out with little force;
| | |-->Others: dribble the ball forward;
| |-->If the player himself is The player among his teammates who can reach the ball the fastest, that is, the player himself is most responsible for intercepting the ball:
| | |-->If the ball is being taken towards the goal by the opponent:
| | | |-->If the distance between the player and the ball is less than 2.5m: then tackle;
| | | |-->Otherwise: accelerate towards the ball;
< p>| | |-->Otherwise: steal;| |-->If the player's current position deviates from his strategic position (1.5+(distance between the player and the ball)/10 .
0) m: Then adjust your position immediately;
| |-->If the player is in his own half: Then enter the mark state,
| | |-->If If the player is in his own penalty area: use the MARK_GOAL mark method (to prevent the player being defended from catching the ball and shooting);
| | |-->If the player is on both sides of his own penalty area: use the MARK_BISECTOR method mark method (preventing the player being defended from catching the ball and shooting);
| | |-->In other areas: use the mark method of MARK_BALL (preventing the player being defended from catching the ball) ;
| |-->If the relative angle between the player and the ball is greater than 1: turn his body to the ball and his head to the ball;
| |-->Other situations: Turn around (observe);
Note: The above process returns when encountering ";", gets a soc (command), and finally returns soc.
References
[1] Edited by Li Shi, Xu Xuming, Ye Zhen, and Sun Zengqi, "Review: International Robot Football Competition and Related Technologies", National Intelligent Technology, Department of Computer Science, Tsinghua University and Systems Key Laboratory, 1999.
[2] Sun Zengqi and Li Shi, "RoboCup and Intelligent Automation", Department of Computer Science and Technology, Tsinghua University, 1999.