ShahedTech 2D Soccer Simulation
Team Description Paper
1
Saman Ismael, 2Mohammad Nourinick
Computer Science and RoboCup Department
Shahed University of Iran – Tehran
1
saman@iranrobocup.com, 2enourinic@gmail.com
Abstract. This paper describes main skills of ShahedTech 2010 2D soccer
simulation team, The ShahedTech 2D Soccer Simulation Team was founded by
joining two students in 2008 by Shahed University, In past, we have to runnerup of ChinaOpen2007, 4th of ChinaOpen2009, 5th and 8th of Khwarizmi Robotic
National Competitions in 2008 and 2009, 3rd in Guilan Province Competitions,
and took participated in IranOpen 2008, 2009, and PRIMA RoboCup Games
2009.
1
Introduction
In this following year, we have focused on Fuzzy algorithms and developed our
researches on a new pass algorithm that is described in continue of this article. The
Helios2008 used as base code that is developed by Dr. Hidehisa Akiyama.
The complete version of TDP, complete formulas and some algorithms that
implemented are available on this url: http://shahedtech.xfpron.net
2
Use of fuzzy controllers in a shooting position on the goal
Fuzzy controller can be understood in the same sense as the decision-making
mechanism [2]. In a situation of shooting goal way to the low-level decisions, where
the agent does not decide the choice of actions to be made, but how has selected a
particular action performed. In our case, the regulator controlled the direction of the
kick to goal, so with utmost confidence he can goal.
2.1
Overview of implementation of fuzzy controller
The fuzzy controller consists 4 classes that there we show an summery of three of
them, fuzzygroup that represent that linguistic values and keeps the interval
boundaries and defined number of samples, fuzzy class that represents the value of
linguistic variable is defined fuzzy sets, fuzzyObj that represent the fuzzy controller
as itself it provides an interface for creating input and output variable to define value.
2.2
The method works with fuzzy controller
For correct work of the fuzzy controller, needs to be done the following sequence
of steps. Ranking steps between the levels defining linguistic variables, the values of
variables and rules are being observed.
1. Defining the input linguistic variables.
2. Defining the output linguistic variables.
3. Defining values for the input linguistic variables.
4. Defining values for the output linguistic variables.
5. Create rules.
6. Using the regulator.
2.3
Draft rules of characteristic functions and controller for shoot attacking
player on goal defended by goalkeeper
We perceived position of all objects in their environment in a global coordinates.
World model of player transforms all positions of objects in the environment to
coordinate system shown in Figure 1. Match always right, hence the positive direction
of axis x. This means that the characteristic features the linguistic variables that
describe the position of the goalie to the goal and player respect goalie can be
constant.
Figure 1 – Coordinate system
expecting the position to the right
opponent's goal
Attacking player through world
model, determine the position and
width of the opponent's goal WIDTH_GOAL. Point center of
opponent's goal has coordinates
[(LENGTH_OF_FIELD / 2), 0], If
WIDTH_GOAL goal width, then the corresponding coordinates of the right,
respectively. Goals are left rod PT = [(LENGTH_OF_FIELD / 2), (WIDTH_GOAL /
2)] and LT = (LENGTH_OF_FIELD / 2) If a player want to shoot the ball, so that the
ball went over the goal line opponent's goal, then calling the function to kickoff, the
parameter is the target point arrows and balls specified co-ordinate
[(LENGTH_OF_FIELD / 2), CBy], CBy where is interval coordinates goal line to the
y-axis In determining the location of target point shoots at hooking the ball a player is
considering two parameters:
● Current location to the position of goalkeeper goal,
● Players current positions against the goalie.
These parameters constitute the premise for the rules of fuzzy controllers, resulting in
the player kick the ball into the area potentially exposed in the goal. The draft rules,
the regulator was therefore necessary to input three linguistic variables:
POSITION_GOALKEEPER, PLAYER_POSITION_GOALKEEPER and shot. The
entire range of coordinates for the y-axis from the left rod (LT) on the right rod (PT)
on the y coordinate is mapped to an open interval of real numbers <-1.1>, while
above this interval were also defined all the characteristic features of the above
linguistic variables. Hence, if the current coordinate position of goalkeeper By the yaxis, coordinate of the left rod goal is the LT Gymin coordinates right rod goal is the PT
Gymax and width of course is LATITUDE_FIELDS then current goalie ordinate
positions on the y-axis - By show the required interval <-1 , 1> using the following
equation [Equation 4] :
Equation 1 - Transformation of coordinates for the position of goalkeeper
position linguistic variables (SI - field width)
Where B's ∈ <-1.1>.
Characteristic features of a determined current position with attention to the goalie
position goal point (POSITION_GOALKEEPER,) we defined by two 4-point
trapezium and one function of the type left and right. These functions are specified in
Figure 3.
Figure 2
Point 0 corresponds to the center point of the opponent's goal specified by the
coordinates [(LENGTH_OF_FIELD / 2), 0]. All other points correspond to the view
of the world defined in equation 4, In this respect, we see that the actual coordinates
on the y-axis position goalkeeper is always appear correctly in the world model of
who are defined as characteristic features of linguistic variable
POSITION_GOALKEEPER. Location attacking player against the opponent goalie
expressed PLAYER_POSITION_GOALKEEPER linguistic variable. Coordinate y
position player (Hy) was also transformed into the desired interval <-1.1> under a
similar equation as the equation defined in Figure 4, In this case, the variable would
be replaced with variable Hy. Point 0 also correspond width of goal. The
corresponding characteristic functions are specified by the chart in Figure 4.
Figure 3 - Characteristic features current position with regard to player goalie
Location of the target point of a lot of balls in the goal (represented by the
linguistic variable shot) was also defined at the same method as the previous function.
Characteristic features of this linguistic variable are specified in Figure 4.
Figure 4 - The characteristic features of the target point a lot of balls in the goal
2.4
Draft rules of fuzzy controller
Given variables defined expressions, rules of fuzzy controller with two distinctive
features
premise
for
linguistic
variables
POSITION_GOALKEEPER
PLAYER_POSITION_GOALKEEPER. The output is an appropriate target location
determined by a lot of balls definition of the characteristic features of linguistic
variable shoot. In our implementation of a set of rules contains 12 objects. The
behavior of the regulator is thus determined rules defined Table 1.
GOALKEEPRES
GOALKEEPR S
LITTLE LEFT
GOALKEEPR S
LITTLE RIGHT
LEFT
GOALKEEPRE
S RIGHT
LEFT_OF_GOALKEEPRES
KICK_EX_LEFT
KICK_EX_LEFT
KICK_LEFT
GOALKEEPRES_TOME
KICK_RIGHT
KICK_EX_RIGHT
KICK_EX_LEFT
KICK_LEFT
TO_THE_RIGHT_OF_GOALKE
KICK_RIGHT
KICK_RIGHT
KICK_EX_RIGH
KICK_EX_LEF
T
T
EPRES
Table 1
KICK_LEFT
Composition is defined as the unification of sets. In the process defuzzycation - y
coordinates to determine the location of the target point a lot of balls in the goal
(CBy); we used the method of center of gravity.
2.5
Testing the use of fuzzy controller for shooting at the goal
Statistics were first recorded to the player without the use of fuzzy controllers, who
dug at random distances up to 20% of the total goal width to either the left or right rod
[Table 2]. Consequently, the statistics were done for the player with the fuzzy
controller [Table 3].
In free space goal
The goalie
Beside the goal (and rod)
Goals of the total number
of shoots at the goal
51%
36%
13%
14%
Table 2 - Digging for the goal with random rod to which the kick
In free space goal
The goalie
Beside the goal (and rod)
78%
11%
11%
Goals of the total number
of shoots at the goal
24%
Table 3 - Digging for the goal to the choice of direction arrows using fuzzy
controller
2
Pass
This function is under implementation and now it not used in source code of team,
and if we can qualify in RoboCup 2010 we try to continue it on fuzzy methods.
2.2 Goal Pass
In goal pass, have to check this term. First we find the
players that now can goal the ball by current player (player
that can kick ball) then we have to find out who is best
player for pass. The player draw a cone from him to each of
the players that can kick to goal the half of tangent of this cone direction is division of
time of the ball after kick to player receives it and distance of current player to him.
The formula of the direction is come
in below:
Figure 5 – Moving the player to
get the pass
In Figure 5 the small circle is ball and has not constant decay and the big one is
player and has constant velocity. As we know in this picture the ball movement
equality is ∆X1 so ball is following that line and player that move on horizontal line
have same conditions. It means that movement equality and movement line will ∆X2
we want to know with which direction we should kick the ball that the player who
move on horizontal line can get it immediately advantage of this formula ,first it has
more accuracy and the second is it has less arguments. Known in this problem is
∆X1, ∆X2, d, L, V (player speed) and β. In this formula t is time of the player s get to
receive the ball,. We draw around the teammate player a circle with radius that equal
to t and center of the circle is this player and this place checked for opponent players.
Equation 2
3.
Future Research Program
In this paper we have simply described some main features of ShahedTech team. Also
we want to continue on complete the algorithm of pass on fuzzy models and using
ARTMAP on positioning behavior.
References
1.
2.
BOER, Remeco de, KOK Jelle, The International Development of a Synthetic MultiAgent System: The UvA Trilearn 2001 Robotic Soccer simulation Team,
Amsterdam, Faculty of Science University of Amsterdam , Master Thesis. 2002
ŠOLTYS
Jozef,
Fuzzy
regulátor,
1996,
http://www.aicit.sk/source/publications/thesis/master_thesis/1996/soltys/html/node12
.html