# Collision-Free Continuum Deformation Coordination of a Multi-Quadcopter
System Using Cooperative Localization

Hamid Emadi1, Harshvardhan Uppaluru1, Hashem Ashrafiuon2, and Hossein
Rastgoftar1 1H. Emadi, H. Uppaluru, and H. Rastgoftar are with the Aerospace
and Mechanical Engineering Department at University of Arizona, AZ, USA,
Emails: {hamidemadi, huppaluru<EMAIL_ADDRESS>Ashrafiuon is with
the Mechanical Engineering Department at Villanova University, PA, USA 19085,
Email<EMAIL_ADDRESS>
###### Abstract

This paper integrates cooperative localization with continuum deformation
coordination of a multi-quadcopter system (MQS) to assure safety and
optimality of the quadcopter team coordination in the presence of position
uncertainty. We first consider the MQS as a finite number of particles of a
deformable triangle in a $3$-D motion space and define their continuum
deformation coordination as a leader-follower problem in which leader
quadcopters can estimate (know) their positions but follower quadcopters rely
on relative position measurements to localize themselves and estimate the
leaders’ positions. We then propose a navigation strategy for the MQS to plan
and acquire the desired continuum deformation coordination, in the presence of
measurement noise, disturbance, and position uncertainties, such that
collision is avoided and rotor angular speeds of all quadcopters remain
bounded. We show the efficacy of the proposed strategy by simulating the
continuum deformation coordination of an MQS with eight quadcopters.

##  I Introduction

Unmanned vehicles have been widely used in military [1] and non-military
applications such as data acquisition from hazardous environments [2] or
agricultural farm fields [3], traffic surveillance applications [4], urban
search and rescue [5], wildlife monitoring and exploration [6] and delivery
tasks [7]. Global position estimation is a challenging problem for unmanned
vehicles navigating in uncertain environments. Researchers have proposed
feature-based [8] and landmark-based [9] simultaneous localization and mapping
(SLAM) algorithms for mobile robot localization in unknown environments. For
multi-agent localization, cooperative localization (CL) has been proposed to
enable mobile agents to estimate their global positions by sharing odometry
and relative position information. CL has been used in a wide variety of
applications such as navigation of double-integrator multi-agents systems [10]
and ground and aerial vehicles [11], search and rescue missions [12], and
target tracking problems [13].

In CL, each agent is equipped with sensors, processing and communication
capabilities which enables it to take relative measurements with respect to
in-neighbor agents and distribute information to the fusion Center (FC) or
only to the in-neighbor agents. These information are mostly noisy signals due
to the measurement noises and dynamics of the system. CL uses different
estimation approaches, such as extended Kalman filters (EKFs) [14], maximum
likelihood [15], maximum a posteriori (MAP) [16], to estimate global positions
of member agents of a team by filtering the relative position measurements
provided in a distributed fashion.

In this work, we combine CL and continuum deformation coordination approach
[17, 18] to safely plan the group coordination of a multi-quadcopter system
(MQS) in the presence of position uncertainty. We consider a group of MQS
moving in a 3-D motion space with the desired coordination defined by a non-
singular deformation mapping called homogeneous transformation. Homogeneous
deformation coordination is defined as a leader-follower problem; an $n$-D
continuum deformation of a quadcopters are guided by $n+1$ leader agents,
located at vertices of a $n$-D simplex for all time $t$ ($n\in\\{1,2,3\\}$
denotes the dimension of the continuum deformation coordination). In this
work, without loss of generality, quadcopters are considered as particles of a
$2$-D deformable body coordinating in an obstacle-laden motion space, thus,
$n=2$, and the desired continuum deformation coordination is defined by three
leaders. While the existing homogeneous transformation coordination [17, 18]
model quadcopters with deterministic dynamics, this paper studies continuum
deformation coordination of the MQS in the presence of position uncertainty,
measurement noise, and disturbance. In particular, we assume leaders can
localize themselves with respect to the environment but followers localize
themselves, estimate leaders position, and acquire their desired trajectories
by cooperative localization. While the MQS continuum deformation coordination
is planned such that travel distance and time are minimized in an obstacle-
laden environment, we formally specify and verify safety of the MQS continuum
deformation in the presence of global position uncertainty to assure angular
speed of no quadcopter violates a certain upper limit, and collision is
avoided.

The organization of the paper is as follows. Section II presents the problem
formulation. Section III presents the collective dynamics of MQS. Section IV
presents the state estimation approach and KF. Section V discusses the
continuum deformation planning in the presence of position uncertainty.
Section VI gives the simulation of the proposed method on a network of 8
quadcopters, and followed by Conclusion in Section VII.

##  II Problem Statement

We consider collective motion of an MQS in an obstacle-laden motion space
where quadcopters are identified by unique index numbers identified by set
$\mathcal{V}=\left\\{1,\cdots,N\right\\}$. We treat the quadcopters as
particles of a $2$-D deformable triangle with three leaders defined by
$\mathcal{V}_{L}=\left\\{1,2,3\right\\}$ and $N-3$ followers defined by set
$\mathcal{V}_{F}=\mathcal{V}\setminus\mathcal{V}_{L}=\left\\{4,\cdots,N\right\\}$.
Suppose that an MQS is represented by a directed graph
$G(\mathcal{V},\mathcal{E})$ (see Fig 1(a)), where $\mathcal{V}$ is the node
set, and the edge set $\mathcal{E}\subseteq\mathcal{V}\times\mathcal{V}$ is
defined as a set of pairs $(i,j)$ connecting node $i$ to node $j$
($i,j\in\mathcal{V}$). Specifically, edge $(i,j)$ physically means that agent
$j$ can take the relative measurement of agent $i$. It should be noted that
self loop in the network implies that the corresponding agent can receive GPS
signals and can measure its global states. Without loss of generality, we
assume that each follower has 3 in-neighbor agent in the network. We denote
the in-neighbor agents of agent $i$ as set
$\mathcal{N}_{i}=\\{i_{1},i_{2},i_{3}\\}$.

Let
$\mathbf{r}_{i}(t)=\begin{bmatrix}x_{i}(t)&y_{i}(t)&z_{i}(t)\end{bmatrix}^{T}$
and
$\mathbf{r}_{i,d}(t)=\begin{bmatrix}x_{i,d}(t)&y_{i,d}(t)&z_{i,d}(t)\end{bmatrix}^{T}$
denote the global position and desired position vector of agent
$i\in\mathcal{V}$ at time $t$, respectively. Let
$\mathbf{r}_{i,0}=\begin{bmatrix}x_{i,0}&y_{i,0}&0\end{bmatrix}^{T}$ denote
the reference position of agent $i\in\mathcal{V}$ in $x-y$ plane.

We assume that the desired trajectory of each quadcopter $i\in\mathcal{V}_{L}$
is obtained from the following equation:

$\displaystyle\mathbf{r}_{i,d}(t)=\mathbf{Q}(t,t_{0})\left(\mathbf{r}_{i,0}-\mathbf{d}(t_{0})\right)+\mathbf{d}(t)\quad
t\in\left[t_{0},t_{f}\right]$ (1)

where $\mathbf{Q}(t,t_{0})\in\mathbb{R}^{3\times 3}$ is the Jacobian matrix
and $\mathbf{d}(.)\in\mathbb{R}^{3}$ is the rigid body displacement vector
[18].

We assume that the leaders’ desired trajectories are given (see section V),
and we define the desired trajectory of the followers as a weighted summation
of leaders’ position. For every quadcopter $i\in\mathcal{V}_{F}$, we define
three parameters $\alpha_{i,1}$, $\alpha_{i,2}$, and $\alpha_{i,3}$
($\sum_{j=1}^{3}{\alpha_{i,j}}=1$), based on reference position of quadcopter
$i$ and the leaders’ reference positions as follows:

$\begin{bmatrix}\alpha_{i,1}\\\ \alpha_{i,2}\\\ \alpha_{i,3}\\\
\end{bmatrix}=\begin{bmatrix}x_{1,0}&x_{2,0}&x_{3,0}\\\
y_{1,0}&y_{2,0}&y_{3,0}\\\ 1&1&1\\\
\end{bmatrix}^{-1}\begin{bmatrix}x_{i,0}\\\ y_{i,0}\\\ 1\\\
\end{bmatrix},\quad\forall i\in\mathcal{V}_{F}.$ (2)

The collective motion of the MQS is defined as a leader-follower problem in
which the desired trajectory of quadcopter $i\in\mathcal{V}_{F}$, denoted by
$\mathbf{r}_{i,d}$, are given by

$\mathbf{r}_{i,d}(t)=\sum_{j\in\mathcal{V}_{L}}\alpha_{i,j}\mathbf{r}_{j,d}(t).$
(3)

In Fig. 1(a), $\alpha_{i,j}$’s are represented for a group of 8 quadcopters.
Directed graph $G(\mathcal{V},\mathcal{E})$ is also shown in Fig. 1(a). Fig.
1(b) shows the desired configuration of an MQS on 2-D simplex in 3-D space at
$t$.

(a)

(b)

Figure 1: (a) Blue arrows show the directed graph of MQS, and red dashed lines
show the leaders’ reference configuration in the $x-y$ plane . $\alpha_{i,j}$
are shown in the plot. (b) Agents’ configuration on 2-D simplex in 3-D space
at time $t$

The main objective of this work is to design distributed coordination control
for an MQS to safe travel in an obstacle-laden environment (see Fig. 2). We
suppose that the leaders have access to the GPS signals and followers can only
measure the relative pose respect to in-neighbor agents. We consider two
safety conditions. First, we assume that the rotor speeds of every quadcopter
must not exceed $\omega^{max}_{r}$. This safety condition can be formally
specified by

$0<{\omega_{r}}_{i,j}(t)\leq\omega^{max}_{r},\quad\forall
i\in\mathcal{V},\leavevmode\nobreak\
j\in\left\\{1,\cdots,4\right\\},\leavevmode\nobreak\ \forall t\geq t_{0}$ (4)

where ${\omega_{r}}_{i,j}(t)$ is the angular speed of rotor
$j\in\left\\{1,\cdots,4\right\\}$ of quadcopter $i\in\mathcal{V}$ at time
$t\geq t_{0}$. Moreover, trajectory of each quadcopter should be close enough
to the corresponding desired trajectory. In particular, following condition
should be satisfied for all agents $i\in\mathcal{V}$ at all $t$:

$\displaystyle||\mathbf{r}_{i}(t)-\mathbf{r}_{i,d}(t)||<\delta\quad\forall
i\in\mathcal{V},\leavevmode\nobreak\ \forall t\geq t_{0}$ (5)

where $\delta$ is the distance threshold value between desired and actual
trajectories.

Figure 2: Block diagram of MQS coordination control with the proposed method

##  III Collective Dynamics of MQS

In this section, we present the collective dynamics of an MQS in 3-D space. We
consider the motion of MQS as particles of a 2-D continuum deformable body
guided by 3 leaders. We assume that each agent $i\in\mathcal{V}_{L}$ is
equipped with proprioceptive sensors that can measure the global position.
Moreover, we assume that each agent $i\in\mathcal{V}_{F}$ can only measure the
relative position with respect to the in-neighbor agents.

We assume that the leaders know the desired trajectories of (1), and we define
the desired trajectory of the followers as a weighted summation of leaders’
position in the following form:

$\displaystyle\mathbf{r}_{i,d}(t)=\sum_{j=1}^{3}{\alpha_{i,j}\mathbf{r}_{j}(t)},\quad
t\in\left[t_{0},t_{f}\right]\quad\forall i\in\mathcal{V}_{F}$ (6)

where $\alpha_{i,1},\alpha_{i,2}$ and $\alpha_{i,3}$ are positive numbers
associated to agent $i$, and defined in (2).

Consequently, weight matrix $\mathbf{W}\in\mathbb{R}^{N\times N}$, defined
based on the position of the quadcopters, can be written as

$\displaystyle\mathbf{W}=\left\\{\begin{matrix}w_{i,j}&i\in\mathcal{V}_{F},j\in\mathcal{V}_{L}\\\
0&\text{otherwise}\end{matrix}\right..$ (7)

From the above definition, matrix $\mathbf{W}$ can be partitioned in the form
of

$\displaystyle\mathbf{W}=\begin{bmatrix}\mathbf{0}_{3\times
3}&\mathbf{0}_{3\times N-3}\\\ \mathbf{W}_{0}&\mathbf{0}_{N-3\times
N-3}\end{bmatrix}$ (8)

where $\mathbf{W}_{0}\in\mathbb{R}^{N-3\times 3}$ is defined as

$\displaystyle\mathbf{W}_{0}=\begin{bmatrix}\alpha_{4,1}&\alpha_{4,2}&\alpha_{4,3}\\\
\vdots&\vdots&\vdots\\\ \alpha_{N,1}&\alpha_{N,2}&\alpha_{N,3}\end{bmatrix}.$
(9)

We define matrix $\mathbf{L}$ as

$\displaystyle\mathbf{L}=\mathbf{W}-\mathbf{I}_{N}.$ (10)

Let
$\mathbf{X}=\text{vec}\left(\begin{bmatrix}\mathbf{r}_{1}\dots\mathbf{r}_{N}\end{bmatrix}^{T}\right)$
be the concatenation of position vector of all agents. The external dynamics
of all quadcopters (see equation (51)) can be written in the following form:

$\displaystyle\frac{d}{dt}\left(\begin{bmatrix}\mathbf{X}\\\
\dot{\mathbf{X}}\\\ \ddot{\mathbf{X}}\\\
\dddot{\mathbf{X}}\end{bmatrix}\right)=\mathbf{A}_{SYS}\begin{bmatrix}\mathbf{X}\\\
\dot{\mathbf{X}}\\\ \ddot{\mathbf{X}}\\\
\dddot{\mathbf{X}}\end{bmatrix}+\mathbf{B}_{SYS}\begin{bmatrix}\mathbf{S}_{L}\\\
\dot{\mathbf{S}}_{L}\\\ \ddot{\mathbf{S}}_{L}\\\
\dddot{\mathbf{S}}_{L}\end{bmatrix}$ (11)
$\displaystyle\mathbf{Y}=\mathbf{C}_{SYS}\begin{bmatrix}\mathbf{X}^{T}&\dot{\mathbf{X}}^{T}&\ddot{\mathbf{X}}^{T}&\dddot{\mathbf{X}}^{T}\end{bmatrix}^{T}$
(12)

where $\mathbf{A}_{SYS}\in\mathbb{R}^{12N\times
12N},\mathbf{B}_{SYS}\in\mathbb{R}^{12N\times 12N}$ and
$\mathbf{C}_{SYS}\in\mathbb{R}^{36(N-2)\times 12N}$ are defined as

$\displaystyle\mathbf{A}_{SYS}=\begin{bmatrix}\mathbf{0}_{3N\times
3N}&\mathbf{I}_{3N}&\mathbf{0}_{3N\times 3N}&\mathbf{0}_{3N\times 3N}\\\
\mathbf{0}_{3N\times 3N}&\mathbf{0}_{3N\times
3N}&\mathbf{I}_{3N}&\mathbf{0}_{3N\times 3N}\\\ \mathbf{0}_{3N\times
3N}&\mathbf{0}_{3N\times 3N}&\mathbf{0}_{3N\times 3N}&\mathbf{I}_{3N}\\\
K_{4}\mathbf{I}_{3}\otimes\mathbf{L}&K_{3}\mathbf{I}_{3}\otimes\mathbf{L}&K_{2}\mathbf{I}_{3}\otimes\mathbf{L}&K_{1}\mathbf{I}_{3}\otimes\mathbf{L}\end{bmatrix}$
(13) $\displaystyle\mathbf{B}_{SYS}=\begin{bmatrix}\mathbf{0}_{9N\times
9}&\mathbf{0}_{9N\times 9}&\mathbf{0}_{9N\times 9}&\mathbf{0}_{9N\times 9}\\\
K_{4}\mathbf{I}_{3}\otimes\mathbf{L}_{0}&K_{3}\mathbf{I}_{3}\otimes\mathbf{L}_{0}&K_{2}\mathbf{I}_{3}\otimes\mathbf{L}_{0}&K_{1}\mathbf{I}_{3}\otimes\mathbf{L}_{0}\end{bmatrix}$
(14) $\displaystyle\mathbf{C}_{SYS}=\mathbf{I}_{12}\otimes\mathbf{C}_{0}$ (15)

where $\mathbf{L}_{0}\in\mathbb{R}^{N\times 3}$ is

$\displaystyle\mathbf{L}_{0}=\begin{bmatrix}\mathbf{I}_{3}\\\
\mathbf{0}_{N-3\times 3}\end{bmatrix}.$ (16)

$\mathbf{S}_{L}$ is defined as concatenation of desires trajectories of
leaders as follows:

$\displaystyle\mathbf{S}_{L}=\text{vec}\left(\begin{bmatrix}\mathbf{r}_{1,d}&\mathbf{r}_{2,d}&\mathbf{r}_{3,d}\end{bmatrix}^{T}\right)$
(17)

$\mathbf{C}_{0}\in\mathbb{R}^{3(N-2)\times N}$ is a matrix with the
$ij^{\text{th}}$ entry ${C_{0}}_{i,j}$ defined in the following way:

$\displaystyle{C_{0}}_{i,j}=\left\\{\begin{matrix}1&i=j,j\in\mathcal{V}_{L}\\\
1&(j,i)\in\mathcal{E},j\in\mathcal{V}_{F}\\\ -1&i=j,j\in\mathcal{V}_{F}\\\
0&\text{otherwise}\end{matrix}\right..$ (18)

We define
$\mathbf{Y}_{d}=\text{vec}\left(\begin{bmatrix}\mathbf{r}_{1,d}&\dots&\mathbf{r}_{N,d}\end{bmatrix}^{T}\right)$.
Vector $\mathbf{Y}_{d}$ and $\mathbf{S}_{L}$ are related as

$\displaystyle\mathbf{Y}_{d}=(\mathbf{I}_{3}\otimes\mathbf{H})\mathbf{S}_{L}.$
(19)

where $\mathbf{H}=-\mathbf{L}^{-1}\mathbf{L}_{0}$ [17] .

Now, by defining $\mathbf{E}(t)=\mathbf{Y}(t)-\mathbf{Y}_{d}(t)$, the error
dynamics can be written in the form of

$\displaystyle\frac{d}{dt}\left(\begin{bmatrix}\mathbf{E}\\\
\dot{\mathbf{E}}\\\ \ddot{\mathbf{E}}\\\
\dddot{\mathbf{E}}\end{bmatrix}\right)=\mathbf{A}_{SYS}\begin{bmatrix}\mathbf{E}\\\
\dot{\mathbf{E}}\\\ \ddot{\mathbf{E}}\\\
\dddot{\mathbf{E}}\end{bmatrix}+\begin{bmatrix}\mathbf{0}\\\ \mathbf{0}\\\
\mathbf{0}\\\
\mathbf{I}_{3}\otimes\mathbf{H}^{T}\end{bmatrix}\ddddot{\mathbf{S}}_{L}$ (20)

##  IV State Estimation of MQS

In this section, we present the Kalman Filter state estimation algorithm
following [19]. We consider a centralized scenario in which all agents share
their measurements to a FC. Collective dynamics of the system is presented in
(11). Note that leaders can measure their states, and followers can only
measure the relative states of the in-neighbor agents. Matrix $\mathbf{C}_{0}$
in (12) represents the explicit form of the absolute and the relative
measurements in the network $G$.

In the first step, we discretize the continuous dynamics of (11). Suppose that
sensors are sampling every $\Delta t$ second. Discretizing the continuous
state space model (11) and (12) lead to the following discrete approximation
model

$\displaystyle\mathbf{x}_{[k+1]}$ $\displaystyle=$
$\displaystyle(\mathbf{A}_{SYS}\Delta
t+\mathbf{I})\mathbf{x}_{[k]}+(\mathbf{B}_{SYS}\Delta
t)\mathbf{u}_{[k]}+\mathbf{\eta}_{[k]}$ (21) $\displaystyle\mathbf{y}_{[k+1]}$
$\displaystyle=$
$\displaystyle\mathbf{C}_{SYS}\mathbf{x}_{[k]}+\mathbf{\nu}_{[k]}$ (22)

where ${\mathbf{x}}_{[k]}$, ${\mathbf{u}}_{[k]}$ and ${\mathbf{y}}_{[k]}$
represent the state vector, the control input vector and the measurement
vector at time-step $k$, respectively, in in (11),(12). $\mathbf{\eta}_{[k]}$
and $\mathbf{\nu}_{[k]}$ are process noise and measurement noise,
respectively. We assume that $\mathbf{\eta}_{[k]}$ and $\mathbf{\nu}_{[k]}$
are zero-mean independent white Gaussian processes with known covariances
$\mathbf{Q}_{[k]}$, $\mathbf{R}_{[k]}$, respectively. For each time step the
Kalman filter is given by the following expressions:

$\displaystyle\mathbf{P}^{-}_{[k+1]}$ $\displaystyle=$
$\displaystyle(\mathbf{A}_{SYS}\Delta
t+\mathbf{I})\mathbf{P}^{+}_{[k]}(\mathbf{A}\Delta
t+\mathbf{I})^{T}+\mathbf{Q}_{[]k]}$ (23) $\displaystyle\mathbf{K}_{[k+1]}$
$\displaystyle=$
$\displaystyle\mathbf{P}^{-}_{[k+1]}\mathbf{C}_{SYS}^{T}\left(\mathbf{C}_{SYS}\mathbf{P}^{-}_{[k+1]}\mathbf{C}_{SYS}^{T}+\mathbf{R}_{[k+1]}\right)^{-1}$
(24) $\displaystyle\mathbf{x}^{-}_{[k+1]}$ $\displaystyle=$
$\displaystyle(\mathbf{A}_{SYS}\Delta
t+\mathbf{I})\mathbf{x}^{+}_{[k]}+(\mathbf{B}_{SYS}\Delta t)\mathbf{u}_{[k]}$
(25) $\displaystyle\mathbf{x}^{+}_{[k+1]}$ $\displaystyle=$
$\displaystyle\mathbf{x}^{-}_{[k+1]}+\mathbf{K}_{[k+1]}\left(\mathbf{y}_{[k+1]}-\mathbf{C}\mathbf{x}^{-}_{[k+1]}\right)$
(26) $\displaystyle\mathbf{P}^{+}_{[k+1]}$ $\displaystyle=$
$\displaystyle\left(\mathbf{I}-\mathbf{K}_{[k+1]}\mathbf{C}_{SYS}\right)\mathbf{P}^{-}_{[k+1]}$
(27)

where $``^{+}"$,$``^{-}"$ refer to the prior and posterior estimation,
respectively. That is to say, $``^{+}",``^{-}"$ correspond to the estimation
after and before we process the measurement at time step $k$, respectively.
$\mathbf{P}_{[k]},\mathbf{K}_{[k]}$ represent the error estimation covariance
and Kalman filter gain at time step $k$, respectively.

##  V Path Planning

We use the A* search method [20] to path planning of the leaders in an
obstacle-laden environment (see Fig.3). Deploying A* search method results to
a line-graph in which the node set represents the waypoints, and edge set
represents the path segment between waypoints. We denote the position of
waypoints by $\Gamma_{1},\dots,\Gamma_{n}$. We assume that each quadcopter
starts with zero velocity and zero acceleration at start point $\Gamma_{i}$,
and reaches to the end point $\Gamma_{i+1}$ of each segment with zero velocity
and zero acceleration. We consider a trajectory of a quadcopter as a
polynomial function of time with zero velocity and acceleration at
$\Gamma_{i}$ and $\Gamma_{i+1}$. This results to the desired trajectories of
the leaders which satisfy (1) as follows:

$\displaystyle\mathbf{r}^{j}_{i,d}(t)=(1-\beta(t))\Gamma_{j}+\beta(t)\Gamma_{j+1}$
(28)

where
$\beta(t)=\frac{6}{T^{5}_{j}}t^{5}-\frac{15}{T^{4}_{j}}t^{4}+\frac{10}{T^{3}_{j}}t^{3}$,
and superscript $j$ in $\mathbf{r}^{j}_{i,d}(t)$ denotes the $j^{\text{th}}$
path segment between $\Gamma_{j}$ and $\Gamma_{j+1}$. We denote the total
travelling time by $T$; we linearly allocate travelling time $T_{j}$ to the
path segment between waypoints $\Gamma_{j}$ and $\Gamma_{j+1}$ based on the
travelling distance between $\Gamma_{j}$ and $\Gamma_{j+1}$. From (20), the
tracking error can be written as

$\displaystyle\begin{bmatrix}\mathbf{E}\\\ \dot{\mathbf{E}}\\\
\ddot{\mathbf{E}}\\\
\dddot{\mathbf{E}}\end{bmatrix}=\int_{t_{0}}^{t}e^{\mathbf{A}_{SYS}(t-\eta)}\begin{bmatrix}\mathbf{0}\\\
\mathbf{0}\\\ \mathbf{0}\\\
\mathbf{I}_{3}\otimes\mathbf{H}^{T}\end{bmatrix}\ddddot{\mathbf{S}}_{L}\,d\eta$
(29)

From the above expression, as $T_{j}$ tends to infinity, $\mathbf{E}$ also
tends to 0. This leads to the fact that there exists an optimal time $T^{*}$
for give $\delta$ such that safety condition (5) is satisfied for all time.

In order to find the optimal traveling time for MQS subjected to that safety
conditions (4) and (5), we use bisection method. We initiate with a large $T$
such that (4) and (5) are satisfied. Using the bisection method, we keep
updating $T$ until one of the safety conditions is violated. We denote the
optimal time by $T^{*}$.

##  VI Simulation

In this section, we consider an MQS containing 8 quadcopters labeled as
$\mathcal{V}=\\{1,\dots,8\\}$. In order to acquire the continuum deformation
coordination, We consider 3 leaders in this group, labeled as
$\mathcal{V}_{L}=\\{1,2,3\\}$, and the rest of agents are considered as
followers $\mathcal{V}_{F}=\\{4,\dots,8\\}$. A directed graph
$G(\mathcal{V},\mathcal{E})$ is generated based on proximity for local
relative measurements (see Fig. 1(a)). We assume that leaders are equipped by
proprioceptive sensors which enable to acquire the global state vector
measurements at each time step. On the other hand, each follower can only
measure the relative sates with respect to its neighbors (e.g. agent 4 can
take the measurements relative to agents 1, 5 and 7). Note that self-loop in
the network implies that the corresponding agent can measure its global
states. Quadcopters’ specification are listed in Table I.

$m$ | $g$ | $l$ | $I_{x}$
---|---|---|---
0.468 | 9.81 | 0.225 | $4.856\times 10^{-3}$
$I_{y}$ | $I_{z}$ | $b$ | $k$
$4.856\times 10^{-3}$ | $8.801\times 10^{-3}$ | $2.98\times 10^{-6}$ | $1.14\times 10^{-7}$
Table I: Quadcopters’ specification

We consider the standard deviation of 0.1 for process noise $Q$ and
measurement noise $R$. Sampling time in our simulation is 0.01 $\sec$. Fig. 4
shows the trajectories of the MQS from $\Gamma_{2}$ to $\Gamma_{3}$. We choose
$K_{1}=10,K_{2}=35,K_{3}=50$ and $K_{4}=35$. Blue dashed lines show the actual
trajectories of the agents, and solid green lines show the desired
trajectories of 3 leaders. As shown in Fig. 4, followers are contained in the
triangle, formed by the three leaders. Fig. 1 shows the estimation and
tracking error of agent 4 (a follower agent).

Figure 3: An obstacle-laden environment. Leaders’ desired paths which is
generated from the approach discussed in Section V, also shown in the plot
Figure 4: Actual (green lines) and desired (blue lines) trajectories of MQS
for the path segment between waypoints $\Gamma_{2},\Gamma_{3}$. Figure 5:
Tracking error and estimation error for all agents Figure 6: Blue line shows
the angular speed ${\omega_{r}}_{1}$ during the total travelling time. Green
line shows the upper limit ${\omega_{r}}^{\max}$. Figure 7: $\phi,\theta$ and
$\psi$ for agent 4. Figure 8: $x,y$ and $z$ components of quadcopters. Red
circles show the waypoints.

We choose $\delta=0.5$ in the safety condition (5), and
${\omega_{r}}_{\max}=750$ in safety condition (4). Using the bisection method,
$T^{*}$ is computed as 640 seconds. Fig. 6 shows the angular speed of rotor 1
for quadcopter 4. As shown in Fig.6, $\omega_{r}$ is not exceeding the
${\omega_{r}}_{\max}=750$. Fig. 7 and 8 show the roll, pitch and yaw angle of
quadcopter 4 and $x,y$ and $z$ components of quadcopters for $t\in[0,T^{*}]$,
respectively.

##  VII Conclusion

We developed a framework for continuum deformation coordination of MQS through
simultaneous cooperative localization. We provided the collective dynamics of
the quadcopters in which the input is the leader’s desired trajectory, and the
output only contains the estimated global states of the leaders and the
estimated relative states of the followers respect to in-neighbor agents. We
used Kalman Filter for state estimation of the collective motion system. In
this work, we used FC to collect and distribute the information to the
network. As a part of the future work we plan to develop a decentralized
method for state estimation and coordination of quadcopters.

##  VIII Acknowledgement

This work has been supported by the National Science Foundation under Award
Nos. 2133690 and 1914581.

###  -A Mathematical Modeling of Quadcopters and Trajectory Tracking Control

In this work, we consider the following assumptions in mathematical modeling
of quadcopter motions.

###### Assumption 1

Quadcopter is a symmetrical rigid body with respect to the axes of body-fixed
frame.

###### Assumption 2

Aerodynamic loads are neglected due to low speed assumption for quadcopters.

Let $\hat{\boldsymbol{i}},\hat{\boldsymbol{j}},\hat{\boldsymbol{k}}$ be the
base unit vectors of inertial coordinate system, and
$\hat{\boldsymbol{i}}_{b},\hat{\boldsymbol{j}}_{b},\hat{\boldsymbol{k}}_{b}$
be the base unit vectors of a body-fixed coordinate system whose origin is at
the center of mass of the quadcopter. In this section, for convenience, we
omitted $i$ subscript of $i^{\text{th}}$ quadcopter in the governing
equations. The attitude of the quadcoper is defined by three Euler angles
$\phi,\theta$ and $\psi$ as roll angle, pitch angle and yaw angle,
respectively. In this work, we use 3-2-1 standard Euler angles to determine
orientation of the quadcopter. Therefore, the rotation matrix between fixed-
body frame and the inertial frame can be written as

$\displaystyle\boldsymbol{R}(\phi,\theta,\psi)=\boldsymbol{R}(\phi,0,0)\boldsymbol{R}(0,\theta,0)\boldsymbol{R}(0,0,\psi)$
(30)
$\displaystyle=\begin{bmatrix}c_{\theta}c_{\psi}&s_{\theta}c_{\psi}s_{\phi}-s_{\psi}c_{\phi}&s_{\theta}c_{\psi}c_{\phi}+s_{\psi}s_{\phi}\\\
c_{\theta}s_{\psi}&s_{\theta}s_{\psi}s_{\phi}+c_{\psi}c_{\phi}&s_{\theta}s_{\psi}c_{\phi}-c_{\psi}s_{\phi}\\\
-s_{\theta}&c_{\theta}s_{\phi}&c_{\theta}c_{\phi}\end{bmatrix}$ (31)

where $s(.)=\sin(.),c(.)=\cos(.)$. Let
$\boldsymbol{r}=\begin{bmatrix}x&y&z\end{bmatrix}^{T}$ denote the position of
the center of mass of the quadcopter in inertial frame, and
$\boldsymbol{\omega}=\begin{bmatrix}\omega_{x}&\omega_{y}&\omega_{z}\end{bmatrix}^{T}$
denote the angular velocity of the quadcopter represented in the fixed-body
frame.

Using the Newton-Euler formulas, equations of motion of a quadcopter can be
written in the following form:

$\displaystyle\ddot{\boldsymbol{r}}=-g\hat{\boldsymbol{k}}+\frac{p}{m}\hat{\boldsymbol{k}}_{b},$
(32)
$\displaystyle\dot{\boldsymbol{\omega}}=-\boldsymbol{J}^{-1}\left[\boldsymbol{\omega}\times(\boldsymbol{J}\boldsymbol{\omega})\right]+\boldsymbol{J}^{-1}\boldsymbol{\tau},$
(33)

where $m,\boldsymbol{J}$ denote, respectively, mass and mass moment of inertia
of the quadcopter. $g$ is the gravity acceleration and $p$ is the thrust force
generated by the four rotors. Relation between the thrust force $p$ and
angular speed of the rotors, denoted by $\omega_{r_{i}}$, can be written as

$\displaystyle
p=\sum_{i=1}^{4}{{f_{r}}_{i}}=b\sum_{i=1}^{4}{{{\omega^{2}_{r_{i}}}}},$ (34)

where $b$ is the aerodynamic force constant ($b$ is a function of the density
of air, the shape of the blades, the number of the blades, the chord length of
the blades, the pitch angle of the blade airfoil and the drag constant), and
${f_{r}}_{i}$ is the thrust force of $i^{\text{th}}$ rotor. In (32),
$\boldsymbol{\tau}=\begin{bmatrix}\tau_{\phi}&\tau_{\theta}&\tau_{\psi}\end{bmatrix}^{T}$
is the control torques generated by four rotors. Relation between the
$\boldsymbol{\tau}$ and angular speed of the rotors can be written in the
following form

$\displaystyle\boldsymbol{\tau}=\begin{bmatrix}\tau_{\phi}\\\ \tau_{\theta}\\\
\tau_{\psi}\end{bmatrix}=\begin{bmatrix}bl({\omega^{2}_{r_{4}}}-{\omega^{2}_{r_{2}}})\\\
bl({\omega^{2}_{r_{3}}}-{\omega^{2}_{r_{1}}})\\\
k({\omega^{2}_{r_{2}}}+{\omega^{2}_{r_{4}}}-{\omega^{2}_{r_{1}}}-{\omega^{2}_{r_{3}}})\end{bmatrix},$
(35)

where $l$ is the distance of each rotor from center of the quadcopter, and $k$
is a positive constant corresponding to the aerodynamic torques. By
concatenating $p$ and $\boldsymbol{\tau}$ as input vector to the system, we
can write

$\displaystyle\boldsymbol{u}=\begin{bmatrix}p\\\ \tau_{\phi}\\\
\tau_{\theta}\\\ \tau_{\psi}\end{bmatrix}=\begin{bmatrix}b&b&b&b\\\
0&-bl&0&bl\\\ -bl&0&bl&0\\\
-k&k&-k&k\end{bmatrix}\begin{bmatrix}{\omega^{2}_{r_{1}}}\\\
{\omega^{2}_{r_{2}}}\\\ {\omega^{2}_{r_{3}}}\\\
{\omega^{2}_{r_{4}}}\end{bmatrix}.$ (36)

By defining state vector
$\boldsymbol{x}=\begin{bmatrix}\boldsymbol{r}^{T}&\dot{\boldsymbol{r}}^{T}&\phi&\theta&\psi&\boldsymbol{\omega}^{T}\end{bmatrix}^{T}$
and input vector
$\boldsymbol{u}=\begin{bmatrix}p&\tau_{\phi}&\tau_{\theta}&\tau_{\psi}\end{bmatrix}^{T}$,
(32),(33) can be written in the state space non-linear form of

$\displaystyle\left\\{\begin{matrix}\dot{\boldsymbol{x}}=\boldsymbol{f}(\boldsymbol{x})+\boldsymbol{g}(\boldsymbol{x})\boldsymbol{u}\\\
\boldsymbol{y}=\boldsymbol{C}\boldsymbol{x}\end{matrix}\right.$ (37)

where, $\boldsymbol{f}(\boldsymbol{x})$ and $\boldsymbol{g}(\boldsymbol{x})$
are defined as

$\displaystyle\boldsymbol{f}(\boldsymbol{x})=\begin{bmatrix}\boldsymbol{v}\\\
-g\hat{\boldsymbol{k}}\\\ \boldsymbol{\Gamma^{-1}}\boldsymbol{\omega}\\\
-\boldsymbol{J}^{-1}\left[\boldsymbol{\omega}\times(\boldsymbol{J}\boldsymbol{\omega})\right]\end{bmatrix},$
(38)

$\displaystyle\boldsymbol{g}(\boldsymbol{x})=\begin{bmatrix}\boldsymbol{0}_{3\times
1}&\boldsymbol{0}_{3\times 3}\\\
\frac{\hat{\boldsymbol{k}}_{b}}{m}&\boldsymbol{0}_{3\times 3}\\\
\boldsymbol{0}_{3\times 1}&\boldsymbol{0}_{3\times 3}\\\
\boldsymbol{0}_{3\times 1}&\boldsymbol{J}^{-1}\end{bmatrix}$ (39)

and $\boldsymbol{C}=[\boldsymbol{I}_{3\times 3},\boldsymbol{0}_{3\times 9}]$.
$\boldsymbol{v}$ is the velocity vector of the quadcopter, and
$\boldsymbol{\Gamma}$ is the matrix which relates Euler angular velocity to
the angular velocity of the quadcopter. $\boldsymbol{0}_{i\times j}$ is a
$i\times j$ zero matrix. In order to find $\boldsymbol{\Gamma}$, we can
represent $\boldsymbol{\omega}$ in the following form

$\displaystyle\boldsymbol{\omega}=\dot{\psi}\hat{\boldsymbol{k}}_{1}+\dot{\theta}\hat{\boldsymbol{j}}_{2}+\dot{\phi}\hat{\boldsymbol{i}}_{b},$
(40)

where
$\hat{\boldsymbol{j}}_{2}=\boldsymbol{R}(\phi,0,0)\hat{\boldsymbol{j}}_{b}$
and
$\hat{\boldsymbol{k}}_{1}=\boldsymbol{R}(\phi,\theta,0)\hat{\boldsymbol{k}}_{b}$.
Consequently,

$\displaystyle\boldsymbol{\Gamma}=\begin{bmatrix}1&0&-s_{\theta}\\\
0&c_{\phi}&c_{\theta}s_{\phi}\\\ 0&-s_{\phi}&c_{\phi}c_{\theta}\end{bmatrix}.$
(41)

From (40), the angular acceleration $\dot{\boldsymbol{\omega}}$ can be
formulated in the following way:

$\displaystyle\dot{\boldsymbol{\omega}}=\tilde{\boldsymbol{B}}_{1}\begin{bmatrix}\ddot{\phi}&\ddot{\theta}&\ddot{\psi}\end{bmatrix}^{T}+\tilde{\boldsymbol{B}}_{2}$
(42)

where
$\tilde{\boldsymbol{B}}_{1}=\begin{bmatrix}\hat{\boldsymbol{i}}_{b}&\hat{\boldsymbol{j}}_{2}&\hat{\boldsymbol{k}}_{1}\end{bmatrix}$
and

$\displaystyle\tilde{\boldsymbol{B}}_{2}=\dot{\theta}\dot{\psi}(\hat{\boldsymbol{k}}_{1}\times\hat{\boldsymbol{j}}_{2})+\dot{\phi}(\dot{\psi}\hat{\boldsymbol{k}}_{1}+\dot{\theta}\hat{\boldsymbol{j}}_{2})\times\hat{\boldsymbol{i}}_{b}$
(43)

On the other hand, from (37),

$\displaystyle\dot{\boldsymbol{\omega}}=\boldsymbol{J}^{-1}\left(-\boldsymbol{\omega}\times(\boldsymbol{J}\boldsymbol{\omega})+\begin{bmatrix}u_{2}&u_{3}&u_{4}\end{bmatrix}^{T}\right).$
(44)

From (42) and (44)

$\displaystyle\begin{bmatrix}u_{2}\\\ u_{3}\\\
u_{4}\end{bmatrix}=\boldsymbol{J}\tilde{\boldsymbol{B}}_{1}\begin{bmatrix}\ddot{\phi}\\\
\ddot{\theta}\\\
\ddot{\psi}\end{bmatrix}+\boldsymbol{J}\tilde{\boldsymbol{B}}_{2}+\boldsymbol{\omega}\times(\boldsymbol{J}\boldsymbol{\omega})$
(45)

###  -B Input-Output Feedback Linearization Control

In this subsection, we provide the input control for the non-linear state
space system (37) to track the desired trajectory $\boldsymbol{r_{d}}$. We
suppose $\boldsymbol{r}_{d}$ is a smooth function for all $t\geq t_{0}$ (i.e.
$\boldsymbol{r}_{d}$ has derivatives of all orders with respect to time).

In this work, we use the input-output feedback linearization approach[21] to
design the input control for a quadcopter to track the desired trajectory
[17]. We use the Lie derivative notation which is defined in the following.

###### Definition 1

Let $h:\mathbb{R}^{n}\rightarrow\mathbb{R}$ be a smooth scalar function, and
$\boldsymbol{f}:\mathbb{R}^{n}\rightarrow\mathbb{R}^{n}$ be a smooth vector
field on $\mathbb{R}^{n}$. Lie derivative of $h$ with respect to
$\boldsymbol{f}$ is a scalar function defined by $L_{\boldsymbol{f}}h=\nabla
h\boldsymbol{f}$.

Concept of input-output linearization is based on differentiating the output
until the input appears in the derivative expression. Since $u_{2},u_{3}$ and
$u_{4}$ do not appear in the derivative of outputs, we use the technique,
called dynamic extension, in which we redefine the input vector
$\boldsymbol{u}$ as the derivative of some of the original system inputs. In
particular, we define
$\tilde{\boldsymbol{x}}=\begin{bmatrix}\boldsymbol{x}^{T}&p&\dot{p}\end{bmatrix}^{T}$
and
$\tilde{\boldsymbol{u}}=\begin{bmatrix}u_{p}&\tau_{\phi}&\tau_{\theta}&\tau_{\psi}\end{bmatrix}^{T}$.
Therefore, extended dynamics of the quadcopter can be expressed in the
following form [17]:

$\displaystyle\left\\{\begin{matrix}\dot{\tilde{\boldsymbol{x}}}=\tilde{\boldsymbol{f}}(\tilde{\boldsymbol{x}})+\tilde{\boldsymbol{g}}(\tilde{\boldsymbol{x}})\tilde{\boldsymbol{u}}\\\
\boldsymbol{r}=\tilde{\boldsymbol{C}}\tilde{\boldsymbol{x}}\end{matrix}\right.$
(46)

where, $\tilde{\boldsymbol{f}}(\tilde{\boldsymbol{x}})$ and
$\tilde{\boldsymbol{g}}(\tilde{\boldsymbol{x}})$ are defined as

$\displaystyle\tilde{\boldsymbol{f}}(\tilde{\boldsymbol{x}})=\begin{bmatrix}\boldsymbol{f}(\boldsymbol{x})\\\
\dot{p}\\\ 0\end{bmatrix}+\begin{bmatrix}\boldsymbol{0}_{3\times 1}\\\
\frac{p}{m}\hat{\boldsymbol{k}}_{b}\\\ \boldsymbol{0}_{8\times
1}\end{bmatrix},$ (47)

$\displaystyle\tilde{\boldsymbol{g}}(\tilde{\boldsymbol{x}})=\begin{bmatrix}\boldsymbol{0}_{9\times
1}&\boldsymbol{0}_{9\times 3}\\\ \boldsymbol{0}_{3\times
1}&\boldsymbol{J}^{-1}\\\ 0&\boldsymbol{0}_{1\times 3}\\\
1&\boldsymbol{0}_{1\times 3}\end{bmatrix}.$ (48)

Let $\tilde{\boldsymbol{g}}_{i}(\tilde{\boldsymbol{x}})$ denote the
$i^{\text{th}}$ column of matrix
$\tilde{\boldsymbol{g}}(\tilde{\boldsymbol{x}})$ and
$\tilde{\boldsymbol{u}}=\begin{bmatrix}\tilde{u}_{1}\dots\tilde{u}_{4}\end{bmatrix}^{T}$
where $\tilde{u}_{1},\dots,\tilde{u}_{4}$ corresponds to
$u_{p},\tau_{\phi},\tau_{\theta},\tau_{\psi}$, respectively. We consider the
position of the quadcopter as the output of the system (i.e. $x,y,z$). Inputs
appear in the fourth order derivative of the outputs. particularly, for
$q\in\\{x,y,z\\}$

$\displaystyle\ddddot{q}=L^{4}_{\tilde{\boldsymbol{f}}}q+\sum_{i=1}^{4}{L_{\tilde{\boldsymbol{g}_{i}}}{L_{\tilde{\boldsymbol{f}}}}^{3}q}\tilde{u}_{i}$
(49)

where $L_{\tilde{\boldsymbol{g}_{i}}}{L_{\tilde{\boldsymbol{f}}}}^{3}q\neq 0$
for $i=1,\dots,4$. By choosing the state transformation
$\mathcal{T}(\tilde{\boldsymbol{x}})=\begin{bmatrix}\boldsymbol{z}&\boldsymbol{\zeta}\end{bmatrix}^{T}$,
(46) can be converted to the following internal and external dynamics:

$\displaystyle\dot{\boldsymbol{\zeta}}=\begin{bmatrix}0&0\\\
0&1\end{bmatrix}\boldsymbol{\zeta}+\begin{bmatrix}0\\\ 1\end{bmatrix}u_{\psi}$
(50)
$\displaystyle\dot{\boldsymbol{z}}=\boldsymbol{A}\boldsymbol{z}+\boldsymbol{B}\boldsymbol{s}$
(51)

where
$\boldsymbol{z}=\begin{bmatrix}\boldsymbol{r}^{T}&\dot{\boldsymbol{r}}^{T}&\ddot{\boldsymbol{r}}^{T}&\dddot{\boldsymbol{r}}^{T},\end{bmatrix}^{T}$,
and $\boldsymbol{\zeta}=\begin{bmatrix}\psi&\dot{\psi}\end{bmatrix}^{T}$

$\displaystyle\boldsymbol{A}=\begin{bmatrix}\boldsymbol{0}_{9\times
3}&\boldsymbol{I}_{9}\\\ \boldsymbol{0}_{3\times 3}&\boldsymbol{0}_{3\times
9}\end{bmatrix},\boldsymbol{B}=\begin{bmatrix}\boldsymbol{0}_{9\times 3}\\\
\boldsymbol{I}_{3}\end{bmatrix}$ (52)

where $\boldsymbol{I}_{j}$ is a $j\times j$ identity matrix.

Next, we can figure out the Control inputs $\boldsymbol{s}$ and $u_{\psi}$,
such that the linear systems (50) and (51) track the desired trajectory
$\boldsymbol{r}_{d}$. By choosing

$\displaystyle u_{\psi}=-K_{1}\dot{\psi}-K_{2}\psi$ (53)

where $K_{1}>0,K_{2}>0$. Thus, the internal dynamics (50) asymptotically
converges to $\boldsymbol{0}$. Moreover, we choose

$\displaystyle\boldsymbol{s}=K_{3}\left(\dddot{\boldsymbol{r}}_{d}-\dddot{\boldsymbol{r}}\right)+K_{4}\left(\ddot{\boldsymbol{r}}_{d}-\ddot{\boldsymbol{r}}\right)+$
(54) $\displaystyle
K_{5}\left(\dot{\boldsymbol{r}}_{d}-\dot{\boldsymbol{r}}\right)+K_{6}\left({\boldsymbol{r}}_{d}-{\boldsymbol{r}}\right)$

where $K_{3},\dots,K_{6}$ can be chosen such that the roots of the
characteristic equation

$\displaystyle\lambda^{4}+\lambda^{3}K_{3}+\lambda^{2}K_{4}+\lambda
K_{5}+K_{6}=0,$ (55)

are located in the open left half complex plane. Hence, $\boldsymbol{r}$
converges to $\boldsymbol{r}_{d}$.

In order to find the relation between $\boldsymbol{s}$ and
$\tilde{\boldsymbol{u}}$, we need to find $\ddddot{\boldsymbol{r}}$ by
differentiating twice with respect to time from $\ddot{\boldsymbol{r}}$. From
(37), we have

$\displaystyle\ddot{\boldsymbol{r}}=\frac{p}{m}\hat{\boldsymbol{k}}_{b}-g\hat{\boldsymbol{k}}$
(56)

By differentiating the above expression,

$\displaystyle\dddot{r}=\frac{\dot{p}}{m}\hat{\boldsymbol{k}}_{b}+\frac{p}{m}\boldsymbol{\omega}\times\hat{\boldsymbol{k}}_{b}$
(57)
$\displaystyle\ddddot{r}=\frac{1}{m}(\boldsymbol{O}_{1}\boldsymbol{\Theta}+\boldsymbol{O}_{2}),$
(58)

where
$\boldsymbol{\Theta}=\begin{bmatrix}\ddot{p}&\ddot{\phi}&\ddot{\theta}&\ddot{\psi}\end{bmatrix}^{T}$
and

$\displaystyle\boldsymbol{O}_{1}=\begin{bmatrix}\hat{\boldsymbol{k}}_{b}&-p\hat{\boldsymbol{j}}_{b}&p(\hat{\boldsymbol{j}}_{2}\times\hat{\boldsymbol{k}}_{b})&p(\hat{\boldsymbol{k}}_{1})\times\hat{\boldsymbol{k}}_{b}\end{bmatrix}$
(59)
$\displaystyle\boldsymbol{O}_{2}=p\tilde{\boldsymbol{B}_{2}}\times\hat{\boldsymbol{k}}_{b}+\boldsymbol{\omega}\times(\boldsymbol{\omega\times
p\hat{\boldsymbol{k}}_{b}})+2\dot{p}\boldsymbol{\omega\times\hat{\boldsymbol{k}}_{b}}$
(60)

where $\tilde{\boldsymbol{B}_{2}}$ is defined in (43). From (45),
$\boldsymbol{\Theta}$ can be written in the form of

$\displaystyle\boldsymbol{\Theta}=\boldsymbol{O}_{3}\tilde{\boldsymbol{u}}+\boldsymbol{O}_{4},$
(61)

where

$\displaystyle\boldsymbol{O}_{3}=\begin{bmatrix}1&\boldsymbol{0}_{1\times
3}\\\ \boldsymbol{0}_{1\times
3}&\boldsymbol{J}^{-1}{\tilde{\boldsymbol{B}}_{1}}^{-1}\end{bmatrix},$ (62)
$\displaystyle\boldsymbol{O}_{4}=\begin{bmatrix}0\\\
-{\tilde{\boldsymbol{B}}_{1}}^{-1}\tilde{\boldsymbol{B}}_{2}-\boldsymbol{J}^{-1}\boldsymbol{\omega}\times(\boldsymbol{J}\boldsymbol{\omega})\end{bmatrix}.$
(63)

Substituting (61) in (58)

$\displaystyle\boldsymbol{s}=\frac{1}{m}\left(\boldsymbol{O}_{1}\boldsymbol{O}_{3}\tilde{\boldsymbol{u}}+\boldsymbol{O}_{1}\boldsymbol{O}_{4}+\boldsymbol{O}_{2}\right)$
(64)

## References

  * [1] K. Peng, G. Cai, B. M. Chen, M. Dong, K. Y. Lum, and T. H. Lee, “Design and implementation of an autonomous flight control law for a uav helicopter,” _Automatica_ , vol. 45, no. 10, pp. 2333–2338, 2009.
  * [2] B. Argrow, D. Lawrence, and E. Rasmussen, “Uav systems for sensor dispersal, telemetry, and visualization in hazardous environments,” in _43rd AIAA Aerospace Sciences Meeting and Exhibit_ , 2005, p. 1237.
  * [3] D. C. Tsouros, S. Bibi, and P. G. Sarigiannidis, “A review on uav-based applications for precision agriculture,” _Information_ , vol. 10, no. 11, p. 349, 2019.
  * [4] A. Puri, “A survey of unmanned aerial vehicles (uav) for traffic surveillance,” _Department of computer science and engineering, University of South Florida_ , pp. 1–29, 2005.
  * [5] H. Surmann, R. Worst, T. Buschmann, A. Leinweber, A. Schmitz, G. Senkowski, and N. Goddemeier, “Integration of uavs in urban search and rescue missions,” in _2019 IEEE International Symposium on Safety, Security, and Rescue Robotics (SSRR)_. IEEE, 2019, pp. 203–209.
  * [6] J. Witczuk, S. Pagacz, A. Zmarz, and M. Cypel, “Exploring the feasibility of unmanned aerial vehicles and thermal imaging for ungulate surveys in forests-preliminary results,” _International Journal of Remote Sensing_ , vol. 39, no. 15-16, pp. 5504–5521, 2018.
  * [7] B. Arbanas, A. Ivanovic, M. Car, T. Haus, M. Orsag, T. Petrovic, and S. Bogdan, “Aerial-ground robotic system for autonomous delivery tasks,” in _2016 IEEE international conference on robotics and automation (ICRA)_. IEEE, 2016, pp. 5463–5468.
  * [8] T. Bailey and H. Durrant-Whyte, “Simultaneous localization and mapping (slam): Part ii,” _IEEE robotics & automation magazine_, vol. 13, no. 3, pp. 108–117, 2006.
  * [9] M. Betke and L. Gurvits, “Mobile robot localization using landmarks,” _IEEE transactions on robotics and automation_ , vol. 13, no. 2, pp. 251–263, 1997.
  * [10] H. Rastgoftar, S. Nersesov, and H. Ashrafiuon, “Continuum deformation coordination of multi-agent systems using cooperative localization,” _arXiv preprint arXiv:2104.09998_ , 2021.
  * [11] R. Sharma and C. Taylor, “Vision based distributed cooperative navigation for mavs in gps denied areas,” in _AIAA Infotech@ Aerospace Conference and AIAA Unmanned… Unlimited Conference_ , 2009, p. 1932.
  * [12] J. S. Jennings, G. Whelan, and W. F. Evans, “Cooperative search and rescue with a team of mobile robots,” in _1997 8th International Conference on Advanced Robotics. Proceedings. ICAR’97_. IEEE, 1997, pp. 193–200.
  * [13] R. Sharma, R. W. Beard, C. N. Taylor, and D. Pack, “Bearing-only cooperative geo-localization using unmanned aerial vehicles,” in _2012 American Control Conference (ACC)_. IEEE, 2012, pp. 3883–3888.
  * [14] S. S. Kia, S. Rounds, and S. Martinez, “Cooperative localization for mobile agents: A recursive decentralized algorithm based on kalman-filter decoupling,” _IEEE Control Systems Magazine_ , vol. 36, no. 2, pp. 86–101, 2016.
  * [15] A. Howard, M. J. Matark, and G. S. Sukhatme, “Localization for mobile robot teams using maximum likelihood estimation,” in _IEEE/RSJ international conference on intelligent robots and systems_ , vol. 1. IEEE, 2002, pp. 434–439.
  * [16] E. D. Nerurkar, S. I. Roumeliotis, and A. Martinelli, “Distributed maximum a posteriori estimation for multi-robot cooperative localization,” in _2009 IEEE International Conference on Robotics and Automation_. IEEE, 2009, pp. 1402–1409.
  * [17] H. Rastgoftar and I. V. Kolmanovsky, “Safe affine transformation-based guidance of a large-scale multi-quadcopter system (mqs),” _IEEE Transactions on Control of Network Systems_ , 2021.
  * [18] H. Rastgoftar, E. M. Atkins, and D. Panagou, “Safe multiquadcopter system continuum deformation over moving frames,” _IEEE Transactions on Control of Network Systems_ , vol. 6, no. 2, pp. 737–749, 2018.
  * [19] D. Simon, _Optimal state estimation: Kalman, H infinity, and nonlinear approaches_. John Wiley & Sons, 2006.
  * [20] P. E. Hart, N. J. Nilsson, and B. Raphael, “A formal basis for the heuristic determination of minimum cost paths,” _IEEE transactions on Systems Science and Cybernetics_ , vol. 4, no. 2, pp. 100–107, 1968.
  * [21] J.-J. E. Slotine, W. Li _et al._ , _Applied nonlinear control_. Prentice hall Englewood Cliffs, NJ, 1991, vol. 199, no. 1.


# Hitachi at SemEval-2023 Task 3: Exploring Cross-lingual Multi-task
Strategies for Genre and Framing Detection in Online News

Yuta Koreeda, Ken-ichi Yokote11footnotemark: 1, Hiroaki Ozaki,
Atsuki Yamaguchi, Masaya Tsunokake Equal contribution Yasuhiro Sogawa
Research and Development Group, Hitachi, Ltd.
Kokubunji, Tokyo, Japan
{yuta.koreeda.pb, kenichi.yokote.fb, hiroaki.ozaki.yu,
atsuki.yamaguchi.xn, masaya.tsunokake.qu<EMAIL_ADDRESS>
###### Abstract

This paper explains the participation of team _Hitachi_ to SemEval-2023 Task 3
“ _Detecting the genre, the framing, and the persuasion techniques in online
news in a multi-lingual setup_.” Based on the multilingual, multi-task nature
of the task and the low-resource setting, we investigated different cross-
lingual and multi-task strategies for training the pretrained language models.
Through extensive experiments, we found that  (a) cross-lingual/multi-task
training, and  (b) collecting an external balanced dataset  , can benefit the
genre and framing detection. We constructed ensemble models from the results
and achieved the highest macro-averaged F1 scores in Italian and Russian genre
categorization subtasks.

##  1 Introduction

As we pay more and more attention to the socially influencing problems like
COVID-19 and the Russo-Ukrainian war, there has been an increasing concern
about _infodemic_ of false and misleading information Piskorski et al. (2023).
In particular, cross-lingual understanding of such information is becoming
more important due to polarization of political stances, economical decoupling
and echo chamber effect in social media. To that end, Piskorski et al. (2023)
put together SemEval-2023 Task 3 “ _Detecting the genre, the framing, and the
persuasion techniques in online news in a multi-lingual setup_.” The shared
task aims to analyze several aspects of what makes a text persuasive and to
foster development of building blocks for multilingual media analysis.

Creating annotated data for media analysis is time consuming thus we cannot
assume that we can obtain training data of enough quality and quantity. To
tackle the problem, we investigated and compared strategies for multilingual
media analysis under a low-resource setting. Through extensive experiments, we
found that  (a) cross-lingual/multi-task training, and  (b) collecting an
external balanced dataset  , can benefit the genre and framing detection. We
constructed ensemble models from the results and participated in genre
categorization (subtask 1) and framing detection (subtask 2) in six languages,
where we achieved the highest macro-averaged F1 scores in Italian and Russian
subtask 1.

##  2 Task Definition and our Strategy

SemEval-2023 Task 3 aims to analyze several aspects of what makes a text
persuasive. It offers three subtasks on news articles in six languages: German
(de), English (en), French (fr), Italian (it), Polish (pl) and Russian (ru).
There are three additional languages (Georgian, Greek and Spanish) without
training datasets (i.e., participants need to perform zero-shot language
transfer).

Subtask 1: News genre categorization

Given a news article, a system has to determine whether it is an opinion
piece, it aims at objective news reporting, or it is a satire piece. This is
multi-class document classification and the official evaluation measure is
macro average F1 score (macro-F1) over the three classes.

Subtask 2: Framing detection

Given a news article, a system has to identify what key aspects (frames) are
highlighted the rhetoric from 14 frames (see Card et al. (2015) for the
taxonomy and definitions). This is multi-label document classification and the
official evaluation measure is micro average F1 score (micro-F1) over the 14
frames.

Subtask 3: Persuasion techniques detection

Given a news article, a system has to identify the persuasion techniques in
each paragraph from 23 persuasion techniques. This is multi-label paragraph
classification.

The target articles are those identified to be potentially spreading
mis-/disinformation and are collected from 2020 to mid-2022. They revolve
around widely discussed topics such as COVID-19, migration, the build-up
leading to the Russo-Ukrainian war, and some country-specific local events
such as elections.

We observed that the numbers of articles are limited for the relative large
label space and there exist considerable overlaps of articles between subtask
1 and 2 (see Section A.1). Hence, we decided to investigate if models trained
on multiple languages or another subtask can benefit the target task in this
low resource setting (Section 5). Since subtask 1 and 2 conveniently share the
task format, we opted to participate in subtask 1 and 2 in all the six
languages.

We also noticed that the English training dataset exhibits significantly
different label distribution to other languages and it is unbalanced. Hence,
we decided to collect additional external dataset for English subtask 1 in a
wish to improve task performance in English and to help with other languages
through cross-lingual training (Section 3).

##  3 External Data for English Genre Categorization

In a preliminary analysis of the English subtask 1 dataset, we found that
label distribution is quite unbalanced and it is different in the training and
the development data. Therefore, we did not make any assumption about the
distribution of the test data and decided to increase the number of rare
labels in order to create a new, balanced dataset for English genre
categorization. First, we undersampled articles from the training dataset for
subtask 1 such that the numbers of articles for each label are equal, i.e.,
ten articles for each label.

Label |  News media
---|---
Satire |  The Onion, Huffington Post Satire, Borowitz Report, The Beaverton, Satire Wire, and Faking News
Reporting |  Wall Street Journal, The Economist, BBC, NPR, ABC, CBS, USA Today, The Guardian, NBC, The Washington Post
Opinion |  Ending The Fed, True Pundit, abcnews.com.co, DC Gazette, Liberty Writers News, Before its News, InfoWars, Real News Right Now
Table 1: The list of news media that we idependently collected the data from

| Satire | Reporting | Opinion |
---|---|---|---|---
Dataset name | O | E | C | O | E | C | O | E | C | Total
Original | 10 | 0 | 0 | 41 | 0 | 0 | 382 | 0 | 0 | 433
Augmented (small) | 10 | 75 | 0 | 10 | 75 | 0 | 10 | 75 | 0 | 255
Augmented (large) | 10 | 75 | 31 | 41 | 75 | 0 | 41 | 75 | 0 | 348

  * O: Official dataset, E: External, existing datasets, C: Collected by us

Table 2: Number of articles from different sources in the original and our
augmented datasets

We referred to a survey on fake news detection datasets D’Ulizia et al. (2021)
and checked a total of 27 datasets to see if they can be converted to subtask
1 dataset format using the following criteria:

Label similarity

We checked whether the labels defined by an external dataset are close to
subtask 1. For example, we focused on whether they used identical label names,
such as “satire”.

Text similarity

We checked if the text type of a dataset is similar to subtask 1, such as
whether they use news articles.

Task similarity

We checked whether the task setting employed by a dataset is a method of
classifying them into different classes rather than, for example, scoring them
with a scale of 1 to 5.

After these checks, we adopted the Random Political News Data Horne and Adali
(2017) which contains 75 articles for each of three labels. We added the total
of 225 articles to the sampled 30 original articles and constructed the
_Augmented (small)_ dataset which contains 255 articles in total.

Since Horne and Adali (2017) disclose the news media from which the data was
collected, we independently collected around 1,000 additional articles from
the sources shown in Table 1. However, we found in a preliminary experiment
that overloading the dataset with external sources did not improve the
performance. Hence we sampled 31 satire articles from the collected data and
sampled more articles from the original dataset. This resulted in _Augmented
(large)_ with 348 articles altogether. The final compositions of the augmented
datasets are summarized in Table 2.

Since Horne and Adali (2017) considered English articles only, we were only
able to obtain external data for English subtask 1. Nevertheless, the
augmented data might be able to benefit non-English and subtask 2 datasets
through pretraining on the augmented English dataset.

Figure 1: Series of random hyperparameter searches for exploring cross-lingual
multi-task strategies. It only shows English subtask 1 and French subtask 2
but we did the same for all other languages in subtask 1 and 2.

##  4 Cross-lingual Multi-task Transformers

We utilized pretrained language models (PLMs) in a simple sequence
classification setup Devlin et al. (2019). We employed XLM-RoBERTa
large111https://huggingface.co/{xlm-roberta-large, rembert, roberta-large}
Conneau et al. (2020) and RemBERT11footnotemark: 1 Chung et al. (2021). For
English, we also utilized RoBERTa large11footnotemark: 1 Liu et al. (2019) for
single-language multi-task training. In order to allow multi-task training, we
added a classifier head for each
subtask222dropout$\rightarrow$linear$\rightarrow$tanh$\rightarrow$dropout$\rightarrow$linear
for (XLM-) RoBERTa, and dropout$\rightarrow$linear for RemBERT on top of each
model’s [CLS] token followed by softmax for subtask 1 and sigmoid for subtask
2. Hence, each model shares most of the parameters for the two subtasks. We
used Transformers library Wolf et al. (2020) for the implementations.

In multi-task training we simply took sum of losses from two tasks. Since
there exist articles that only have either of subtask 1 or 2 labels, we ignore
predictions for missing labels from loss calculation. For cross-lingual
training, we concatenate all articles. All parameters are shared for the same
subtask in different languages. For preprocessing, we concatenated all
sentences from each article and tokenized them using the default tokenizer for
each PLM. We truncated articles whose tokens do not fit onto each model’s
maximum context size.

##  5 Exploring Cross-lingual Multi-task Strategies

It is empirically known that further fine-tuning a model trained in a multi-
task or cross-lingual setting on the target downstream task/language improves
its performance Koreeda et al. (2019). Also, models tend to require different
hyperparameters for different training paradigms or languages. Hence, we
decided to explore different multi-task and cross-lingual strategies through a
series of random hyperparameter searches (Figure 1).

First, we ran a random hyperparameter search in cross-lingual and/or multi-
task settings (Stage I). Regarding the resulting Stage I models as an
additional hyperparameter, we ran another random hyperparameter search to
optimize the choice of the pretraining paradigm along with other
hyperparameters (Stage II). Finally, we construct an ensemble for each
language-subtask pair from all models in Stage I and II using their
performance in the development dataset.

Unlike more sophisticated hyperparameter search methods, this approach has an
advantage that we can compare and evaluate different training paradigms post
hoc.

The choice of the subtask 1 English datasets (Section 3) is also incorporated
as an additional hyperparameter. The hyperparameter search spaces are shown in
Section A.2.

We used the official development dataset for each language-subtask pair in
order to calculate and compare the performance of each model.

###  5.1 Stage I Training

In Stage I, we fine-tuned PLM in three settings.

  1. (1)

Multi-task (30 hyperparameter sets for each language $=$ 180 models)

  2. (2)

Cross-lingual (50 hyperparameter sets for each subtask $=$ 100 models)

  3. (3)

Cross-lingual multi-task (50 hyperparameter sets $=$ 50 models)

Hence, we trained 330 models in Stage I.

###  5.2 Stage II Training

Stage I results in three groups of models that have been trained on each
language-subtask pair. For example, “en subtask 1” in Figure 1 has incoming
arrows from  (1) multi-task (“en subtask 1+2”),  (2) cross-lingual
(“de+en+fr+it+pl+ru subtask 1”), and  (3) cross-lingual multi-task
(“de+en+fr+it+pl+ru subtask 1+2”)  . We also utilize vanilla PLMs for Stage II
training (see the arrow from RoBERTa).

|  Team | macro | micro
---|---|---|---
1 |  UMUTeam | 81.95 | 82.00
|  SheffieldVeraAI | 81.95 | 82.00
|  : | : | :
5 |  MELODI | 77.89 | 78.00
6 |  Hitachi | 77.66 | 76.00
7 |  FTD | 71.27 | 72.00
(a) German (15 teams)

|  Team | macro | micro
---|---|---|---
1 |  MELODI | 78.43 | 81.48
2 |  MLModeler5 | 61.63 | 62.96
|  : | : | :
6 |  Unisa | 58.62 | 61.11
7 |  Hitachi | 55.29 | 59.26
8 |  UnedMediaBiasTeam | 52.36 | 57.41
(b) English (22 teams)

|  Team | macro | micro
---|---|---|---
1 |  UMUTeam | 83.55 | 88.00
2 |  QCRI | 76.74 | 80.00
3 |  Hitachi | 74.36 | 78.00
4 |  DSHacker | 71.05 | 72.00
5 |  SheffieldVeraAI | 68.16 | 74.00
6 |  FTD | 67.14 | 78.00
(c) French (16 teams)

|  Team | macro | micro
---|---|---|---
1 |  Hitachi | 76.83 | 85.25
2 |  QUST | 76.68 | 83.61
3 |  DSHacker | 72.04 | 83.61
|  SheffieldVeraAI | 72.04 | 83.61
5 |  MELODI | 58.67 | 75.41
6 |  UnedMediaBiasTeam | 58.41 | 62.30
(d) Italian (16 teams)

|  Team | macro | micro
---|---|---|---
1 |  FTD | 78.55 | 93.62
2 |  Hitachi | 77.92 | 87.23
3 |  SheffieldVeraAI | 76.45 | 85.11
4 |  MELODI | 70.86 | 85.11
5 |  UMUTeam | 66.43 | 80.85
6 |  SinaaAI | 66.35 | 80.85
(e) Polish (16 teams)

|  Team | macro | micro
---|---|---|---
1 |  Hitachi | 75.49 | 75.00
2 |  SheffieldVeraAI | 72.87 | 72.22
3 |  FTD | 66.80 | 69.44
4 |  UMUTeam | 64.54 | 68.06
5 |  MELODI | 58.64 | 62.50
6 |  QCRI | 56.66 | 65.28
(f) Russian (16 teams)

Table 3: An excerpt from the official leaderboard for subtask 1 showing the rank, macro-F1 and micro-F1 on the single official run on the test split in each language | Team | macro F1 | micro F1
---|---|---|---
1 | Hitachi | 72.93 | 76.79
2 | SheffieldVeraAI | 72.13 | 77.88
3 | MELODI | 68.35 | 76.08
4 | DSHacker | 67.58 | 73.52
5 | UMUTeam | 65.52 | 75.60
6 | MLModeler5 | 61.63 | 62.96
Table 4: An unofficial subtask 1 leaderboard sorted by the mean macro-F1 over
six languages (from Table 3)

For each language-subtask pair, we picked four models from each group,
resulting in 12 models for each language-subtask pair. The four models were
chosen whose macro-F1, micro-F1, ROC-AUC or mAP was the best in the
development dataset for the target language-subtask pair. This means that the
same model can be chosen multiple times (e.g., a model which was the best in
macro-F1 and micro-F1). We did not remove the duplicates in that case — such
model will be sampled twice as much as a model which was the best only in a
single metric.

Regarding these Stage I models and vanilla PLMs as an additional
hyperparameter, we carried out Stage II random hyperparameter search on each
language. We sampled Stage I models three times more than PLMs, so that all
groups (i.e., the four arrows entering “en subtask 1” in Figure 1) are sampled
equally. We trained 50 models for each language-subtask pair (50 models
$\times$ 6 languages $\times$ 2 subtasks $=$ 600 models).

Figure 2: Comparison of subtask 1 macro-F1 (the development dataset) under
different training paradigms (CL: cross-lingual/MT: multi-task) Figure 3: The
effect of different training datasets in the development dataset for English
subtask 1

###  5.3 Ensembling

Finally, we created an ensemble for each language-subtask pair from the
results of hyperparameter search. In a rare case, fine-tuning the model on the
downstream task can degrade the performance. Hence, we also considered the
Stage I models for the ensemble.

We implemented multiple ensemble methods. Due the scarcity of the development
data, the results tend to be unstable. Hence, we manually chose the best one
for each language-subtask pair while monitoring multiple leave-one-out metrics
on the development dataset. This allowed us to choose models that are not only
overfitting to a single metric. The details of ensembling are described in
Section A.3.

##  6 Results

###  6.1 Subtask 1: News Genre Categorization

Excerpts from the official leaderboards Piskorski et al. (2023) for subtask 1
are shown in Table 3. We were the first place in Italian and Russian and
within top threes in French and Polish. In an unofficial ranking of mean
macro-F1 of six languages, we were the first place (Table 4).

In Figure 2, we show macro-F1 for the development dataset of all the models
considered for the ensemble construction. In all six languages, the models
fine-tuned from cross-lingual and/or multi-lingual pretraining tend to perform
better (i.e., have better median macro-F1) than the single language/task
models trained from PLM (“PLM $\rightarrow$ Stage II”). This shows that cross-
lingual multi-task training was overall useful for genre categorization. In
most cases, fine-tuning Stage I models in Stage II yields better results than
the vanilla Stage I models.

The breakdown of the performance based on how each model was pretrained in
Stage I is also shown in the Figure 2. The results are mixed as to which Stage
I pretraining paradigms were useful to the Stage II downstream performance. In
German, French and Italian, cross-lingual pretraining tends to be more
beneficial than multi-task pretraining. In English, Polish and Russian, multi-
task pretraining tends to be more beneficial. Interestingly, the combination
of the both was never the best option in any language.

We analyzed the effect of incorporating external, balanced datasets for
English subtask 1 (Figure 3). When directly fine-tuning PLM in Stage II, we
see that models using either of external datasets tend to be considerably
better than ones trained on the original training data. For both conditions,
we can see that Augmented (large) tend to perform better than Augmented
(small). This shows that obtaining a balanced dataset is important for news
genre categorization.

###  6.2 Subtask 2: Framing Detection

Excerpts from the official leaderboards Piskorski et al. (2023) for subtask 2
are shown in Table 5. We were third to fifth places in all but Russian where
we obtained the ninth place.

In Figure 4, we show micro-F1 for the development dataset of all the models
considered for the ensemble construction. As in subtask 1, the models fine-
tuned from cross-lingual and/or multi-lingual pretraining tend to perform
better than the single language/task models fine-tuned directly from PLM. This
suggests that cross-lingual multi-task training was also useful for framing
detection.

In all languages in subtask 2, cross-lingual Stage II pretraining tends to
result in better micro-F1 than multi-task models (Figure 4). We suspect that
this lies in the difference in the linguistic nature of two subtasks; Framing
can be determined by lexical semantic to some extent, hence transfers well
across different languages with multilingual transformers. On the other hand,
distinguishing the genre requires capturing language-specific pragmatics which
may be the reason why it did not transfer between languages as effectively as
subtask 2.

|  Team | micro | macro
---|---|---|---
1 |  MarsEclipse | 71.12 | 66.05
2 |  QCRI | 66.02 | 60.56
3 |  SheffieldVeraAI | 65.25 | 60.14
4 |  TeamAmpa | 63.22 | 57.27
5 |  Hitachi | 62.91 | 56.73
6 |  mCPTP | 62.22 | 56.44
(a) German (18 teams)

|  Team | micro | macro
---|---|---|---
1 |  SheffieldVeraAI | 57.89 | 53.90
2 |  TeamAmpa | 56.70 | 50.96
3 |  MarsEclipse | 56.23 | 49.05
4 |  Hitachi | 54.26 | 47.16
5 |  mCPTP | 53.53 | 48.17
6 |  QUST | 51.31 | 46.21
(b) English (22 teams)

|  Team | micro | macro
---|---|---|---
1 |  MarsEclipse | 55.28 | 53.68
2 |  BERTastic | 53.69 | 52.02
3 |  SheffieldVeraAI | 53.42 | 52.03
4 |  Hitachi | 51.41 | 48.83
5 |  TeamAmpa | 50.56 | 47.89
6 |  TheSyllogist | 48.57 | 46.16
(c) French (18 teams)

|  Team | micro | macro
---|---|---|---
1 |  MarsEclipse | 61.73 | 54.46
2 |  QCRI | 59.91 | 47.95
3 |  Hitachi | 59.77 | 51.51
4 |  TeamAmpa | 59.67 | 48.27
5 |  mCPTP | 58.41 | 46.88
6 |  UMUTeam | 57.63 | 44.67
(d) Italian (18 teams)

|  Team | micro | macro
---|---|---|---
1 |  MarsEclipse | 67.31 | 63.84
2 |  SheffieldVeraAI | 64.52 | 60.27
3 |  QCRI | 64.19 | 59.87
4 |  UMUTeam | 64.18 | 59.31
5 |  Hitachi | 63.40 | 58.40
6 |  SATLab | 62.02 | 56.99
(e) Polish (18 teams)

|  Team | micro | macro
---|---|---|---
1 |  MarsEclipse | 44.98 | 30.33
2 |  SheffieldVeraAI | 44.14 | 35.59
|  : | : | :
8 |  UMUTeam | 38.49 | 28.84
9 |  Hitachi | 37.00 | 32.59
10 |  Riga | 31.51 | 22.19
(f) Russian (17 teams)

Table 5: An excerpt from the official leaderboard for subtask 2 showing the rank, micro-F1 and macro-F1 on the single official run on the test split in each language Figure 4: Comparison of subtask 2 micro-F1 (the develpment dataset) under different training paradigms (CL: cross-lingual/MT: multi-task) | Team | micro F1 | macro F1
---|---|---|---
1 | MarsEclipse | 59.44 | 52.90
2 | SheffieldVeraAI | 57.05 | 51.85
3 | QCRI | 55.47 | 48.29
4 | TeamAmpa | 55.41 | 48.22
5 | Hitachi | 54.79 | 49.20
6 | mCPTP | 53.60 | 47.74
Table 6: An unofficial subtask 2 leaderboard sorted by the mean micro-F1 in
six languages (from Table 3)

##  7 Related Work

There exist several studies on multilingual and/or multi-task learning in the
context of media analysis. Uyangodage et al. (2021) applied cross-lingual
training to multilingual false information detection and showed that cross-
lingual training results in on par performance to monolingual training. Alam
et al. (2021a, b) annotated Tweets in multiple languages with multiple choice
questions regarding COVID-19 disinformation. They fine-tuned mBERT model
Devlin et al. (2019) in a cross-lingual setup and in a multi-task setup, and
found that the results are mixed in terms of their benefits. The SemEval 2023
Task 3 dataset Piskorski et al. (2023) exhibits significantly different
properties to the datasets previous works used and we found that cross-lingual
and/or multi-task learning help in this dataset. We also carried out more
thorough experiments than the previous works, which might have been the key to
the improvement.

There also exist different approaches for multilingual and low-resource
settings in broader domains. Reimers and Gurevych (2020) proposed a method for
training multilingual sentence embeddings and demonstrated its effectiveness
in 50+ languages. In a low-resource setup, Heinisch et al. (2022) used a data
augmentation approach that retrieves additional data from related datasets by
automatically labeling them. We only explored BERT-based approach in this
work, but we wish to explore other approaches for cross-lingual multi-task
learning in the future.

##  8 Conclusion

In our participation to SemEval-2023 Task 3, we investigated different
strategies for multilingual genre and framing detection. Through the extensive
experiments, we found that collecting an external balanced dataset can help
genre categorization. We also find that cross-lingual and multi-task training
can help both genre and framing detection and found that cross-lingual
training is more beneficial for framing detection. We constructed ensemble
models from the results and achieved the highest macro-F1 in Italian and
Russian genre detection.

For future work, we will investigate the effect of cross-lingual multi-task
training on zero-shot language transfer (Greek, Spanish and Georgian subtasks
that we did not participate), as well as the effect on and benefit from
training models on persuasion techniques detection (subtask 3).

## Acknowledgements

We used computational resource of AI Bridging Cloud Infrastructure (ABCI)
provided by the National Institute of Advanced Industrial Science and
Technology (AIST) for the experiments.

We would like to thank Gaku Morio and Yuichi Sasazawa for their valuable
feedbacks. We would also like to thank Dr. Masaaki Shimizu for helping us with
the computational resources.

## References

  * Alam et al. (2021a) Firoj Alam, Fahim Dalvi, Shaden Shaar, Nadir Durrani, Hamdy Mubarak, Alex Nikolov, Giovanni Da San Martino, Ahmed Abdelali, Hassan Sajjad, Kareem Darwish, et al. 2021a.  Fighting the COVID-19 Infodemic in Social Media: a Holistic Perspective and a Call to Arms.  In _Proceedings of the International AAAI Conference on Web and Social Media_ , volume 15, pages 913–922.
  * Alam et al. (2021b) Firoj Alam, Shaden Shaar, Fahim Dalvi, Hassan Sajjad, Alex Nikolov, Hamdy Mubarak, Giovanni Da San Martino, Ahmed Abdelali, Nadir Durrani, Kareem Darwish, Abdulaziz Al-Homaid, Wajdi Zaghouani, Tommaso Caselli, Gijs Danoe, Friso Stolk, Britt Bruntink, and Preslav Nakov. 2021b.  Fighting the COVID-19 Infodemic: Modeling the Perspective of Journalists, Fact-Checkers, Social Media Platforms, Policy Makers, and the Society.  In _Findings of the Association for Computational Linguistics: EMNLP 2021_.
  * Card et al. (2015) Dallas Card, Amber E. Boydstun, Justin H. Gross, Philip Resnik, and Noah A. Smith. 2015.  The Media Frames Corpus: Annotations of Frames Across Issues.  In _Proceedings of the 53rd Annual Meeting of the Association for Computational Linguistics and the 7th International Joint Conference on Natural Language Processing_.
  * Chung et al. (2021) Hyung Won Chung, Thibault Fevry, Henry Tsai, Melvin Johnson, and Sebastian Ruder. 2021.  Rethinking Embedding Coupling in Pre-trained Language Models.  In _International Conference on Learning Representations_.
  * Conneau et al. (2020) Alexis Conneau, Kartikay Khandelwal, Naman Goyal, Vishrav Chaudhary, Guillaume Wenzek, Francisco Guzmán, Edouard Grave, Myle Ott, Luke Zettlemoyer, and Veselin Stoyanov. 2020.  Unsupervised Cross-lingual Representation Learning at Scale.  In _Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics_.
  * Devlin et al. (2019) Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. 2019.  BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding.  In _Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies_.
  * D’Ulizia et al. (2021) Arianna D’Ulizia, Maria Chiara Caschera, Fernando Ferri, and Patrizia Grifoni. 2021.  Fake News Detection: a Survey of Evaluation Datasets.  _PeerJ Computer Science_ , 7:e518.
  * Heinisch et al. (2022) Philipp Heinisch, Moritz Plenz, Juri Opitz, Anette Frank, and Philipp Cimiano. 2022\.  Data Augmentation for Improving the Prediction of Validity and Novelty of Argumentative Conclusions.  In _Proceedings of the 9th Workshop on Argument Mining_.
  * Horne and Adali (2017) Benjamin Horne and Sibel Adali. 2017.  This Just In: Fake News Packs a Lot in Title, Uses Simpler, Repetitive Content in Text Body, More Similar to Satire than Real News.  In _Proceedings of the International AAAI Conference on Web and Social Media_.
  * Koreeda et al. (2019) Yuta Koreeda, Gaku Morio, Terufumi Morishita, Hiroaki Ozaki, and Kohsuke Yanai. 2019\.  Hitachi at MRP 2019: Unified Encoder-to-Biaffine Network for Cross-Framework Meaning Representation Parsing.  In _Proceedings of the Shared Task on Cross-Framework Meaning Representation Parsing at the 2019 Conference on Natural Language Learning_.
  * Liu et al. (2019) Yinhan Liu, Myle Ott, Naman Goyal, Jingfei Du, Mandar Joshi, Danqi Chen, Omer Levy, Mike Lewis, Luke Zettlemoyer, and Veselin Stoyanov. 2019.  RoBERTa: A Robustly Optimized BERT Pretraining Approach.
  * Piskorski et al. (2023) Jakub Piskorski, Nicolas Stefanovitch, Giovanni Da San Martino, and Preslav Nakov. 2023.  SemEval-2023 Task 3: Detecting the Category, the Framing, and the Persuasion Techniques in Online News in a Multi-lingual Setup.  In _Proceedings of the 17th International Workshop on Semantic Evaluation_.
  * Reimers and Gurevych (2020) Nils Reimers and Iryna Gurevych. 2020.  Making Monolingual Sentence Embeddings Multilingual using Knowledge Distillation.  In _Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing (EMNLP)_.
  * Uyangodage et al. (2021) Lasitha Uyangodage, Tharindu Ranasinghe, and Hansi Hettiarachchi. 2021.  Can Multilingual Transformers Fight the COVID-19 Infodemic? In _Proceedings of the International Conference on Recent Advances in Natural Language Processing (RANLP 2021)_.
  * Wolf et al. (2020) Thomas Wolf, Lysandre Debut, Victor Sanh, Julien Chaumond, Clement Delangue, Anthony Moi, Pierric Cistac, Tim Rault, Remi Louf, Morgan Funtowicz, Joe Davison, Sam Shleifer, Patrick von Platen, Clara Ma, Yacine Jernite, Julien Plu, Canwen Xu, Teven Le Scao, Sylvain Gugger, Mariama Drame, Quentin Lhoest, and Alexander Rush. 2020.  Transformers: State-of-the-Art Natural Language Processing.  In _Proceedings of the 2020 Conference on Empirical Methods in Natural Language Processing_.

##  Appendix A Appendix

###  A.1 Data Analysis

Language | Subtask 1 | Subtask 2 | Overlap
---|---|---|---
Germany (de) | 132 | 132 | 97
English (en) | 433 | 433 | 433
French (fr) | 157 | 158 | 119
Italian (it) | 226 | 227 | 170
Polish (pl) | 144 | 145 | 106
Russiun (ru) | 142 | 143 | 107
Table 7: Numbers of articles in subtask 1 and 2 training data, and their
overlaps

Numbers of articles in each subtask and their overlaps are summarized in Table
7. We can see that the numbers of articles are limited for the relative large
label space and there exist considerable overlaps of articles between subtask
1 and 2.

Readers should refer Piskorski et al. (2023) for the details on the datasets.

###  A.2 Details of Hyperparameter Search

Hyperparameter |  Values
---|---
Base model |  XLM-RoBERTa large, RemBERT
Dataset |  All, All but English
Classwise training |  No
Max steps |  100, 200, 300
Learning rate |  30, 20, 15, 10, 8, 5 ($\times 10^{\text{-}6}$)
Batch size |  32, 64
Weight decay |  0.02, 0.01, 0.001
Loss scaling |  Yes, No
Loss scale threshold |  N/A, 5, 10,000
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 8: Hyperparamter search space for Stage I cross-lingual multi-task training Hyperparameter |  Values
---|---
Base model |  XLM-RoBERTa large, RemBERT
Dataset |  All, All but English
Max steps |  100, 200, 300
Learning rate |  30, 20, 15, 10, 8, 5 ($\times 10^{\text{-}6}$)
Batch size |  32, 64
Weight decay |  0.02, 0.01, 0.001
Loss scaling |  Yes, No
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 9: Hyperparamter search space for Stage I cross-lingual training subtask 1 Hyperparameter |  Values
---|---
Base model |  XLM-RoBERTa large, RemBERT
Dataset |  All, All but English
Classwise training |  No
Max steps |  100, 200, 300
Learning rate |  30, 20, 15, 10, 8, 5 ($\times 10^{\text{-}6}$)
Batch size |  32, 64
Weight decay |  0.02, 0.01, 0.001
Loss scale threshold |  N/A, 5, 10,000
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 10: Hyperparamter search space for Stage I cross-lingual training of subtask 2 Hyperparameter |  Values
---|---
Base model |  RoBERTa large
Dataset |  Aug. (large) + official subtask 2 dataset, Aug. (small) + official subtask 2 dataset
Max steps |  80, 120, 160, 200
Learning rate |  80, 6, 5, 4, 2 ($\times 10^{\text{-}6}$)
Batch size |  32, 64
Weight decay |  0.02, 0.01, 0.001
Loss scaling |  Yes, No
Loss scale threshold |  N/A, 5, 10,000
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 11: Hyperparamter search space for Stage I multi-task training of English subtask 1 and 2 Hyperparameter |  Values
---|---
Base model |  XLM-RoBERTa large, RemBERT
Dataset |  Official subtask 1 and 2 datasets in each language
Max steps |  80, 120, 160, 200
Learning rate |  15, 12, 10, 8, 6, 4 ($\times 10^{\text{-}6}$)
Batch size |  16, 32
Weight decay |  0.02, 0.01, 0.001
Loss scaling |  Yes, No
Loss scale threshold |  N/A, 5, 10,000
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 12: Hyperparamter search space for Stage I multi-task training of a
single language (German, French, Italian, Polish or Russian)

As described in Section 5, we carried out the extensive experiments as a
series of hyperparameter searches. In this section, we will list and describe
all the hyperparamter search spaces of Stage I and II training.

The hyperparameter search spaces of Stage I training are listed as in the
following:

  * •

Cross-lingual multi-task: Table 8

  * •

Cross-lingual Table 9 and 10

  * •

Multi-task: Table 11 and 12

The hyperparameter search spaces of Stage II training are listed in the
following:

  * •

Subtask 1 in English: Table 13

  * •

Subtask 1 in all other languages: Table 14

  * •

Subtask 2 in English: Table 15

  * •

Subtask 2 in all other languages: Table 16

We introduced a loss weighting technique and introduced it as an additional
hyperparameters. Since label distributions are highly skewed in subtask 1, we
weight losses for each label $\mathcal{L}_{l}$
($l\in\\{satire,opinion,reporting\\}$) by $w_{l}$ (i.e.,
$\mathcal{L}^{\prime}_{l}=w_{l}\cdot\mathcal{L}_{l}$) such that they are
inversely proportional to the count of each label $c_{l}$ (i.e., $w_{l}\propto
1/c_{l}$) while adding up to 1 (i.e., $\sum\nolimits_{l}w_{l}=1$).

$w_{l}=\frac{\text{hmean}(c_{satire}+c_{opinion}+c_{reporting})}{c_{l}},$ (1)

where hmean is harmonic mean.

For subtask 2, we carried out the classification in both a single multi-label
classification and multiple, separate binary classifications. We have also
regarded the choice of the classification method as a hyperparamter and
incorporated this into the random search in Stage II (“classwise”).

Hyperparameter |  Values
---|---
Base model |  RoBERTa large, Stage I models
Dataset |  Aug. (small), Aug. (large)
Max steps |
| if PLM |  100, 150, 200
| if Stage I |  30, 50, 80, 100, 150
Learning rate |
| if PLM |  20, 15, 10, 8, 6, 4, 3, 2 ($\times 10^{\text{-}6}$)
| if Stage I |  10, 8, 6, 5, 4, 2 ($\times 10^{\text{-}6}$)
Batch size |  16, 32
Weight decay |  0.02, 0.01, 0.001
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 13: Hyperparamter search space for Stage II training of English subtask 1 Hyperparameter |  Values
---|---
Base model |  XLM-RoBERTa large, RemBERT, Stage 1 models
Dataset |  Official dataset for each language
Max steps |
| if PLM |  160, 200, 240
| if Stage I |  30, 50, 80, 100, 150
Learning rate |
| if PLM |  15, 12, 10, 8, 5 ($\times 10^{\text{-}6}$)
| if Stage I |  10, 8, 6, 5, 4, 2 ($\times 10^{\text{-}6}$)
Batch size |  16, 32
Weight decay |  0.02, 0.01, 0.001
Loss scaling) |  Yes, No
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 14: Hyperparamter search space for Stage II training of German, French, Italian, Polish and Russian subtask 1 Hyperparameter |  Values
---|---
Base model |  RoBERTa large, Stage I models
Dataset |  Official dataset
Classwise training |  Yes, No
Max steps |
| if PLM |  100, 150, 200
| if Stage I w/ classwise |  80, 100, 120, 140
| if Stage I w/o classwise |  80, 100, 120, 140, 180
Learning rate |
| if for PLM |  20, 15, 12, 10, 8, 6 ($\times 10^{\text{-}6}$)
| if Stage I |  15, 12, 10, 8, 6, 4, 1 ($\times 10^{\text{-}6}$)
Batch size |  16, 32
Weight decay |  0.02, 0.01, 0.001
Loss scale threshold |  N/A, 5, 10,000
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 15: Hyperparamter search space for Stage II training of English subtask 2 Hyperparameter |  Values
---|---
Base model |  XLM-RoBERTa large, RemBERT, Stage I models
Dataset |  Official dataset
Classwise training |  Yes, No
Max steps |
| if PLM |  160, 200, 240, 280
| if Stage I w/ classwise |  80, 100, 120, 140
| if Stage I w/o classwise |  80, 100, 120, 140, 180
Learning rate |
| if for PLM |  15, 12, 10, 8, 6, 4 ($\times 10^{\text{-}6}$)
| if Stage I |  15, 12, 10, 8, 6, 4, 1 ($\times 10^{\text{-}6}$)
Batch size |  16, 32
Weight decay |  0.02, 0.01, 0.001
Loss scale threshold |  N/A, 5, 10,000
Gradient clipping |  1.0
Warmup ratio |  0.2
Table 16: Hyperparamter search space for Stage II training of German, French,
Italian, Polish and Russian subtask 2

###  A.3 Details of Ensemble Construction

We created an ensemble for each language-subtask pair from the results of
hyperparameter search. As outlined in Section 5.3, we implemented multiple
ensemble methods and manually chose the best one for each language-subtask
pair. Here, we show the details of ensemble construction and selection on each
subtask.

####  A.3.1 Ensembles for Subtask 1

For subtask 1, we implemented three ensemble methods:

Top one

We choose the best model with the best macro-F1 in the development dataset.

Top 3 average

We picked three models based on the macro-F1 score in the development dataset.
We take an average of the output probabilities (i.e., scores after softmax).

Bootstrap bagging

We greedily add models to average ensemble with replacement until the score no
longer improves or the ensemble size reaches five. We use the minimum F1 score
of all the classes. This idea of trying to improve the worst-class performance
was inspired by distributionally robust optimization.

We also considered different pools of candidate models to construct the
ensembles from. Specifically, we either created an ensemble from  (i) all the
models from Stage I and II, and  (ii) the models only from Stage II (i.e.,
only models that are fine-tuned on the target language)  .

| Ensemble | Postprocess
---|---|---
Language | Method | Candidates | Reweighting | Relabeling
English | Top 3 | Stage I & II | 1.5 | Yes
French | Top 3 | Stage II | 1.5 | N/A
German | Top 3 | Stage II | 1.5 | N/A
Italian | Top 3 | Stage I & II | 20.0 | N/A
Polish | Bagging | Stage II | 1.5 | N/A
Russian | Top 3 | Stage I & II | 1.0 | N/A

  * See Section A.3.1 for the description of each column.

Table 17: The selected ensemble method for each language in subtask 1

| Language
---|---
Label |  English |  French |  German |  Italian |  Polish |  Russian
Capacity and resources |  Top3 (AP)* |  Top3 (ROC) |  Top1 (F1)* |  Top5 (ROC)* |  Top3 (ROC) |  Top3 (F1)*
Crime and punishment |  Bagging* |  Top5 (F1) |  Bagging |  Top3 (F1) |  Top3 (ROC)* |  Top5 (F1)*
Cultural identity |  Top5 (ROC)* |  Top1 (F1)* |  Top5 (F1) |  Top5 (F1)* |  Top5 (F1)* |  Top3 (AP)*
Economic |  Bagging* |  Top1 (F1) |  Top5 (ROC) |  Top5 (F1)* |  Top3 (AP)* |  Top3 (F1)
External regulation and reputation |  Top3 (F1)* |  Top5 (F1)* |  Top1 (F1) |  Top3 (AP) |  Top3 (AP) |  Top3 (ROC)*
Fairness and equality |  Top3 (AP) |  Bagging* |  Top3 (AP) |  Top3 (AP)* |  Top3 (F1) |  Top5 (F1)
Health and safety |  Top5 (ROC) |  Top5 (ROC)* |  Top3 (F1)* |  Top5 (ROC)* |  Top3 (ROC) |  Top5 (F1)
Legality, constitutionality and jurisprudence |  Bagging |  Top3 (ROC)* |  Top3 (F1) |  Top5 (F1)* |  Top5 (F1)* |  Top5 (F1)*
Morality |  Top5 (AP)* |  Top3 (AP)* |  Top3 (F1)* |  Top5 (F1) |  Top1 (F1) |  Top3 (AP)*
Policy prescription and evaluation |  Stacking* |  Top3 (AP)* |  Top5 (ROC)* |  Bagging* |  Top3 (ROC)* |  Top3 (AP)*
Political |  Top5 (F1)* |  Top3 (AP) |  Top3 (AP) |  Top3 (F1) |  Top3 (ROC)* |  Top3 (AP)
Public opinion |  Top3 (F1)* |  Top5 (F1)* |  Top1 (F1)* |  Top3 (F1) |  Top5 (F1) |  Top3 (AP)
Quality of life |  Top3 (AP)* |  Top1 (F1) |  Top5 (ROC)* |  Top3 (F1) |  Top3 (ROC) |  Top3 (ROC)*
Security and defense |  Bagging* |  Top3 (ROC) |  Top3 (AP) |  Top5 (F1) |  Top5 (F1)* |  Top5 (ROC)

  * * Chooses models from both Stage I and II. Otherwise, models are chosen only from Stage II. See Section A.3.2 for the details about the ensemble methods.

Table 18: The selected ensemble method for each language in subtask 2

Due to the highly imbalanced label distribution, especially the lack of satire
pieces in the training dataset, we introduced two postprocessing methods at
the ensembling stage:

Probability reweighting

We multiply the probability for satire label by a value, followed by
renormalization of the probabilities by their sum.

Heuristics-based relabeling

The model tend to output the opinion label more than other labels in English,
even though we balanced the training dataset (Section 3). Hence, we converted
a portion of predicted opinion labels to other labels with heuristics. First,
we selected documents whose words consist of more than 0.8% CARDINAL named
entities333We used spaCy (https://spacy.io/) for named entity recognition..
This is based on the intuition that both satire and reporting pieces tend to
utilize numbers to be more persuasive. We then relabeled the selected
documents with satire label if it contains “!” or “?”. Otherwise, they were
relabeled with reporting label.

The model pools and the postprocessing methods were also considered as an
option and we compared all the combinations of the ensemble methods, the model
pools and the postprocessing methods.

Due the scarcity of the development data, the results tend to be unstable.
Hence, we manually chose the best ensemble type for each language with
following criteria while monitoring leave-one-out metrics on the development
dataset.

  * •

We try to choose model with a good class score balance (i.e., good macro-F1)
and good general classification abilities (good mAP and ROC-AUC).

  * •

Unless the difference is unbearably large, we tried to avoid top one model as
it can be unstable.

After choosing the best ensemble method, model pool and postprocessing method
for each language, we recreated the ensemble using the whole development
dataset. The selected ensemble method for each language is shown in Table 17.

####  A.3.2 Ensembles for Subtask 2

For subtask 2, we implemented nine ensemble methods:

Top one

We choose the best model with the best macro-F1 in the development dataset.

Top $n$ average

We picked $n$ models based on the score in the development dataset. We take
average of the output probabilities (i.e., score after the sigmoid). We
adopted ranking by  (1) F1 score with $n=3$,  (2) average precision score with
$n=3$,  (3) ROC-AUC score with $n=3$,  (4) F1 score with $n=5$,  (5) average
precision score with $n=5$, and  (6) ROC-AUC score with $n=5$ .

Bootstrap bagging

Same as subtask 1 but we optimize F1 score.

Stacking ensemble

We fit lasso regression classifier on the development dataset ($C=1.0$),
regarding probability from each model as a feature.

As in subtask 1, we considered different pools of candidate models to
construct the ensembles from (Section A.3.1).

We manually chose the best ensemble method and model pool for each language-
_label_ pair in the same way as subtask 1. The selected ensemble method for
each language-label pair is shown in Table 18.