KIKS Extended Team Description
for RoboCup 2024
Ryuto Tanaka1 , Daichi Miyajima1 , Hayato Mitsuda1 , Kazuaki Harada1 ,Mizuki Nonoyama1 , Futa Sato1 , Haru Niimi1 , Takahiro Miyauchi1 ,Chihiro Takanashi1 , Yuzuki Hachisuka1 , Chiaki Naito1 , Yota Dori1 ,Hirokazu Komatsu1,2 , and Toko Sugiura1
12Nat’l Inst. of Tech., Toyota College, 2-1 Eisei-cho, Toyota, Aichi 471-8525, Japan
Kindai University, 1 Takayaumenobe, Higashihiroshima, Hiroshima 739-2116, Japansugiura.toko@toyota.kosen-ac.jp,
URL: https://www.ee.toyota-ct.ac.jp/staff/sugi/RoboCup.html

Abstract. In this paper, we mainly describe the improvements andstudies of the software system of SSL Team KIKS, which will participate in RoboCup 2024 Eindhoven. We will introduce the improvementsof the educational board for new participants and the control results using IMU and current sensors. In addition, the eﬀectiveness of the robot’s
self-position estimation was veriﬁed using rotary encoders and a Local
Vision camera to support the Global Vision method. Furthermore, allmatches of the Div-A knock-out stage of RoboCup 2023 were analyzed.
Keywords: RoboCup, small size league, autonomous robot, global vision, engineering education

1

Introduction

Team KIKS has been continuing its eﬀorts to develop higher performance hardware and smarter AI systems. Currently, the team is mainly studying software
improvements to enhance the robots’ control performance. In another experiment, we used a Local Vision and encoders introduced last year to experimentwith motion control based on the robot’s own decisions, without using Global
Vision. On the other hand, minor changes will be made to the previous robots
and the number of robots will be increased for the 2024 competition. In addition, we analyze the RoboCup 2023 games and discuss the introduction of oﬀside
rules. The details of the experiments are described in each section.

2

Electrical system

This chapter describes the studies performed after the RoboCup 2023 regarding
the introduction of electronic circuits and sensors.

2

2.1

Ryuto Tanaka et al.

Development of educational boards for new participants

In recent years, the KIKS team has accepted students in the ﬁrst grade (15-16
years old) who have just graduated from junior high school. They usually do
not have suﬃcient knowledge of robotics and have never taken classes on it.
Therefore, after teaching them a series of theories about circuits and the characteristics of their elements, we provided them with educational boards equippedwith microcontroller boards and carried out basic education on circuits and embedded program development. The educational board provided was an original
developed by our team. Figure 1 and 2 show a photograph and a circuit diagram, respectively. The circuit diagram incorporates a current sensor with aboost chopper circuit and a diﬀerential ampliﬁer circuit to help deepen understanding of electronic circuits. In addition, a serial communication environmentthat can be realized with the F303K8, including UART and CAN, was also
implemented. Through this board, students can experience the development ofbasic embedded systems such as soldering chip components, reading analog sensors, controlling motors, and board-to-board communication. Furthermore, theﬁnal goal is to obtain basic and preliminary knowledge of electronic circuits andC programming, as well as debugging skills through these experiences.

Fig. 1. Actual educational circuit board

2.2

Fig. 2. Schematic diagram of educational circuit

Robot status indicator

The total elapsed time for HALT associate with Robot Substitution in all SSL
matches of RoboCup2023 was 296 minutes [1]. It was equivalent to approximately
12 % of the total match time. KIKS carried out Robot Substitution of 142 times,

KIKS Extended Team Description for RoboCup 2024

3

mainly to remove robots that had lost control due to poor communication or
to replace batteries. In order to make the match progression more smoothly,
it is necessary to quickly identify the robot with abnormalities and to reduce
the time required for substitution. Therefore, we introduced an indicator that
displays the robot’s status using a full-color LED shown in Fig. 3. Depending on
the robot’s status, the indicator lights up or blinks in several colors as shown in
Table 1.

Table 1. Color corresponding to the problem

Fig. 3. LED Indicatoron hull of the robot

Problem symptoms
None
Low battery
Communication Error (internal)
No connection for AI server

Color of IndicatorWhite
Purple
Green
Blue

3

Software system

3.1

Veriﬁcation of velocity estimation using encoder, IMU andcurrent sensors

Our robots are controlled by a target velocity sent from a server. By making therobot operate precisely in accordance with the target velocity, we can improve allof its movements, such as catching a ball or defensive performance of a goalie. At
present, however, KIKS robots are not able to follow their velocity with suﬃcientprecision. This is due to the fact that the only device used for the velocity
estimation is an encoder, which cannot recognize the inﬂuence of wheel slip andother factors, and thus cannot obtain the correct velocity. The new circuit board
developed two years ago [2] is equipped with an IMU to measure the accelerationof the robot (in three dimensions) and a current sensor to measure the phasecurrent of the motor, but these sensors have not been used in previous games.
In this section, we describe an improvement that uses these sensors for moreaccurate velocity estimation.
Evaluation of velocity-following performance In order to evaluate the velocity estimation performance of the proposed system, we compared the actual
velocity of the robot to a command velocity with that of previous system. The
command velocity was a trapezoidal velocity with an acceleration of 2m/s2 and amaximum velocity of 2m/s in the y- and x-directions, respectively, and the actual
velocity of a robot was measured from vision system. These results are shown in
Fig. 4(a)〜(b). The y-direction speeds shown in Fig.4(a) and (b) indicate thatboth the previous and proposed systems are able to follow the commanded velocity. For the acceleration situation, however, the proposed system is able to4

Ryuto Tanaka et al.

suﬃciently follow the given velocity command without delay, whereas the previous system follows the command with a delay. This is a result of the detection
and compensation of wheel slip during acceleration by the IMU in the proposedsystem. On the other hand, for the x-direction in Fig.4(c) and (d), the velocity
following performance of the previous system using only the encoder was signiﬁcantly lower. The actual motion of the robot was not straight forward, but
went around in a circle. In the proposed system, the acceleration following performance is slightly worse than that in the y-direction, but the velocity following
performance is almost there. One of the reasons why the characteristics in thex-direction are worse than those in the y-direction could be the slipping of thewheels. As shown in Fig. 5, the wheel arrangement of our robot is not symmetrical 45◦ in the front-back and left-right directions. In particular, movement inthe x-direction is more likely to cause slipping because the angle between theaxis of the wheel and the direction of movement is small. In addition, regarding
the x-direction, in the previous system, slipping occurs not only during acceleration, but also during constant velocity movement. The velocity estimation
performance at high velocity movement and in the x-direction, however, is not
suﬃcient due to constant slipping of the wheels. In the next section, velocity
following performance will be investigated.

(a) Proposed system (y-direction)(b) Previous system (y-direction)(c) Proposed system (x-direction)(d) Previous system (x-direction)

Fig. 4. Comparison for the velocity obtained from proposed and previous system.

KIKS Extended Team Description for RoboCup 2024

5

Fig. 5. Wheel conﬁguration of a robot

Evaluation of velocity-estimation performance To evaluate the performance of the Kalman ﬁlter for velocity estimation, we tried to estimate thevelocity in a proposed system at a higher velocity movement. The robot wasgiven trapezoidal velocity with an acceleration of 2.0 ms−2 and maximum velocity of 2 ms−1 and 3 ms−1 in the x- and y- directions, respectively, and theestimated velocity by the Kalman ﬁlter was compared with the velocity obtained
from the vision. These results are shown in Fig.6(a)〜(d).

(a) Command value 2m/s for x-direction(b) Command value 3m/s for x-direction(c) Command value 2m/s for y-direction(d) Command value 3m/s for y-direction

Fig. 6. Comparison for the velocity obtained from vision and estimation.

The results of Fig. 6 show that the estimated velocity and that obtained fromvision are in good agreement even at the higher velocity of 3 ms−1 . The esti-

6

Ryuto Tanaka et al.

mated velocity in the x-direction, on the other hand, tended to be faster thanthe velocity calculated from vision for the 3 ms−1 movement. As mentioned in
the previous section, this may be due to the inﬂuence of the motion characteristics in the x-direction caused by the robot’s wheel arrangement. Increasing slip
as the robot moves at higher velocity and exceeding the limits of the system’scompensation results in performance degradation. In order to precisely estimate
the velocity of x-directional movement, it is necessary to redesign the wheel arrangement (diﬃcult due to hardware limitations) and to develop a model thattakes into account steady-state current detection as soon as possible. At present,
however, when the proposed system is used in a game situation (with vision
feedback), it sometimes behaves poorly compared to the previous system. The
details of the reason for this are not known, but it is thought to be due to adecrease in response performance caused by the acceleration limitation introduced in the proposed system, and this is now being veriﬁed. Note that theboard and ﬁrmware (including the Kalman ﬁlter) used in the experiments are
publicly available on github[3]. A detailed explanation of the velocity control
method, including a mathematical model, is also available in Japanese on thegithub wiki[4].
3.2

Veriﬁcation of self-positioning control by robot

Global Vision (GV) system is very advantageous for tactical decision making
because it provides fast positional information of the ball and the opponent or
allied robots. On the other hand, it has the following problems.
– (1) Robot or ball may not be correctly recognized by GV– (2) There is a delay until the GV recognizes the robot and the velocity
command reaches the robot from the server.
– (3) Since the commands to the robot are transmitted wirelessly, noise superimposition or missing commands may occur.
When above problems occur, the control performance of the robot will be lower.
In this section, we describe the control using the robot’s odometry function (using an encoder attached on the motor) and a small local vision (LV) camera
mounted on the robot. The robot performs its self-position estimation and generates velocity commands, and a high precision motion control method using
only LV is investigated.
Veriﬁcation of the introduction of AMCL method AMCL (AdaptiveMonte Carlo Localization) is a method that estimates the current position as aprobability distribution based on the amount of movement, and derives the mostprobable position coordinates based on scan data from LiDAR (Light Detection
And Ranging) devices (e.g., distance to a wall) and map data. In this study,
the ROS2 (Robot Operating System 2) package nav2 amcl was used, and theparameter robot model type was executed as nav2 amcl::OmniMotionModel[5].
When using AMCL, it is necessary to provide information on the surrounding

KIKS Extended Team Description for RoboCup 2024

7

environment (presence of robots and walls) as a point group, and LiDAR (Light
Detection And Ranging) is normally used. In this study, however,an LV camera
is used, and the camera image must be converted to a point group. Since it isdeﬁned that the ﬁeld surface is green and the outer wall is black for color in
SSL [6], the images are ﬁltered and then edge detection is performed. All of
the detected edge pixels are converted into a plausible point group and use as
pseudo LiDAR scan data. In the experiment, the map data of the wall was given
to the robot in advance, and the robot was placed at a location away from theposition coordinates recognized inside the robot. Then, we veriﬁed whether the
robot could converge the position coordinates to the correct coordinates using
only the LV camera. No GV was used in this experiment.

(a) First step(b) Middle step(c) Final step
Fig. 7. Motion contol system

Results and discussion Figure 7(a)-(c) show the results of the experiment.
The white surface represents the ﬁeld, the black thick line indicates the actual
wall, and the white line indicates the position of the wall as perceived by the
LV camera. The red, green, and blue lines in each ﬁgure show the x-, y-, and zaxes from the origin, respectively. The gray lines represent vectors from the map
origin to the odometry origin and from the odometry origin to the robot position,
respectively. Figure 7(a) shows the initial state, i.e., that there is a gap between
the coordinate position recognized by LV and the actual (accurate) positionof the wall. This corresponds to the fact that the position coordinates including
errors due to odometry are recognized inside the robot. (b) shows how the actual
wall position and the wall position recognized inside the robot gradually matchby the wall recognition by LV and the correction process by AMCL. Finally, as
shown in (c), the actual wall position and the position recognized by the robot

8

Ryuto Tanaka et al.

matched and converged. As described above, it was shown that it is possible
to recognize accurate position coordinates inside the robot if corrections are
performed by AMCL while the wall is recognized by LV.
3.3

Evaluation of ball-following based on consensus control system

A Multi-Agent System (MAS) is a distributed system in which multiple autonomous robots communicate with each other[7],[8],[9]. MAS can be useful when
a centralized control system with a single server cannot support it, as in thecase of Vision Blackout in SSL. In this section, we describe a basic study on
ball-following control using consensus control, one of the MAS methods.
Mathematical model for ball-following control We consider a mathematical model for the ball-following control. Here, we assume that the positions of aball and a robot are located on a one-dimensional line. Let the positions of theball and the robot be x1 (t) ∈ R and x2 (t) ∈ R, respectively. The ball-following
model can be described by the following ordinary diﬀerential equations(ODEs):dx1 (t) = f (t) a.e. t ≥ 0,dtdx2 (t) = a21 (t)(x1 (t) − x2 (t)) + g(t)dt

(1)
a.e. t ≥ 0,

where a function f ∈ C([0, T ); R), T is a time, represents the behavior of the balland a function g ∈ C([0, T ); R) is the control input that the robot to track theball. A non-negative continuous function a21 : [0, T ) → R≥0 is a weight coeﬃcientof communication between the robot and the ball. The robot obtains the positionof the ball through this communication. Here, we impose the following condition
for the coeﬃcient a21 (t),0 ≤ m21 ≤ a21 (t) ≤ M21 .

(2)

We consider a condition for the control input g(t) that the robot to reach theball at a time T > 0. Mathematically speaking, for any time t ≥ 0 there is acontrol input g(t) such that the limit holds,
lim |x1 (t) − x2 (t)| = 0.

t→T

(3)

We obtain the following theorem with respect to the condition for the control
input.
Theorem1. For any function f ∈ C([0, T ); R) and a21 ∈ C([0, T ); R) satisfying
the condition(2), and for any initial value x1 (0), x2 (0) ∈ R, the limit(3) holds
if and only if the control input g ∈ C([0, T ); R) satisﬁes the following condition,
Z t ∫
s
(4)
lim x1 (0) − x2 (0) +e 0 a21 (u)du (f (s) − g(s))ds = 0.
t→T0KIKS Extended Team Description for RoboCup 2024

9

For example, we can ﬁnd one of the control inputs∫te− 0 a21 (s)ds
gc (t) = f (t) +(x1 (0) − x2 (0)).
T(5)

Optimal control As we saw in the previous subsection, many control inputs
satisfy the condition(4). Hence, we need to ﬁnd an optimal control input for the
robot to track the ball. That is, the control input has to minimize the sum of
the distance between the robot and the ball on the interval [0, T ].
Here, we consider a control input that minimizes the following cost function J
along solutions to Eq.(1):2Z T  Z t
1
1 2
J[x2 , f, g] =f (s)ds + x1 (0) − x2 (t) + g (t) dt.
(6)
2
2
0
0
Let the optimal control input and the optimal solution be denoted by g ∗ (t) andx∗ (t), respectively. Then, g ∗ (t) and x∗ (t) satisfy the following conditions called
Pontryagin’s Minimum Principle[10]:dd ∗x (t) =
H(t, x∗ (t), g ∗ (t), λ∗ (t)),
dt
dλ∗
d ∗
d
λ (t) = − ∗ H(t, x∗ (t), g ∗ (t), λ∗ (t)),
dtdx
H(t, x∗ (t), g ∗ (t), λ∗ (t)) = min H(t, x∗ (t), g, λ∗ (t)),
g∈G

(7a)
(7b)
(7c)

where G is the subset of the control inputs satisﬁng the condition(4), and λ∗ (t)is the optimal Lagrange multiplier. Moreover, a Hamiltonian H is deﬁned asfollows:
Z t
2
1
1
H(t, x2 (t), g(t), λ(t)) =f (s)ds + x1 (0) − x2 (t) + g 2 (t)
2
2
0

(8)
Z t

+ λ(t) a21 (t)f (s)ds + x1 (0) − x2 (t) + g(t) ,0where λ(t) is the Lagrange multiplier.
Applying Eq.(7) to the above H, we obtain the following equations:Z tdx2 (t) = a21 (t)f (s)ds + x1 (0) − x2 (t) + g(t),
dt
0
Z t
d
λ(t) =
f (s)ds + x1 (0) − x2 (t) + a21 (t)λ(t),dt
0g(t) + λ(t) = 0.

(9a)
(9b)
(9c)

Therefore by solving Eqs.(9a)-(9c), it is possible to construct the optimal control
input based on the cost function Eq.(6). We put the optimal control input g(t)as go (t) satisfying Eqs.(9a)-(9c).

10Ryuto Tanaka et al.

Numerical simulation We will numerically evaluate a ball-following performance of the robot by applying the result above. In order to consider a realsituation in soccer games, we extend the result on the 2D plane. We deﬁne
the positions of a ball and the robot by the vectors x1 (t) = [x1 (t), y1 (t)]Tand x2 (t) = [x2 (t), y2 (t)]T , respectively. The ball-following model can be alsopresented as the ODEs (Eq.(1)) on 2D plane, where the behavior of a ball isf (t) = [fx (t), fy (t)]T , and the control input is g(t) = [gx (t), gy (t)]T . Moreover,
we assume that a21 (t) ≡ 1.
In case of 2D plane, we obtain the following control input in the same way as
Eq.(5):# "−tgcx (t)fx (t) + eT (x1 (0) − x2 (0))
gc (t) :=
=
.
(10)
−t
gcy (t)fy (t) + eT (y1 (0) − y2 (0))
Moreover, we deﬁne the optimal control input go (t) = [gox (t), goy (t)]T , whichgox (t)(resp. goy (t)) minimizes the cost function J[x2 , fx , gox ](resp. J[y2 , fy , goy ])along the solutions to Eqs.(9a)-(9c) with regarding to x2 (t)(resp. y2 (t)). We canobtain the optimal control gox (t) as follows,√√√gox (t) =( 2 + 1)(e 2t (F1x (t) + C1x ) − e− 2t (F2x (t) − C2x ))
Z t

√
√
2t d
− 2t dF1 (t) + e
F2 (t) −+ef (s)ds + x1 (0) ,
dt x
dt x
0

(11)

where,Z t√

e− 2s (fx (s) − 2x1 (s))√
ds,
F1x (t) =2 2
0√

C 1x =

Z t√

e 2s (fx (s) − 2x1 (s))√
F2x (t) =
ds,
2 2
0
√

√

e− 2T (x2 (0) − F1 (0) + F2 (0)) + x2 (T ) − e 2T F1 (T ) + e− 2T F2 (T )
√

√

√

√

e 2T − e− 2T√√
e 2T (x2 (0) − F1 (0) + F2 (0)) + x2 (T ) − e 2T F1 (T ) + e− 2T F2 (T ),√C 2x =

e 2T − e− 2T.

By replacing x with y, the optimal control input goy (t) is expressed in thesame formulation as gox (t).
We numerically compare the trajectory of the robot following control input
gc (t) given as Eq.(10) with one following the optimal control input go (t) given
by solving Eq.(11). In addition, we evaluate the behavior of a ball-following robot
in three cases of T = 500(ms), 1000(ms), 3000(ms).
Furthermore, we calculate the cost functions Jc := [J[x2 , fx , gcx ], J[y2 , fy , gcy ]]T
and Jo := [J[x2 , fx , gox ], J[y2 , fy , goy ]]T corresponding to the robot following
the gc (t) and go (t), respectively. Here, we put the initial values as x1 (0) =[x1 (0), y1 (0)]T = [0, 0]T and x2 (0) = [x2 (0), y2 (0)]T = [0, 1]T . We estimate thetrajectory of x2 (t) in two cases of the behavior of a ball; Case1, [fx (t), fy (t)]T =[1, 0]T ; Case2, [fx (t), fy (t)]T = [cos t, sin t]T .

KIKS Extended Team Description for RoboCup 2024(a) T = 500(ms)(b) T = 1000(ms)11(c) T = 3000(ms)Fig. 8. The trajectory of a ball and a robot in case of [fx (t), fy (t)]T = [1, 0]T on 2D
plane (Red, blue, and green lines indicate the trajectories of a ball, a robot following
gc (t), and a robot following go (t), respectively).

(b) T = 1000(ms)(a) T = 500(ms)(c) T = 3000(ms)Fig. 9. The trajectory of a ball and a robot in case of [fx (t), fy (t)]T = [cos t, sin t]T
on 2D plane (Red, blue, and green lines indicate the trajectories of a ball, a robot
following gc (t), and a robot following go (t), respectively).

The result of case1 The optimal control input gox (t) and goy (t) can be written
respectively,gox (t) =x1 (0) − x2 (0) − 12
√

√

√
√
√
√

( 2 + 1)e 2(t−T ) + ( 2 − 1)e− 2(t−T )e 2T − e− 2T
√
√ 
√
√
1
1
√
√
+
( 2 + 1)e 2t + ( 2 − 1)e− 2t +2
2(e 2T − e− 2T )

(12)

and,
√
√
√

y1 (0) − y2 (0) √√goy (t) = √( 2 + 1)e 2(t−T ) + ( 2 − 1)e− 2(t−T ) .
2T
−
2T
e
−e

(13)

In this case, the numerical result is shown by Fig.8. The cost functions Jc and
Jo are
  

  

J
1.501 × 103
Jox
1.094 × 103
J c = cx ≃
J
=
≃
.
o
Jcy
2.085 × 102
Jo y2.077 × 102

12

Ryuto Tanaka et al.

The result of case2 The optimal control input gox (t) and goy (t) can be written
respectively,gox (t) =x1 (0) − x2 (0) − 31
√

√

√
√
√
√

( 2 + 1)e 2(t−T ) + ( 2 − 1)e− 2(t−T )e 2T − e− 2T
√
√ 
√
√
sin T + cos T
1√√+( 2 + 1)e 2t + ( 2 − 1)e− 2t + cos t
2T
−
2T
3
3(e
−e
)

(14)

and,
goy (t) =y1 (0) − y2 (0) − 13
√

√

√
√
√
√

( 2 + 1)e 2(t−T ) + ( 2 − 1)e− 2(t−T )e 2T − e− 2T
√
√ 
√
√
sin T − cos T
1√√( 2 + 1)e 2t + ( 2 − 1)e− 2t + sin t.
+
3
3(e 2T − e− 2T )(15)

In this case, the numerical result is shown by Fig.9. The cost functions Jc and
Jo are
  

  

Jcx
7.156 × 102
Jo x
3.533 × 103
Jc =
≃
Jo =
≃
.
Jcy
8.197 × 102
Jo y
5.246 × 102
From these results, we can see that there is a diﬀerence between the trajectories
of each robot that follows gc (t) and go (t). This is because the robot that follows
go (t) has a more eﬃcient trajectory than the robot that follows gc (t). The costfunction Jo is always smaller than Jc . In the simple example above, the optimal
control input go (t) could be computed for the behavior of a ball, and the robot
was optimally controlled. Future improvements are needed for applications withmore complex conditions, such as when the robot can follow a ball without
collisions to opponent robots.

4

Game analysis using log data

In recent years, statistical data has been increasingly utilized in real soccer.
Objective rather than subjective analysis of the game is becoming more popular,
for example, as information is shared with viewers during TV broadcasts. On
the other hand, there are some rules in SSL that diﬀer from those in real soccer.
Among them, the oﬀside is an important factor that determines the score in realsoccer, but it does not take into account in SSL. Therefore, in this section, we
will try to discuss them based on objective data of goal-scoring scenes in theknock-out stage of SSL in RoboCup 2023.
4.1

Analyzing method

We implemented a measurement function in the team’s original GUI and analyzed the log data from the oﬃcial logs of SSL. For the shooting scene, we
evaluated the shooting position, the position where the attack started (FreeKickKIKS Extended Team Description for RoboCup 2024

13

position or the starting point of the ﬂow of shooting as a result of stealing a ballfrom the opponent in the game), and also the oﬀsides. For oﬀsides, assumingthat the robot’s coordinate point was the center of the circle, we evaluated using
the following criteria as shown in Fig.10.
– (1) When a ball is kicked, an attacking robot is oﬀside if it is in front of thesecond robot from behind of the defending robot and receives the kicked balldirectly. (Fig.10 a, b)– (2) Same as in real soccer, oﬀsides are not taken when the robot is not in an
opponent’s territory or when the robot is behind the ball. (Fig.10 c, d)– (3) For the sake of simplicity, oﬀside is only considered when the ball ispassed directly.
The data used in the analysis were focused only on Div-A knock-out stage.

Fig. 10. Deﬁnition of oﬀside in this paper.

First, we analyze the position of the shooting when a goal is scored, and thepoint at which the attack started, and consider the situation in which a goal islikely to be scored. The ﬁeld is divided into three equal parts along the touchline
direction, and the area near the team’s own goal is denoted as DT (Defensive
Third), the area in the middle as MT (Middle Third), and the area nearest
the opponent’s goal as AT (Attacking Third), respectively. Next, when a goal isscored, it is evaluated if oﬀsides were occurred in the process of scoring the goal.
4.2

Veriﬁcation items(a) Shooting position In Fig 11, we plot all the shooting positions for the 10
games in which a goal was scored. The dotted lines indicate the boundaries of
the AT in the ﬁeld. The legend corresponds to the game numbers in Table 2.
Figure12 shows the percentage of goals scored in each of the eight areas. The
results in Fig.12 show that the total percentage of shootings in the AT was 82%.
Of these shots, 29% were scored from the both sides of the defensive area (Near).
Shooting from MT (outside the AT) was classiﬁed as Far in Fig. 12. As for the14

Ryuto Tanaka et al.

direction along the goal line, it was found that shoots from the area in front of
the goal (Center) had the highest success rate (46%) as shown in Fig.12. Figure
11 shows that shoots from the center of the defensive area and from the corners
on both sides of the same area are more often resulted in a goal. This may be
due to the fact that the defending robots move slowly (carefully) around thecorners of the area to avoid entering the allied defensive area.

Fig. 11. Shooting position with 10 games Fig. 12. Percentage of scores in each areascoredTable 2. Game score of the Div-A Knock-out stage in RoboCup2023

Game No. Winner team
1
RoboDragons
2
Immortals
3
KIKS
4
ZJUNlict
5
TIGERs Mannheim
6KIKS
7Immortals
8
TIGERs Mannheim
9Immortals
10
ZJUNlict
11
TIGERs Mannheim

Score Looser team
6
0 ER-Force
5
0 RoboTeamTwente
40 RoboTeamTwente
1
0 RoboDragons
10
1 Immortals
1
0 RoboDragons
10 ER-Force
2
0 ZJUNlict
7
0 KIKS
6
0 Immortals
00 ZJUNlict(b) Attacking possession phase（APP） Table 3 summarizes the scores of
all Div-A teams in RoboCup 2023. Figure 13 shows the plots of starting points
for attack. It can be conﬁrmed that the starting points for attack of the higherranked teams cover the entire ﬁeld area. This suggests that the higher-ranked
team made eﬀective use of a large area by moving fast and precisely through theﬁeld with a lot of passing. On the other hand, the lower-ranked teams often losea ball to the higher-ranked teams, and as a result, they may make their starting
points for attack only in a limited area of the ﬁeld.

KIKS Extended Team Description for RoboCup 2024

15

Table 3. Total goals for the Div-A teams in RoboCup2023

Rank
1
2
3
4
5
5
7

Team
Goals
TIGERs Mannheim 12
ZJUNlict
7
14Immortals
KIKS
5
RoboDragons
6
ER-Force
0
RoboTeamTwente
0
Total Goals
44

Fig. 13. Starting points for Attack(c) Oﬀside line Only ﬁve of the 44 total goals (numbered in Fig. 13) wereoﬀsides in the process of scoring in the starting point for attacks. One possible
reason for this may be that many teams chose the wall strategy, in which therobots form a line in front of the defensive area. Therefore, we investigated thechanges in the oﬀside line during the game. The judgments were made during inplay when no stop command (halt, stop game, timeout, or ball-placement) was
given. The results of the average position(●, ■) and deviation range (verticalbar) of the oﬀside line during each game are shown in Fig. 14.
These results show that the oﬀside line for both winner and loser teams averages about 4000 mm from the halfway line, i.e., in front of the defensive area.
This means that even when attacking, the robot is waiting in front of its own
goal, which is diﬀerent from the case of human soccer. In human soccer, when
attacking, if the ball is on the AT shown in Fig.10, it is normal for the players
to move up to the halfway line. Otherwise, it would give a wide space between
the DF and the MF. In SSL, however, the ball and the robots move at highspeed, and this fact may force most teams to have multiple robots waiting infront of their own goal, even when attacking. The wide width of the goal may
also contribute to this problem. One solution to this problem is to introduce

16

Ryuto Tanaka et al.

(a) Winner team(b) Looser teamFig. 14. An average and distribution of oﬀside line.

the oﬀside rule. The introduction of the oﬀside rule will reduce the number ofmonotonous long ball kicking matches. In addition, the oﬀside trap and otherstrategies will increase, and games will become more enjoyable. The problem
with the introduction of this system, however, is the criteria for determining oﬀsides. In above analysis, we judged oﬀside only when the pass was direct, but it
will be necessary to discuss judging when the robot is indirectly involved in theplay or when it beneﬁts immediately after (e.g., shooting a rebound ball from a
goalie or goal post).

Acknowledgments
The authors wish to express their deep appreciation to N. Fujii, KIKS alumnus
for development of main circuit board and ﬁrmware. This work was supported
in part by Grant-in-Aid from The Nitto Foundation and The Sango Foundation
for Education in Japan, respectively.

References
1. TIGERs Mannheim, Game Events, https://metabase.tigers-mannheim.de/public/
dashboard/2a77fd2f-b8f9-4b34-8b6c-67bdf084b2a8
2. Ryoma Mitsuoka, et al., KIKS Extended Team Description for RoboCup 2022; https://ssl.robocup.org/wp-content/uploads/2022/04/2022 ETDP KIKS.pdf
3. Board and ﬁrmware of KIKS robots, https://github.com/Nkyoku/phoenix-ﬁrmware
4. Board and ﬁrmware of KIKS robots[In Japanese], https://github.com/Nkyoku/
phoenix-ﬁrmware/wiki/Control
5. ROS navigation: Conﬁguration Guide AMCL, https://navigation.ros.org/
conﬁguration/packages/conﬁguring-amcl.html
6. Rules of the RoboCup Small Size League, https://robocup-ssl.github.io/ssl-rules/
sslrules.html# dimensions.
7. M. Mesbahi and M. Egerstedt, Graph Theoretic Methods in Multiagent Networks,
Princeton, 2010.
8. R. Olfati-Saber, J. A. Fax, and R. M. Murray, Consensus and cooperation in networked multi-agent systems, Proceedings of IEEE, Vol. 95, No. 1, pp. 215-233, 2007.
9. R. Olfati-Saber and R. M. Murray, Consensus problems in networks of agents withswitching topology and time-delays, IEEE Transactions on Automatic Control, Vol.
49, No. 9, pp. 988-1001, 2004.
10. E. D. Sontag, Mathematical Control Theory, Springer, 1990.