Input: What is the name of the generative interactive model used in the method?

Context:
\section{Introduction}
In recent years, vehicular technology has attracted significant attention from the automotive and telecommunication industries, leading to the emergence of vehicle-to-everything (V2X) communications for improving road safety, traffic management services and driving comfort.
V2X supported by the sixth generation (6G) is envisioned to be a key enabler of future connected autonomous vehicles \cite{9779322}. Although its transformative benefits for leveraging intelligent transportation systems, V2X still face several technical issues mainly related to performance and security.

The integration of sensing and communication (ISAC) has emerged very recently as a revolutionary element of 6G that could potentially help enabling adaptive learning and intelligent decision-making in future V2X applications.
The combination of sensing and communication allows vehicles to perceive their surroundings better, predict manoeuvres from nearby users and make intelligent decisions, thus paving the way toward a safer transportation system \cite{9665433}.
Modernized vehicles are augmented with various types of sensors divided into exteroceptive to observe their surrounding environment and proprioceptive to observe their internal states.
The former like GPS, Lidar, and Cameras are conveyed to improve situational awareness, while latter sensors, such as steering, pedal, and wheel speed, convey to improve self-awareness.

While sensing the environment, vehicles can exchange messages that assist in improving situational- and self-awareness and in coordinating maneuvers with other vehicles.
Those messages like the basic safety (BSMs) and cooperative awareness messages (CAMs) are composed of transmitting vehicle's states such as position and velocity and other vehicles' states in the vicinity. Vehicles might use their sensors, such as cameras and Lidar, to detect road users (e.g., pedestrians), which can be communicated with other road users via the V2X messages to improve the overall performance. However, V2X communication links carrying those messages are inherently vulnerable to malicious attacks due to the open and shared nature of the wireless spectrum among vehicles and other cellular users \cite{8336901}. For instance, a jammer in the vicinity might alter the information to be communicated to nearby vehicles/users or can intentionally disrupt communication between a platoon of vehicles making the legitimate signals unrecognizable for on-board units (OBUs) and/or road side units (RSUs) that endanger vehicular safety
\cite{8553649}.

In addition, the integrity of GPS signals and the correct acquisition of navigation data to compute position, velocity and time information is critical in V2X applications for their safe operation. However, since civil GPS receivers rely on unencrypted satellite signals, spoofers can easily replicate them by deceiving the GPS receiver to compute falsified positions \cite{9226611}.
Also, the long distance between satellites and terrestrial GPS receivers leads to an extremely weak signal that can be easily drowned out by a spoofer.
Thus, GPS sensors' vulnerability to spoofing attacks poses a severe threat that might be causing vehicles to be out of control or even hijacked and endanger human life \cite{9881548}.
Therefore, GPS spoofing attacks and jamming interference needs to be controlled and detected in real-time to reach secured vehicular communications allowing vehicles to securely talk to each other and interact with the infrastructure (e.g., roadside terminals, base stations) \cite{9860410}.

Existing methods for GPS spoofing detection include GPS signal analysis methods and GPS message encryption methods \cite{9845684}. However, the former requires the ground truth source during the detection process, which is not always possible to collect. In contrast, the latter involves support from a secured infrastructure and advanced computing resources on GPS receivers, which hinders their adoption in V2X applications. On the other hand, existing methods for jammer detection in vehicular networks are based on analysing the packet drop rate as in \cite{9484071}, making it difficult to detect an advanced jammer manipulating the legitimate signal instead of disrupting it.
In this work, we propose a method to jointly detect GPS spoofing and jamming attacks in the V2X network. A coupled generalized dynamic Bayesian network (C-GDBN) is employed to learn the interaction between RF signals received by the RSU from multiple vehicles and their corresponding trajectories. This integration of vehicles' positional information with vehicle-to-infrastructure (V2I) communications allows semantic learning while mapping RF signals with vehicles' trajectories and enables the RSU to jointly predict the RF signals it expects to receive from the vehicles from which it can anticipate the expected trajectories.

The main contributions of this paper can be summarized as follows: \textit{i)} A joint GPS spoofing and jamming detection method is proposed for the V2X scenario, which is based on learning a generative interactive model as the C-GDBN. Such a model encodes the cross-correlation between the RF signals transmitted by multiple vehicles and their trajectories, where their semantic meaning is coupled stochastically at a high abstraction level. \textit{ii)} A cognitive RSU equipped with the acquired C-GDBN can predict and estimate vehicle positions based on real-time RF signals. This allows RSU to evaluate whether both RF signals and vehicles' trajectories are evolving according to the dynamic rules encoded in the C-GDBN and, consequently, to identify the cause (i.e., a jammer attacking the V2I or a spoofer attacking the satellite link) of the abnormal behaviour that occurred in the V2X environment. \textit{iii)} Extensive simulation results demonstrate that the proposed method accurately estimates the vehicles' trajectories from the predicted RF signals, effectively detect any abnormal behaviour and identify the type of abnormality occurring with high detection probabilities.
To our best knowledge, this is the first work that studies the joint detection of jamming and spoofing in V2X systems.

\section{System model and problem formulation}
The system model depicted in Fig.~\ref{fig_SystemModel}, includes a single cell vehicular network consisting of a road side unit (RSU) located at $\mathrm{p}_{R}=[{x}_{R},{y}_{R}]$, a road side jammer (RSJ) located at $\mathrm{p}_{J}=[{x}_{J},{y}_{J}]$, a road side spoofer (RSS) located at $\mathrm{p}_{s}=[{x}_{s},{y}_{s}]$ and $N$ vehicles moving along multi-lane road in an urban area. The time-varying positions of the $n$-th vehicle is given by $\mathrm{p}_{n,t}=[{x}_{n,t},{y}_{n,t}]$ where $n \in N$. Among the $K$ orthogonal subchannels available for the Vehicle-to-Infrastructure (V2I) communications, RSU assigns one V2I link to each vehicle. Each vehicle exchanges messages composed of the vehicle's state (i.e., position and velocity) with RSU through the $k$-th V2I link by transmitting a signal $\textrm{x}_{t,k}$ carrying those messages at each time instant $t$ where $k \in K$. We consider a reactive RSJ that aims to attack the V2I link by injecting intentional interference to the communication link between vehicles and RSU to alter the transmitted signals by the vehicles. In contrast, the RSS purposes to mislead the vehicles by spoofing the GPS signal and so registering wrong GPS positions. RSU aims to detect both the spoofer on the satellite link and the jammer on multiple V2I links in order to take effective actions and protect the vehicular network.
The joint GPS spoofing and jamming detection problem can be formulated as the following ternary hypothesis test:
\begin{equation}
    \begin{cases}
        \mathcal{H}_{0}: \mathrm{z}_{t,k} = \mathrm{g}_{t,k}^{nR} \mathrm{x}_{t,k} + \mathrm{v}_{t,k}, \\
        \mathcal{H}_{1}: \mathrm{z}_{t,k} = \mathrm{g}_{t,k}^{nR} \mathrm{x}_{t,k} + \mathrm{g}_{t,k}^{JR} \mathrm{x}_{t,k}^{j} + \mathrm{v}_{t,k}, \\
        \mathcal{H}_{2}: \mathrm{z}_{t,k} = \mathrm{g}_{t,k}^{nR} \mathrm{x}_{t,k}^{*} + \mathrm{v}_{t,k},
    \end{cases}
\end{equation}
where $\mathcal{H}_{0}$, $\mathcal{H}_{1}$ and $\mathcal{H}_{2}$ denote three hypotheses corresponding to the absence of both jammer and spoofer, the presence of the jammer, and the presence of the spoofer, respectively. $\textrm{z}_{t,k}$ is the received signal at the RSU at $t$ over the $k$-th V2I link, $\textrm{g}_{t,k}^{nR}$ is the channel power gain from vehicle $n$ to the RSU formulated as: $\textrm{g}_{t,k}^{nR} = \alpha_{t,k}^{nR} \mathrm{h}_{t,k}^{nR}$, where $\alpha_{t,k}^{nR}$ is the large-scale fading including path-loss and shadowing modeled as \cite{8723178}: $\alpha_{t,k}^{nR}=G\beta d_{t,nR}^{-\gamma}$.
\begin{figure}[t!]
    \centering
    \includegraphics[height=5.3cm]{Figures/SystemModel_V1.pdf}
    \caption{An illustration of the system model.}
    \label{fig_SystemModel}
\end{figure}
$G$ is the pathloss constant, $\beta$ is a log normal shadow fading random variable, $d_{t,nR}=\sqrt{({x}_{n,t}-x_{R})^{2}+({y}_{n,t}-y_{R})^{2}}$ is the distance between the $n$-th vehicle and the RSU. $\gamma$ is the power decay exponent and
$\mathrm{h}_{t,k}$ is the small-scale fading component distributed according to $\mathcal{CN}(0,1)$. In addition, $\mathrm{x}_{t,k}$ is the desired signal transmitted by the $n$-th vehicle, and $\mathrm{v}_{t,k}$ is an additive white Gaussian noise with variance $\sigma_{n}^{2}$. $\mathrm{x}_{t,k}^{J}$ is the jamming signal, $\mathrm{x}_{t,k}^{*}$ is the spoofed signal (i.e., the signal that carries the bits related to the wrong GPS positions), $\mathrm{g}_{t,k}^{JR} = \alpha_{t,k}^{JR} \mathrm{h}_{t,k}^{JR}$ is the channel power gain from RSJ to RSU where $\alpha_{t,k}^{JR}=G\beta d_{t,JR}^{-\gamma}$ such that $d_{t,JR}=\sqrt{({x}_{J}-x_{R})^{2}+({y}_{J}-y_{R})^{2}}$.
We assume that the channel state information (CSI) of V2I links is known and can be estimated at the RSU as in \cite{8345717}.
The RSU is equipped with an RF antenna which can track the vehicles' trajectories after decoding the received RF signals. RSU aims to learn the interaction between the RF signals received from multiple vehicles and their corresponding trajectories.

\section{Proposed method for joint detection of GPS spoofing and jamming}

\subsection{Environment Representation}
The RSU is receiving RF signals from each vehicle and tracking its trajectory (which we refer to as GPS signal) by decoding and demodulating the received RF signals.
The Generalized state-space model describing the $i$-th signal evolvement at multiple levels embodies the following equations:
\begin{equation} \label{eq_discreteLevel}
    \mathrm{\Tilde{S}_{t}}^{(i)} = \mathrm{f}(\mathrm{\Tilde{S}_{t-1}}^{(i)}) + \mathrm{\tilde{w}}_{t},
\end{equation}
\begin{equation} \label{eq_continuousLevel}
    \mathrm{\Tilde{X}_{t}}^{(i)} = \mathrm{A} \mathrm{\Tilde{X}_{t-1}}^{(i)} + \mathrm{B} \mathrm{U}_{\mathrm{\Tilde{S}_{t}}^{(i)}} + \mathrm{\tilde{w}}_{t},
\end{equation}
\begin{equation} \label{eq_observationLevel}
    \mathrm{\Tilde{Z}_{t}}^{(i)} = \mathrm{H} \mathrm{\Tilde{X}_{t}}^{(i)} + \mathrm{\tilde{v}}_{t},
\end{equation}
where $i \in \{$RF, GPS$\}$ indicates the type of signal received by the RSU. The transition system model defined in \eqref{eq_discreteLevel} explains the evolution of the discrete random variables $\mathrm{\Tilde{S}_{t}}^{(i)}$ representing the clusters of the RF (or GPS) signal dynamics, $\mathrm{f}(.)$ is a non linear function of its argument and the additive term $\mathrm{\tilde{w}}_{t}$ denotes the process noise. The dynamic model defined in \eqref{eq_continuousLevel} explains the RF signal dynamics evolution or the motion dynamics evolution of the $n$-th vehicle, where $\mathrm{\Tilde{X}_{t}}^{(i)}$ are hidden continuous variables generating sensory signals, $\mathrm{A} \in \mathbb{R}^{2d}$ and $\mathrm{B} \in \mathbb{R}^{2d}$ are the dynamic and control matrices, respectively, and $\mathrm{U}_{\mathrm{\Tilde{S}_{t}}^{(i)}}$ is the control vector representing the dynamic rules of how the signals evolve with time. The measurement model defined in \eqref{eq_observationLevel} describes dependence of the sensory signals $\mathrm{\Tilde{Z}_{t}}^{(i)}$ on the hidden states $\mathrm{\Tilde{X}_{t}}^{(i)}$ that is parametrized by the measurement matrix $\mathrm{B} \in \mathbb{R}^{2d}$ where $d$ stands for the data dimensionality and $\mathrm{\tilde{v}}_{t}$ is a random noise.

\subsection{Learning GDBN}
The hierarchical dynamic models defined in \eqref{eq_discreteLevel}, \eqref{eq_continuousLevel} and \eqref{eq_observationLevel} are structured in a Generalized Dynamic Bayesian Network (GDBN) \cite{9858012} as shown in Fig.~\ref{fig_GDBN_CGDBN}-(a) that provides a probabilistic graphical model expressing the conditional dependencies among random hidden variables and observable states. The generative process explaining how sensory signals have been generated can be factorized as:
\begin{equation} \label{eq_generative_process}
\begin{split}
    \mathrm{P}(\mathrm{\tilde{Z}}_{t}^{(i)}, \mathrm{\tilde{X}}_{t}^{(i)}, \mathrm{\tilde{S}}_{t}^{(i)}) = \mathrm{P}(\mathrm{\tilde{S}}_{0}^{(i)}) \mathrm{P}(\mathrm{\tilde{X}}_{0}^{(i)}) \\ \bigg[ \prod_{t=1}^{\mathrm{T}} \mathrm{P}(\mathrm{\tilde{Z}}_{t}^{(i)}|\mathrm{\tilde{X}}_{t}^{(i)}) \mathrm{P}(\mathrm{\tilde{X}}_{t}^{(i)}|\mathrm{\tilde{X}}_{t-1}^{(i)}, \mathrm{\tilde{S}}_{t}^{(i)}) \mathrm{P}(\mathrm{\tilde{S}}_{t}^{(i)}|\mathrm{\tilde{S}}_{t-1}^{(i)}) \bigg],
\end{split}
\end{equation}
where $\mathrm{P}(\mathrm{\tilde{S}}_{0}^{(i)})$ and $\mathrm{P}(\mathrm{\tilde{X}}_{0}^{(i)})$ are initial prior distributions, $\mathrm{P}(\mathrm{\tilde{Z}}_{t}^{(i)}|\mathrm{\tilde{X}}_{t}^{(i)})$ is the likelihood, $\mathrm{P}(\mathrm{\tilde{X}}_{t}^{(i)}|\mathrm{\tilde{X}}_{t-1}^{(i)}, \mathrm{\tilde{S}}_{t}^{(i)})$ and $\mathrm{P}(\mathrm{\tilde{S}}_{t}^{(i)}|\mathrm{\tilde{S}}_{t-1}^{(i)})$ are the transition densities describing the temporal and hierarchical dynamics of the generalized state-space model.
The generative process defined in \eqref{eq_generative_process} indicates the cause-effect relationships the model impose on the random variables $\mathrm{\tilde{S}}_{t}^{(i)}$, $\mathrm{\tilde{X}}_{t}^{(i)}$ and $\mathrm{\tilde{Z}}_{t}^{(i)}$ forming a chain of causality describing how one state contributes to the production of another state which is represented by the link $\mathrm{\tilde{S}}_{t}^{(i)} \rightarrow \mathrm{\tilde{X}}_{t}^{(i)} \rightarrow \mathrm{\tilde{Z}}_{t}^{(i)}$.

The RSU starts perceiving the environment using a static assumption about the environmental states evolution by assuming that sensory signals are only subject to random noise. Hence, RSU predicts the RF signal (or vehciles trajectory) using the following simplified model:
$\mathrm{\tilde{X}}_{t}^{(i)} = \mathrm{A} \mathrm{\tilde{X}}_{t-1}^{(i)} + \mathrm{\tilde{w}}_{t}$,
that differs from \eqref{eq_continuousLevel} in the control vector $\mathrm{U}_{\mathrm{\Tilde{S}_{t}}^{(i)}}$ which is supposed to be null, i.e., $\mathrm{U}_{\mathrm{\Tilde{S}_{t}}^{(i)}} = 0$ as the dynamic rules explaining how the environmental states evolve with time are not discovered yet.
Those rules can be discovered by exploiting the generalized errors (GEs), i.e., the difference between predictions and observations. The GEs projected into the measurement space are calculated as:
$\tilde{\varepsilon}_{\mathrm{\tilde{Z}}_{t}^{(i)}}^{} = \mathrm{\tilde{Z}}_{t}^{(i)} - \mathrm{H} \mathrm{\tilde{X}}_{t}^{(i)}$.
Projecting $\tilde{\varepsilon}_{\mathrm{\tilde{Z}}_t}^{}$ back into the generalized state space can be done as follows:
\begin{equation}\label{GE_continuousLevel_initialModel}
    \tilde{\varepsilon}_{\mathrm{\tilde{X}}_t}^{(i)} = \mathrm{H}^{-1}\tilde{\varepsilon}_{\mathrm{\tilde{Z}}_{t}^{(i)}}^{}=\mathrm{H}^{-1}(\mathrm{\tilde{Z}}_{t}^{(i)}-\mathrm{H}\mathrm{\tilde{X}}_{t}^{(i)}) = \mathrm{H}^{-1}\mathrm{\tilde{Z}}_{t}^{(i)} - \mathrm{\tilde{X}}_{t}^{(i)}.
\end{equation}
The GEs defined in \eqref{GE_continuousLevel_initialModel} can be grouped into discrete clusters in an unsupervised manner by employing the Growing Neural Gas (GNG). The latter produces a set of discrete variables (clusters) denoted by:
$\mathbf{\tilde{S}^{(i)}}=\{\mathrm{\tilde{S}}_{1}^{(i)},\mathrm{\tilde{S}}_{2}^{(i)},\dots,\mathrm{\tilde{S}}_{M_{i}}^{(i)}\}$,
where $M_{i}$ is the total number of clusters and each cluster $\mathrm{\tilde{S}}_{m}^{(i)} \in \mathbf{\tilde{S}^{(i)}}$ follows a Gaussian distribution composed of GEs with homogeneous properties, such that $\mathrm{\tilde{S}}_{m}^{(i)} \sim \mathcal{N}(\tilde{\mu}_{\mathrm{\tilde{S}}_{m}^{(i)}}=[\mu_{\tilde{S}_{m}^{(i)}}, \Dot{\mu}_{\tilde{S}_{m}^{(i)}}], \Sigma_{\mathrm{\tilde{S}}_{m}^{(i)}})$.
\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.40\linewidth}
        \centering
           \includegraphics[width=2.5cm]{Figures/GDBN.pdf}
        \\[-1.0mm]
        {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{.50\linewidth}
            \centering
            \includegraphics[width=5.0cm]{Figures/C_GDBN.pdf}

            {\scriptsize (b)}
        \end{minipage}
        \caption{(a) The GDBN. (b) The coupled GDBN (C-GDBN) composed of two GDBNs representing the two signals received at the RSU where their discrete hidden variables are stochastically coupled.}
        \label{fig_GDBN_CGDBN}
    \end{center}
\end{figure}
The dynamic transitions of the sensory signals among the available clusters can be captured in a time-varying transition matrix ($\Pi_{\tau}$) by estimating the time-varying transition probabilities $\pi_{ij}=\mathrm{P}(\mathrm{\tilde{S}}_{t}^{(i)}=i|\mathrm{\tilde{S}}_{t-1}^{(i)}=j, \tau)$ where $\tau$ is the time spent in $\mathrm{\tilde{S}}_{t-1}^{(i)}=j$ before transition to $\mathrm{\tilde{S}}_{t}^{(i)}=i$.

\subsection{Learning Coupled GDBN (C-GDBN)}
The learning procedure described in the previous section can be executed for each signal type, i.e., RF and GPS. After learning a separated GDBN model for each signal type, we analyse the interaction behaviour between RF signal and GPS signal received at the RSU by tracking the cluster firing among $\mathbf{\tilde{S}^{(1)}}$ and $\mathbf{\tilde{S}^{(2)}}$ during a certain experience. Such an interaction can be encoded in a Coupled GDBN (C-GDBN) as shown in Fig.\ref{fig_GDBN_CGDBN}-(b) composed of the two GDBNs representing the two signals where their hidden variables at the discrete level are stochastically coupled (in $\mathrm{\tilde{C}}_{t}{=}[\mathrm{\tilde{S}}_{t}^{(1)},\mathrm{\tilde{S}}_{t}^{(2)}]$) as those variables are uncorrelated but have coupled means.
The interactive matrix $\Phi \in \mathbb{R}^{M_{1},M_{2}}$ encodes the firing cluster pattern allowing to predict the GPS signal from RF signal is defined as follows:
\begin{equation} \label{interactiveTM_fromRFtoGPS}
\Phi =
        \begin{bmatrix}
            \mathrm{P}(\mathrm{\Tilde{S}_{1}}^{(2)}|\mathrm{\Tilde{S}_{1}}^{(1)}) & \mathrm{P}(\mathrm{\Tilde{S}_{2}}^{(2)}|\mathrm{\Tilde{S}_{1}}^{(1)}) & \dots & \mathrm{P}(\mathrm{\Tilde{S}_{M_{2}}}^{(2)}|\mathrm{\Tilde{S}_{1}}^{(1)}) \\
            \mathrm{P}(\mathrm{\Tilde{S}_{1}}^{(2)}|\mathrm{\Tilde{S}_{2}}^{(1)}) & \mathrm{P}(\mathrm{\Tilde{S}_{2}}^{(2)}|\mathrm{\Tilde{S}_{2}}^{(1)}) & \dots & \mathrm{P}(\mathrm{\Tilde{S}_{M_{2}}}^{(2)}|\mathrm{\Tilde{S}_{2}}^{(1)}) \\
            \vdots & \vdots & \ddots & \vdots \\
            \mathrm{P}(\mathrm{\Tilde{S}_{1}}^{(2)}|\mathrm{\Tilde{S}_{M_{1}}}^{(1)}) & \mathrm{P}(\mathrm{\Tilde{S}_{2}}^{(2)}|\mathrm{\Tilde{S}_{M_{1}}}^{(1)}) & \dots & \mathrm{P}(\mathrm{\Tilde{S}_{M_{2}}}^{(2)}|\mathrm{\Tilde{S}_{M_{1}}}^{(1)})
        \end{bmatrix}.
\end{equation}

\subsection{Joint Prediction and Perception}
RSU starts predicting the RF signals it expects to receive from each vehicle based on a Modified Markov Jump Particle Filter (M-MJPF) \cite{9858012} that combines Particle filter (PF) and Kalman filter (KF) to perform temporal and hierarchical predictions. Since the acquired C-GDBN allows predicting a certain signal's dynamic evolution based on another's evolution, it requires an interactive Bayesian filter capable of dealing with more complicated predictions. To this purpose, we propose to employ an Interactive M-MJPF (IM-MJPF) on the C-GDBN. The IM-MJPF consists of a PF that propagates a set of $L$ particles equally weighted, such that $\{\mathrm{\tilde{S}}_{t,l}^{(1)}, \mathrm{W}_{t,l}^{(1)}\}{\sim}\{\pi(\mathrm{\tilde{S}}_{t}^{(1)}), \frac{1}{L}\}$, where $\mathrm{\tilde{S}}_{t,l}^{(1)}$, $l \in L$ and $(.^{(1)})$ is the RF signal type. In addition, RSU relies on $\Phi$ defined in \eqref{interactiveTM_fromRFtoGPS} to predict $\mathrm{\tilde{S}}_{t}^{(2)}$ realizing the discrete cluster of vehicle's trajectory starting from the predicted RF signal according to: $\{\mathrm{\tilde{S}}_{t}^{(2)},\mathrm{W}_{t,l}^{(2)}\}{\sim} \{\Phi(\mathrm{\tilde{S}}_{t,l}^{(1)}){=}\mathrm{P}(.|\mathrm{\tilde{S}}_{t,l}^{(1)}), \mathrm{W}_{t,l}^{(2)}\}$. For each predicted discrete variable $\mathrm{\tilde{S}}_{t,l}^{(i)}$, a multiple KF is employed to predict multiple continuous variables which guided by the predictions at the higher level as declared in \eqref{eq_continuousLevel} that can be represented probabilistically as $\mathrm{P}(\mathrm{\tilde{X}}_{t}^{(i)}|\mathrm{\tilde{X}}_{t-1}^{(i)}, \mathrm{\tilde{S}}_{t}^{(i)})$. The posterior probability that is used to evaluate expectations is given by:
\begin{multline} \label{piX}
    \pi(\mathrm{\tilde{X}}_{t}^{(i)})=\mathrm{P}(\mathrm{\tilde{X}}_{t}^{(i)},\mathrm{\tilde{S}}_{t}^{(i)}|\mathrm{\tilde{Z}}_{t-1}^{(i)})= \\ \int \mathrm{P}(\mathrm{\tilde{X}}_{t}^{(i)}|\mathrm{\tilde{X}}_{t-1}^{(i)}, \mathrm{\tilde{S}}_{t}^{(i)}) \lambda(\mathrm{\tilde{X}}_{t-1}^{(i)})d\mathrm{\tilde{X}}_{t-1}^{(i)},
\end{multline}
where $\lambda(\mathrm{\tilde{X}}_{t-1}^{(i)}){=}\mathrm{P}(\mathrm{\tilde{Z}}_{t-1}^{(i)}|\mathrm{\tilde{X}}_{t-1}^{(i)})$.
The posterior distribution can be updated (and so representing the updated belief) after having seen the new evidence $\mathrm{\tilde{Z}}_{t}^{(i)}$ by exploiting the diagnostic message $\lambda(\mathrm{\tilde{X}}_{t}^{(i)})$ in the following form: $\mathrm{P}(\mathrm{\tilde{X}}_{t}^{(i)}, \mathrm{\tilde{S}}_{t}^{(i)}|\mathrm{\tilde{Z}}_{t}^{(i)}) {=} \pi(\mathrm{\tilde{X}}_{t}^{(i)})\lambda(\mathrm{\tilde{X}}_{t}^{(i)})$. Likewise, belief in discrete hidden variables can be updated according to: $\mathrm{W}_{t,l}^{(i)}{=}\mathrm{W}_{t,l}^{(i)}\lambda (\mathrm{\tilde{S}}_{t}^{(i)})$ where:
$\lambda (\mathrm{\tilde{S}}_{t}^{(i)}) {=} \lambda (\mathrm{\Tilde{X}}_{t}^{(i)})\mathrm{P}(\mathrm{\Tilde{X}}_{t}^{(i)}|\mathrm{\tilde{S}}_{t}^{(i)}) {=} \mathrm{P}(\mathrm{\tilde{Z}}_{t}^{(i)}|\mathrm{\Tilde{X}}_{t}^{(i)})\mathrm{P}(\mathrm{\Tilde{X}}_{t}^{(i)}|\mathrm{\tilde{S}}_{t}^{(i)})$.

\subsection{Joint GPS spoofing and jamming detection}
RSU can evaluate the current situation and identify if V2I is under attack, or the satellite link is under spoofing based on a multiple abnormality indicator produced by the IM-MJPF. The first indicator calculates the similarity between the predicted RF signal and the observed one, which is defined as:
\begin{equation}\label{eq_CLA1}
    \Upsilon_{\mathrm{\tilde{X}}_{t}^{(1)}} = -ln \bigg( \mathcal{BC} \big(\pi(\mathrm{\tilde{X}}_{t}^{(1)}),\lambda(\mathrm{\tilde{X}}_{t}^{(1)}) \big) \bigg),
\end{equation}
where $\mathcal{BC}(.){=}\int \sqrt{\pi(\mathrm{\tilde{X}}_{t}^{(1)}),\lambda(\mathrm{\tilde{X}}_{t}^{(1)}})d\mathrm{\tilde{X}}_{t}^{(1)}$ is the Bhattacharyya coefficient.
The second indicator calculates the similarity between the predicted GPS signal (from the RF signal) and the observed one after decoding the RF signal which is defined as:
\begin{equation}\label{eq_CLA2}
    \Upsilon_{\mathrm{\tilde{X}}_{t}^{(2)}} = -ln \bigg( \mathcal{BC} \big(\pi(\mathrm{\tilde{X}}_{t}^{(2)}),\lambda(\mathrm{\tilde{X}}_{t}^{(2)}) \big) \bigg),
\end{equation}
where $\mathcal{BC}(.){=}\int \sqrt{\pi(\mathrm{\tilde{X}}_{t}^{(2)}),\lambda(\mathrm{\tilde{X}}_{t}^{(2)}})d\mathrm{\tilde{X}}_{t}^{(2)}$.
Different hypotheses can be identified by the RSU to understand the current situation whether there is: a jammer attacking the V2I link, or a spoofer attacking the link between the satellite and the vehicle or both jammer and spoofer are absent according to:
\begin{equation}
    \begin{cases}
        \mathcal{H}_{0}: \text{if} \ \ \Upsilon_{\mathrm{\tilde{X}}_{t}^{(1)}} < \xi_{1} \ \text{and} \ \Upsilon_{\mathrm{\tilde{X}}_{t}^{(2)}} < \xi_{2}, \\
        \mathcal{H}_{1}: \text{if} \ \ \Upsilon_{\mathrm{\tilde{X}}_{t}^{(1)}} \geq \xi_{1} \ \text{and} \ \Upsilon_{\mathrm{\tilde{X}}_{t}^{(2)}} \geq \xi_{2}, \\
        \mathcal{H}_{2}: \text{if} \ \ \Upsilon_{\mathrm{\tilde{X}}_{t}^{(1)}} < \xi_{1} \ \text{and} \ \Upsilon_{\mathrm{\tilde{X}}_{t}^{(2)}} \geq \xi_{2},
    \end{cases}
\end{equation}
where $\xi_{1} = \mathbb{E}[\Bar{\Upsilon}_{\mathrm{\tilde{X}}_{t}^{(1)}}] + 3\sqrt{\mathbb{V}[\Bar{\Upsilon}_{\mathrm{\tilde{X}}_{t}^{(1)}}]}$, and $\xi_{2} = \mathbb{E}[\Bar{\Upsilon}_{\mathrm{\tilde{X}}_{t}^{(2)}}] + 3\sqrt{\mathbb{V}[\Bar{\Upsilon}_{\mathrm{\tilde{X}}_{t}^{(2)}}]}$. In $\xi_{1}$ and $\xi_{2}$, $\Bar{\Upsilon}_{\mathrm{\tilde{X}}_{t}^{(1)}}$ and $\Bar{\Upsilon}_{\mathrm{\tilde{X}}_{t}^{(2)}}$ stand for the abnormality signals during training (i.e., normal situation when jammer and spoofer are absent).

\subsection{Evaluation metrics}
In order to evaluate the performance of the proposed method to jointly detect jammer and GPS spoofer, we adopt the jammer detection probability ($\mathrm{P}_{d}^{j}$) and the spoofer detection probability ($\mathrm{P}_{d}^{s}$), respectively, which are defined as:
\begin{equation}
    \mathrm{P}_{d}^{j} = \mathrm{Pr}(\Upsilon_{\mathrm{\tilde{X}}_{t}^{(1)}}\geq \xi_{1}, \Upsilon_{\mathrm{\tilde{X}}_{t}^{(2)}} \geq \xi_{2}|\mathcal{H}_{1}),
\end{equation}
\begin{equation}
    \mathrm{P}_{d}^{s} = \mathrm{Pr}(\Upsilon_{\mathrm{\tilde{X}}_{t}^{(1)}}< \xi_{1}, \Upsilon_{\mathrm{\tilde{X}}_{t}^{(2)}} \geq \xi_{2}|\mathcal{H}_{2}).
\end{equation}
Also, we evaluate the accuracy of the proposed method in predicting and estimating the vehicles' trajectories and the expected RF signals by adopting the root mean square error (RMSE) defined as:
\begin{equation}
    RMSE = \sqrt{ \frac{1}{T} \sum_{t=1}^{T}\bigg( \mathrm{\tilde{Z}}_{t}^{(i)}-\mathrm{\tilde{X}}_{t}^{(i)} \bigg)^{2} },
\end{equation}
where $T$ is the total number of predictions.

\section{Simulation Results}
In this section, we evaluate the performance of the proposed method to jointly detect the jammer and the spoofer using extensive simulations. We consider $\mathrm{N}=2$ vehicles interacting inside the environment and exchanging their states (i.e., position and velocity) with the RSU. The vehicles move along predefined trajectories performing various maneuvers which are picked from the \textit{Lankershim} dataset proposed by \cite{5206559}. The dataset depicts a four way intersection and includes about $19$ intersection maneuvers. RSU assigns one subchannel realizing the V2I link for each vehicle over which the vehicles' states are transmitted. The transmitted signal carrying the vehicle's state and the jamming signal are both QPSK modulated.
The simulation settings are: carrier frequency of $2$GHz, BW${=}1.4$MHz, cell radius of $500$m, RSU antenna height and gain is $25$m and $8$ dBi, receiver noise figure of $5$dB, vehicle antenna height and gain is $1.5$m and $3$dBi, vehicle speed is $40$Km/h, V2I transmit power is $23$dBm, jammer transmit power ranging from $20$dBm to $40$dBm, SNR of $20$dB, path loss model ($128.1{+}37.6log d$), Log-normal shadowing with $8$dB standard deviation and a fast fading channel following the Rayleigh distribution.
\begin{figure}[ht!]
    \begin{center}
        \begin{minipage}[b]{.55\linewidth}
        \centering
            \includegraphics[width=5.0cm]{Results/ObservedTrajectories_reference}
        \\[-1.5mm]
        {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{.49\linewidth}
            \centering
            \includegraphics[width=4.9cm]{Results/ObservedRFsignal_Veh1_reference}
            \\[-1.5mm]
            {\scriptsize (b)}
        \end{minipage}
        \begin{minipage}[b]{.49\linewidth}
            \centering
            \includegraphics[width=4.9cm]{Results/ObservedRFsignal_Veh2_reference}
            \\[-1.5mm]
            {\scriptsize (c)}
        \end{minipage}
        \caption{An example visualizing the received RF signals from the two vehicles and the corresponding trajectories: (a) Vehicles' trajectories, (b) received RF signal from vehicle 1, (c) received RF signal from vehicle 2.}
        \label{fig_receivedRFsignalandTrajectory}
    \end{center}
\end{figure}
\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.49\linewidth}
            \centering
                \includegraphics[width=4.5cm]{Results/clusters_trajectory_veh1}
            \\[-1.5mm]
            {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{.49\linewidth}
            \centering
                \includegraphics[width=4.5cm]{Results/clusters_trajectory_veh2}
            \\[-1.5mm]
            {\scriptsize (b)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.5cm]{Results/clusters_RFsignal_veh1}
            \\[-1.5mm]
            {\scriptsize (c)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.5cm]{Results/clusters_RFsignal_veh2}
            \\[-1.5mm]
            {\scriptsize (d)}
        \end{minipage}

        \caption{GNG output after clustering the generalized errors obtained from different experiences: (a) clustered trajectory of vehicle 1, (b) clustered trajectory of vehicle 2, (c) clustered RF signal received from vehicle 1, (d) clustered RF signal received from vehicle 2.}
        \label{fig_GNG_of_receivedRFsignalandTrajectory}
    \end{center}
\end{figure}

The RSU aims to learn multiple interactive models (i.e., C-GDBN models) encoding the cross relationship between the received RF signal from each vehicle and its corresponding trajectory. These models allow the RSU to predict the trajectory the vehicle will follow based on the received RF signal and evaluate whether the V2I is under jamming attacks or the satellite link is under spoofing. It is to note that the RSU is receiving only the RF signals from the two vehicles and obtaining their positions after decoding the RF signals. Thus, the RSU should be able to evaluate if the received RF signals are evolving according to the dynamic rules learned so far and if the vehicles are following the expected (right) trajectories to decide whether the V2I links are really under attack or whether the satellite link is under spoofing.

Fig.~\ref{fig_receivedRFsignalandTrajectory}-(a) illustrates an example of the interaction between the two vehicles performing a particular manoeuvre, and Fig.~\ref{fig_receivedRFsignalandTrajectory}-(b) shows the received RF signals by the RSU from the two vehicles. At the beginning of the learning process, RSU performs predictions according to the simplified model defined in \eqref{eq_continuousLevel} where $\mathrm{U}_{\mathrm{\Tilde{S}_{t}}^{(i)}} {=} 0$.
After obtaining the generalized errors as pointed out in \eqref{GE_continuousLevel_initialModel}, RUS clusters those errors using GNG to learn two GDBN models encoding the dynamic rules of how the RF signal and the GPS signal evolve with time, respectively, as showed in Fig.~\ref{fig_GNG_of_receivedRFsignalandTrajectory} and Fig.~\ref{fig_graphicalRep_transitionMatrices}. RSU can couple the two GDBNs by learning the interactive transition matrix that is encoded in a C-GDBN as shown in Fig.~\ref{fig_interactiveMatrices}.
\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.49\linewidth}
            \centering
                \includegraphics[width=4.5cm]{Results/graphTransition_Trajectory_veh1}
            \\[-1.5mm]
            {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{.49\linewidth}
            \centering
                \includegraphics[width=4.5cm]{Results/graphTransition_Trajectory_veh2}
            \\[-1.5mm]
            {\scriptsize (b)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.5cm]{Results/graphTransition_RFsignal_veh1}
            \\[-1.5mm]
            {\scriptsize (c)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.5cm]{Results/graphTransition_RFsignal_veh2}
            \\[-1.5mm]
            {\scriptsize (d)}
        \end{minipage}
        \caption{Graphical representation of the transition matrices (TM): (a) TM related to the trajectory of vehicle 1, (b) TM related to the trajectory of vehicle 2, (c) TM related to the RF signal received from vehicle 1, (d) TM related to the RF signal received from vehicle 2.}
        \label{fig_graphicalRep_transitionMatrices}
    \end{center}
\end{figure}
\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.49\linewidth}
            \centering
                \includegraphics[width=3.8cm]{Results/interactiveMatrix_RFtoGPS_Neu5_veh1}
            \\[-1.0mm]
            {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=3.8cm]{Results/interactiveMatrix_RFtoGPS_Neu25_veh1}
            \\[-1.0mm]
            {\scriptsize (d)}
        \end{minipage}

        \caption{Interactive transition matrix defined in \eqref{interactiveTM_fromRFtoGPS} using different configurations: (a) $\mathrm{M_{1}}=5$, $\mathrm{M_{2}}=5$, (b) $\mathrm{M_{1}}=25$, $\mathrm{M_{2}}=25$.}
        \label{fig_interactiveMatrices}
    \end{center}
\end{figure}
\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.49\linewidth}
        \centering
            \includegraphics[width=4.9cm]{Results/RF_situation1_best_veh1}
        \\[-1.5mm]
        {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.9cm]{Results/RF_situation1_worst_veh1}
            \\[-1.5mm]
            {\scriptsize (b)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.9cm]{Results/RF_situation1_best_veh2}
            \\[-1.5mm]
            {\scriptsize (c)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.9cm]{Results/RF_situation1_worst_veh2}
            \\[-1.5mm]
            {\scriptsize (d)}
        \end{minipage}
        \caption{An example visualizing the predicted and observed RF signals transmitted by the 2 vehicles using different configurations. Predicted RF signal from: (a) vehicle 1 using $\mathrm{M_{1}}{=}5$, $\mathrm{M_{2}}{=}5$, (b) vehicle 1 using $\mathrm{M_{1}}{=}25$, $\mathrm{M_{2}}{=}25$, (c) vehicle 2 using $\mathrm{M_{1}}{=}5$, $\mathrm{M_{2}}{=}5$, (d) vehicle 2 using $\mathrm{M_{1}}{=}25$, $\mathrm{M_{2}}{=}25$.}
            \label{fig_situation1_PredictedRF}
    \end{center}
\end{figure}

\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.49\linewidth}
        \centering
            \includegraphics[width=4.8cm]{Results/GPSfromRF_situation1_best}
        \\[-1.0mm]
        {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.8cm]{Results/GPSfromRF_situation1_worst}
            \\[-1.0mm]
            {\scriptsize (b)}
        \end{minipage}
        %
        \caption{An example visualizing the predicted and observed trajectories of two vehicles interacting in the environment. (a) $\mathrm{M_{1}}{=}5$, $\mathrm{M_{2}}{=}5$, (b) $\mathrm{M_{1}}{=}25$, $\mathrm{M_{2}}{=}25$.}
            \label{fig_situation1_VehiclesTrajectories}
    \end{center}
\end{figure}

\begin{figure}[ht!]
    \begin{center}
        \begin{minipage}[b]{.49\linewidth}
        \centering
            \includegraphics[width=4.8cm]{Results/rmse_on_trajectory}
        \\[-1.0mm]
        {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{0.49\linewidth}
            \centering
            \includegraphics[width=4.8cm]{Results/rmse_on_RFSignal}
            \\[-1.0mm]
            {\scriptsize (b)}
        \end{minipage}
        \caption{The average RMSE after testing different experiences and examples of: (a) trajectories and (b) RF signals.}
            \label{fig_rmse_onTraj_onSig}
    \end{center}
\end{figure}

Fig.~\ref{fig_situation1_PredictedRF} illustrates an example comparing between predicted RF signals and observed ones based on two different configurations in learning the interactive matrix (as shown in Fig.~\ref{fig_interactiveMatrices}). Also, Fig.~\ref{fig_situation1_VehiclesTrajectories} illustrates an example comparing between the predicted and observed trajectories of the two vehicles using the two interactive matrices depicted in Fig.~\ref{fig_interactiveMatrices}. From Fig.~\ref{fig_situation1_PredictedRF} and Fig.~\ref{fig_situation1_VehiclesTrajectories} we can see that using an interactive matrix with less clusters allows to perform better predictions compared to that with more clusters. This can be validated by observing Fig.~\ref{fig_rmse_onTraj_onSig} that illustrates the RMSE values versus different number of clusters related to the two models representing the dynamics of the received RF signals and the vehicles' trajectories. It can be seen that as the number of clusters increases the RMSE error increases, since adding more clusters decreases the firing probability that explains the possibility to be in one of the $M_{2}$ clusters of the second model conditioned in being in a certain cluster of the first model.

Fig.~\ref{fig_exNormal_Spoofed_JammedTrajectories} illustrates an example of vehicle's trajectory under normal situation (i.e., jammer and spoofer are absent), under jamming attacks and under spoofing attacks. Also the figure shows the predicted trajectory which should follow the same dynamic rules learned during a normal situation. After that, we implemented the IM-MJPF on the learned C-GDBN to perform multiple predictions, i.e., to predict the RF signal that the RSU is expecting to receive from a certain vehicle and the corresponding trajectory that the vehicle is supposed to follow. IM-MJPF through the comparison between multiple predictions and observations, produces multiple abnormality signals as defined in \eqref{eq_CLA1} and \eqref{eq_CLA2} which are used to detect the jammer and the spoofer.

Fig.~\ref{fig_abnormalitySignals_JammerSpoofer} illustrates the multiple abnormality signals related to the example shown in Fig.~\ref{fig_exNormal_Spoofed_JammedTrajectories}. We can observe that the abnormal signals related to both RF signal (Fig.~\ref{fig_abnormalitySignals_JammerSpoofer}-(a)) and trajectory (Fig.~\ref{fig_abnormalitySignals_JammerSpoofer}-(b)) are below the threshold under normal situations. This proves that RSU learned the correct dynamic rules of how RF signals and trajectories evolve when the jammer and spoofer are absent (i.e., under normal situations). Also, we can see that the RSU can notice a high deviation on both the RF signal and the corresponding trajectory due to a jamming interference from what it has learned so far by relying on the abnormality signals. In contrast, we can see that under spoofing attacks, RSU notice a deviation only on the trajectory and not on the RF signal since the spoofer has affected only the positions without manipulating the RF signal. In addition, it is obvious how the proposed method allows the RSU to identify the type of abnormality occurring and to explain the cause of the detected abnormality (i.e., understanding if it was because of a jammer attacking the V2I link or a spoofer attacking the satellite link).
\begin{figure}[t!]
    \centering
    \includegraphics[width=6.5cm]{Results/trajectories_underJamming_andSpoofing}

    \caption{Vehicle's trajectory under: normal situation, jamming and spoofing.}
    \label{fig_exNormal_Spoofed_JammedTrajectories}
\end{figure}
\begin{figure}[t!]
    \begin{center}
        \begin{minipage}[b]{.92\linewidth}
        \centering
            \includegraphics[height=2.6cm]{Results/abnSignal_onRF}
        \\[-1.5mm]
        {\scriptsize (a)}
        \end{minipage}
        \begin{minipage}[b]{.92\linewidth}
            \centering
            \includegraphics[height=2.6cm]{Results/abnSignal_onGPS}
            \\[-1.5mm]
            {\scriptsize (b)}
        \end{minipage}
        %
        \caption{Abnormality Signals related to the example shown in Fig.\ref{fig_exNormal_Spoofed_JammedTrajectories}: (a) abnormality indicators related to the RF signal, (b) abnormality indicators related to the trajectory.}
            \label{fig_abnormalitySignals_JammerSpoofer}
    \end{center}
\end{figure}
\begin{figure}[t!]
    \centering
    \includegraphics[height=3.2cm]{Results/Detection_Probability_RFfromGPS_versusPj}
    \caption{Detection probability ($\mathrm{P_{d}}$) versus jammer's power ($\mathrm{P_{J}}$) using different number of clusters $\mathrm{M}_{2}$.}
    \label{fig_jammerDetectionProb}
\end{figure}
\begin{figure}[t!]
    \centering
    \includegraphics[height=3.2cm]{Results/spoofingDetectionProbability_falseAlarm_versusM2}
    \caption{Spoofing detection probability ($\mathrm{P}_{d}^{s}$) and spoofing false alarm ($\mathrm{P}_{f}^{s}$) versus the number of clusters $\mathrm{M}_{2}$.}
    \label{fig_spooferDetectionProb}
\end{figure}

Fig.~\ref{fig_jammerDetectionProb} shows the overall performance of the proposed method in detecting the jammer by testing many situations and examples and by considering different jamming powers which ranges from $20$dBm to $40$dBm. It can be seen that the proposed method is able to detect the jammer with high probabilities (near $1$) and by considering low and high jamming powers. Also, the figure compares the performance in detecting the jammer by varying the number of clusters ($M_{2}$).
Fig.~\ref{fig_spooferDetectionProb} shows the overall performance of the proposed method in detecting the spoofer by testing different different examples of driving maneuvers. It can be seen that the RSU is able to detect the spoofer with high detection probability and null false alarm versus different number of clusters.

\section{Conclusion}
A joint detection method of GPS spoofing and jamming attacks is proposed. The method is based on learning a dynamic interactive model encoding the cross-correlation between the received RF signals from multiple vehicles and their corresponding trajectories. Simulation results show the high effectiveness of the proposed approach in jointly detecting the GPS spoofer and jammer attacks.
Subsequent work will extend the system model to consider more than two vehicles with different channel conditions and various modulation schemes to evaluate the effectiveness of the proposed method.

\bibliographystyle{IEEEtran}

Answer: The generative interactive model used in the method is called the Coupled Generalized Dynamic Bayesian Network (C-GDBN).


Input: How does a media application determine the context of an event?

Context:
2015-05-14 Assigned to ROVI GUIDES, INC. reassignment ROVI GUIDES, INC. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: TV GUIDE, INC.
2015-05-14 Assigned to UV CORP. reassignment UV CORP. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: UNITED VIDEO PROPERTIES, INC.
2015-05-14 Assigned to TV GUIDE, INC. reassignment TV GUIDE, INC. MERGER (SEE DOCUMENT FOR DETAILS). Assignors: UV CORP.
Methods and systems are described herein for quickly and easily displaying supplemental information about an event occurring in a media asset. In some embodiments, a media application may use a content-recognition module to determine the context of an event and distribute itemized tasks to multiple entities in order to generate the supplemental information about the event.
While viewing media assets (e.g., a television program), users may wish to learn more information about an event (e.g., a statement made by a person appearing in the media asset, the validity of a claim in an advertisement, etc.) occurring in the media asset. While some media assets allow a user to select additional options or added features (e.g., pop-up biographies about the cast and crew), when the added features appear and what topic the added features concern are determined by the content producer and not the user. Furthermore, as the added feature is derived from the content producer, the added feature may be biased or may present limited viewpoints about an event. Therefore, added features provided by a content producer may not provide the added information about an event that a user desires.
In order to gain the added information that a user desires, the user may use additional devices (e.g., a laptop computer) to search (e.g., using an Internet search engine) for more information about the event. However, without knowing the proper context (e.g., who said the statement, what was the tone of the statement, when was the statement said, etc.) of the event or what search terms to use to describe the context of the event (e.g., how to describe the tone of the statement), a user may not be able to determine (even using a search engine) more information about the event. Moreover, the use of general search terms may not provide the accuracy or precision needed by the user. Furthermore, even if a user may eventually determine the information, the effort and time required may distract the user from the media asset.
Accordingly, methods and systems are described herein for quickly and easily displaying supplemental information about an event occurring in a media asset. In some embodiments, a media application may use a content-recognition module to determine the context of an event in a media asset and distribute itemized tasks to multiple users in order to generate the supplemental information about the event. The context-recognition module prevents the user from being distracted from the media asset (e.g., while the user attempts to describe the context of the event or search for information about the event). In addition, by distributing tasks to multiple entities (e.g., crowd-sourcing), the media application may collect large amounts of information in relatively short periods of time (or in real-time) and aggregate and/or filter the information to generate the supplemental information about the event based on multiple viewpoints and/or sources. By using multiple viewpoints and/or sources, the media application enhances the completeness (e.g., by providing unbiased information) and accuracy of the supplemental information.
For example, when a statement or action is made by a character or person appearing on a media asset (e.g., a television program), a user may request supplemental information about the statement or action. In response, the media application may determine the context of the statement (e.g., who said the statement and to what the statement was referring) or action (e.g., what was the reason for the action). After determining the context of the statement or action, the media application may itemize into tasks the additional information it requires in order to generate the supplemental information. The media application may then transmit requests including the tasks to a plurality of other users. Based on the responses from the plurality of other users, the media application may generate the supplemental information for display to the user.
In some embodiments, a media application may use multiple types of content-recognition modules and/or algorithms to determine the context of an event. For example, the media application may process data associated with the event in order to determine the context of an event. In some embodiments, processing the various types of data may include cross-referencing the data in a database indicating the different contexts the event may have.
In some embodiments, a media application may generate supplemental information about an event in a media asset in response to a user request. In order to generate the supplemental information, the media application may transmit, to multiple users, a request for additional information regarding a context of an event shown in a media asset. Upon receiving messages from the plurality of users that include the requested additional information, the media application may generate the supplemental information associated with the context of the event based on the messages.
It should be noted, the systems and/or methods described above may be applied to, or used in accordance with, other systems, methods and/or apparatuses.
FIG. 9 is a flowchart of illustrative steps for generating supplemental information based on additional information provided by a plurality of users in accordance with some embodiments of the disclosure.
Accordingly, methods and systems are described herein for quickly and easily displaying supplemental information about an event occurring in a media asset. The methods and systems described herein alleviate the need for a user to determine the proper context (e.g., who said a statement, what was the tone of the statement, when was the statement said, etc.) of an event in a media asset, or the search terms to use to describe the event (e.g., the proper search terms to describe the tone of the statement), in order to determine more information about the event. In addition, the methods and systems increase the completeness and accuracy of the information compared to information gathered using traditional searching methods (e.g., an Internet search engine), without distracting the user from the media asset.
In some embodiments, a media application may receive a user input from a user device for supplemental information about the context of an event shown in a media asset. The media application may determine additional information required to generate the supplemental information about the context of the event shown in a media asset, and transmit requests for the additional information to one or more users. The media application may receive one or more messages, which include the requested additional information, from the one or more users and generate the supplemental information based on the one or more message. The media application may then instruct the user device to display the supplemental information.
As used herein, “supplemental information” refers to any information related to or associated with an event in a media asset. For example, supplemental information may include, but is not limited to, the verification of a statement or claim in a media asset, further descriptions and/or information about objects or entities shown and/or described in a media asset, and/or any other information, including, but not limited to, a video or audio segment, that may interest a user about an event in a media asset. In some embodiments, the media application may generate supplemental information based on one or more pieces of additional information.
As used herein, “additional information” refers to any information used to generate supplemental information. For example, in an embodiment in which supplement information is the verification of a statement made by a person displayed in a media asset, and a request for the additional information from the media application includes a request for a fact needed to verify the factual basis of the statement, the additional information may be the fact used to verify the statement. For example, if an advertisement claims to have the best product on the market, the media application may use additional information such as the name of the product in question, a list of all other products in the market, and the results of a comparison study of the product in question to all other products to determine whether or not the product is actually the “best” product on the market. Additionally or alternatively, the media application may request industry and/or user reviews related to the event (e.g., reviews indicating the quality of the product). The media application may then use the information in the reviews to generate the supplemental information.
As used herein, an “event” is any action (e.g., a verbal statement, opinion and/or physical movement), segment (e.g., a portion of a news broadcast featuring a particular topic), or other occurrence during a media asset that may be of particular interest to a user. For example, in some embodiments an event may be a statement or gesture made by a character or person in a media asset affirming or denying a claim.
As referred to herein, the terms “media asset” and “content” should be understood to mean an electronically consumable user asset, such as television programming, as well as pay-per-view programs, on-demand programs (as in video-on-demand (VOD) systems), Internet content (e.g., streaming content, downloadable content, Webcasts, etc.), video clips, audio, content information, pictures, rotating images, documents, playlists, websites, articles, books, electronic books, blogs, advertisements, chat sessions, social media, applications, games, and/or any other media or multimedia and/or combination of the same. Media applications also allow users to navigate among and locate content. As referred to herein, the term “multimedia” should be understood to mean content that utilizes at least two different content forms described above, for example, text, audio, images, video, or interactivity content forms. Content may be recorded, played, displayed or accessed by user equipment devices, but can also be part of a live performance.
As referred to herein, the phrase “user equipment device,” “user equipment,” “user device,” “electronic device,” “electronic equipment,” “media equipment device,” or “media device” should be understood to mean any device for accessing the content described above, such as a television, a Smart TV, a set-top box, an integrated receiver decoder (IRD) for handling satellite television, a digital storage device, a digital media receiver (DMR), a digital media adapter (DMA), a streaming media device, a DVD player, a DVD recorder, a connected DVD, a local media server, a BLU-RAY player, a BLU-RAY recorder, a personal computer (PC), a laptop computer, a tablet computer, a WebTV box, a personal computer television (PC/TV), a PC media server, a PC media center, a hand-held computer, a stationary telephone, a personal digital assistant (PDA), a mobile telephone, a portable video player, a portable music player, a portable gaming machine, a smart phone, or any other television equipment, computing equipment, or wireless device, and/or combination of the same.
In some embodiments, the user equipment device may have a front facing screen and a rear facing screen, multiple front screens, or multiple angled screens. In some embodiments, the user equipment device may have a front facing camera and/or a rear facing camera. On these user equipment devices, users may be able to navigate among and locate the same content available through a television. Consequently, media may be available on these devices, as well. The media provided may be for content available only through a television, for content available only through one or more of other types of user equipment devices, or for content available both through a television and one or more of the other types of user equipment devices. The media applications may be provided as on-line applications (i.e., provided on a website), or as stand-alone applications or clients on user equipment devices. Various devices and platforms that may implement media applications are described in more detail below.
In some embodiments, a media application may transmit, to a plurality of users, a request for additional information regarding a context of an event shown in a media asset. As used herein, a “plurality of users” may include, but is not limited to any device, entity, or source of information that may process a request for additional information. For example, the plurality of users may include a person operating a user equipment device. In some embodiments, the person may receive (e.g., via e-mail, Internet posting, advertisement, or any other applicable information delivery method) the request from the media application for additional information, and in response generate a message (e.g., via a return e-mail, an answer to the Internet posting, a user input in the advertisement, or any other applicable method of transmitting information) that includes the additional information. It should be noted that in some embodiments, transmitting a request to a plurality of users may also include querying one or more databases (e.g., an Internet search engine or any other storage device, including, but not limited to, databases containing previously generated supplemental information and/or additional information) or consulting one or more data gathering services (e.g., a intelligent personal assistant application) for the additional information.
In some embodiments, a media application may use a content-recognition module or algorithm to determine the context of an event and distribute itemized tasks to multiple users in order to generate the supplemental information about the event. The content-recognition module may use object recognition techniques such as edge detection, pattern recognition, including, but not limited to, self-learning systems (e.g., neural networks), optical character recognition, on-line character recognition (including but not limited to, dynamic character recognition, real-time character recognition, intelligent character recognition), and/or any other suitable technique or method to determine the objects and/or characteristics in media assets. For example, the media application may receive media assets in the form of a video. The video may include a series of frames. For each frame of the video, the media application may use a content-recognition module or algorithm to determine the context (e.g., the person that is speaking or a facial gesture affirming or denying a statement) of an event occurring during the frame or series of frames.
In some embodiments, the content-recognition module or algorithm may also include speech recognition techniques, including but not limited to Hidden Markov Models, dynamic time warping, and/or neural networks (as described above) to translate spoken words into text. The content-recognition module may also use other techniques for processing audio and/or visual data. For example, the media application may monitor the volume of a statement in a media asset to determine the tone of the statement (e.g., a high volume may indicate an angry tone).
In addition, the media application may use multiple types of optical character recognition and/or fuzzy logic, for example, when determining the context of a keyword(s) retrieved from data (e.g., media data, translated audio data, subtitle data, user-generated data, etc.) associated with the media asset (or when cross-referencing various types of data with databases indicating the different contexts of events as described below). For example, the particular data field may be a textual data field. Using fuzzy logic, the system may determine two fields and/or values to be identical even though the substance of the data field or value (e.g., two different spellings) is not identical. In some embodiments, the system may analyze particular data fields of a data structure or media asset frame for particular values or text. The data fields could be associated with characteristics, additional information, and/or any other data required for the function of the embodiments described herein. Furthermore, the data fields could contain values (e.g., the data fields could be expressed in binary or any other suitable code or programming language).
As used herein, the “context” of an event refers to the set of circumstances or facts that surround a particular event that influence or affect the meaning of the event. For example, when determining the context of a written and/or spoken statement, the media application may determine who or what authored/stated the statement, the written and/or spoken words and/or other statements that preceded and/or followed the statement, the tone of the statement, and/or any other conditions that may alter the connotation of the statement.
FIG. 1 shows an illustrative example of a media application that may be used to display supplemental information in accordance with some embodiments of the disclosure. Display 100 illustrates a display on a user device displaying a media asset. Display 108 illustrates a display featuring supplemental information as described and/or generated in FIGS. 6-9. It should be noted that display 100 and display 108 may be presented on any of the devices shown in FIGS. 3-4. For example, in some embodiments, display 100 and display 108 may be displayed on user equipment 402, 404, and/or 406 (FIG. 4).
In FIG. 1, display 100 represents a display of a media asset (e.g., a streaming television program) on a user device (e.g., user equipment 402, 404, and/or 406 (FIG. 4)). Display 100 includes entity 102 and entity 104. In display 100, entity 104 is currently speaking as indicated by event 106. As shown in FIG. 1, event 106 is a statement (e.g., “We export a lot of coal”) by a person in the media asset.
In some embodiments, display 108 represents the continued display of the media asset on a user device, after a user has requested supplemental information about event 106. For example, a media application may have received a user input (e.g., via user input interface 310 (FIG. 3)) while entity 104 was speaking. Using the systems and methods described herein (e.g., FIGS. 6-9), the media application generated supplemental information 110. Supplemental information 110 represents more information about event 106.
For example, the media application (e.g., media application 206 (FIG. 2)) may have determined the context of event 106. Specifically, the media application may determine via a content-recognition module or algorithm the words spoken and/or actions by the person during the event. Additionally or alternatively, the media application may analyze the words and/or action during a predetermined amount of time (e.g., ten seconds) before and/or after the event (e.g., in order to better understand the context of the event). Furthermore, by cross-referencing the words and/or other information obtained by the content-recognition module (e.g., as discussed below in relation to FIG. 5) with a database, the content-recognition module determines that the term “we,” the person in the media asset refers to an organization or body. The content-recognition module or algorithm may also determine that the term “export” refers to shipping goods out of a country. The content-recognition module or algorithm may also determine that the term “a lot” refers to a particular numerical amount. Finally, the content-recognition module or algorithm may also determine that the term “coal” refers to a mineral of fossilized carbon.
The content-recognition module or algorithm may also determine the relationships between words and/or other information obtained by the content-recognition module. For example, by processing the relationship between the words, the media application determines that event 106 is a statement regarding a particular amount of a particular substance shipped out of a particular country. Therefore, the media application determines that the request for supplemental information is likely a request to determine the validity of the statement. The media application then generates the supplemental information.
The media application may also have stored supplemental information generated by previous requests (e.g., supplemental information generated in response to the same or different user viewing the media asset at an earlier date), and display the supplemental information again during the event (either in response to a user input requesting supplemental information or automatically without a user requesting supplemental information).
FIG. 2 shows an illustrative example of a system that may be used to generate supplemental information (e.g., supplemental information 110 (FIG. 1)) based on additional information provided by a plurality of users in accordance with some embodiments of the disclosure. For example, in some embodiments, system 200 may be used to generate supplemental information (e.g., supplemental information 110 (FIG. 1)) on a display (e.g., display 108 (FIG. 1)) of a user device (e.g., user equipment 402, 404, and/or 406 (FIG. 4)). It should be noted that in some embodiments, the devices shown in FIG. 2 may correspond to one or more devices in FIGS. 3-4.
FIG. 2 shows system 200. In system 200, a user is currently accessing a media asset on display 202. In some embodiments, display 202 may correspond to display 100 (FIG. 1)). During an event (e.g., event 106 (FIG. 1)) a user may have requested supplemental information about an event (e.g., event 106 (FIG. 1)) in display 202 using user device 204. Media application 206, which in some embodiments, may be implemented on user device 204 or at a remote location (e.g., supplemental information source 418 (FIG. 4)), receives the request for supplemental information.
Media application 206 determines the context of the event (e.g., who said the statement making up the event and to what the statement was referring). After determining the context of the statement, the media application may itemize into one or more tasks, additional information (e.g., facts) it requires in order to generate the supplemental information (e.g., a verification or correction of the factual basis of the statement). For example, if the event is a statement about the amount of coal that is exported from the United States (e.g., as described in relation to FIG. 1 above), media application 206 may determine the fact required to generate the supplemental information is the exact numerical amount of coal that is exported from the United States. The media application may then transmit requests for the additional information (e.g., a request for the exact numerical amount of coal that is exported from the United States) to a plurality of other users.
In FIG. 2, users operating user device 208, user device 210, and user device 212 represent a plurality of users. Having determined the additional information it requires in order to generate the supplemental information, media application 206 requests the additional information from the plurality of users. In system 200, media application 206 has transmitted the same task (e.g., the same question) to each of the plurality of users. In some embodiments, one or more of the users may receive different tasks. For example, by breaking the additional information into small, independent tasks, media application 206 may increase the speed (e.g., multiple users may work concurrently to solve different parts of a problem) and accuracy (e.g., reducing the tasks to smaller, less complex problems reduces the chance of human error) of the additional information returned by the plurality of users.
In addition, by breaking the additional information into small, independent tasks, the plurality of users may not know to what they are contributing (enhancing the privacy of the user that requested the supplemental information), however, the plurality of users can still be effective in their individual tasks. In addition, by breaking the additional information into small, independent tasks, the media application may more easily outsource the requests for additional information. For example, one or more of the tasks used to generate the additional information may be the same as one or more of the tasks used to generate other additional information (e.g., additional information used to generate different supplemental information in response to a request for supplemental information about the same or a different event issued by the same or a different user). The response to each of the request and/or the additional information may be stored (e.g., on any of the devices accessible by communications network 414 (FIG. 4)) for subsequent retrieval.
Based on the responses, transmitted as messages including the additional information, from the plurality of other users, media application 206 may generate the supplemental information (e.g., supplemental information 110 (FIG. 1)) for display to the user on the user device 204. For example, media application may aggregate, append, and/or compare the additional information in each of the messages received from the plurality of users. The supplemental information may then be generated based on the aggregated, appended, and/or compared additional information (e.g., as described in FIG. 9 below).
In some embodiments, the plurality of users may receive summary information about the event with the request for additional information. (e.g., a video clip of a portion or segment of the media asset, a textual description, etc.), which may help the plurality of users provide additional information. For example, in some embodiments, the media application may instead of (or in addition to) determining the context of an event, determine a particular portion of the event that would be needed for the plurality of users to provide additional information about the event.
For example, the media application may use progress information associated with the progress of the media asset (e.g., line 506 (FIG. 5)) to determine at what point during the progression of the media asset the event occurred, and in response, transmit a portion of the media asset beginning ten second before that point and ending ten seconds after that point. For example, if the event is a statement made by a character or person in a media asset, the media application may determine when the statement began (e.g., the point of progress of the media asset in which the statement began) and ended. The media application may then include the portion containing the entire statement (and the event) in the request for additional information sent to the plurality of users.
The selected portion may include any amount of summary information that the media application determines is necessary for the user or any one of the plurality of users to understand the main action sequence. This summary information (e.g., a portion of the media asset) may be included with the request for additional information (e.g., in a file transmitted with the request), or may be included with the generated supplemental information as a reference for the user. For example, the media application may select a segment of the play length of the media asset or a particular scene of the media asset, which includes the event, for to display to the plurality of users along with the request for additional information.
For example, if an event (e.g., a statement) was in response to a question, the media application may also determine when the question began and ended, and send the entire question (or the play length of the media asset corresponding to the question) to the plurality of users as well. After determining the portion to provide to the plurality of users (e.g., a segment including the ten seconds before and the ten seconds after the event), the media application may provide the summary information of the event and any other material needed by the plurality of users to understand the event and/or request for supplemental information from the user.
In some embodiments, a portion of the media asset containing the event, as selected by the media application, may also include any amount of the play length of the media asset, or any amount of scenes or segments from the media asset. In some embodiments, the portion may include segments of the play length of the media asset or scenes from the media asset that are not adjacent during the normal playback of the media asset. For example, in some embodiments, a portion of the media asset may include one or more sequences or scenes of interest to the plurality of users, even though the particular sequences or scenes are featured at different points in the play length of the media asset. The media application may determine the segments or scenes to include based on a content recognition file (e.g., data structure 500 (FIG. 5)) describing the media asset. For example, if a plot point or other information, which may be relevant to an event is displayed earlier in the media asset, the summary information may include a portion of the media asset displaying the plot point.
In some embodiments, the length of a portion may be determined based on the genre of the media asset. In some embodiments, the length of the portion may depend on a user profile for the user or for anyone of the plurality of users. For example, a user profile and/or a content recognition file (e.g., data structure 500 (FIG. 5)) may indicate that a particular user may require more or less additional content. For example, the user may be aware of particular characters or plot points in the media asset and, therefore, may not require the additional content to introduce those aspects.
In some embodiments, the plurality of users may receive a particular user interface, which organizes the data about the event (e.g., a clip of the actual event, summary information about the event, information about the request for supplemental information issued by the user, etc.). The interface may also include an automatic submission form, which may be used to generate a message, which is sent to the media application.
In some embodiments, the media application may also receive user input from the user requesting the supplemental information that further affects the generation of supplemental information by the media application. For example, the user may request the supplemental information includes particular information (e.g., the factual basis of a statement), may request a multimedia format of the supplemental information (e.g., textual description, a video clip, etc.), may request a form of the supplemental information (e.g., a short description about the event, an Internet link to other sources of information on the event, or a true or false designation about the event) by entering user inputs (e.g., via user input interface 310 (FIG. 3)).
It should be noted that any information or process referred to in this disclosure that is referred to as being in response to a user input may alternatively and/or additionally be performed automatically by the media application (e.g., via control circuitry 304 (FIG. 3)). For example, in some embodiments, a user may request a true or false designation (e.g., an on-screen pop-up box indicating whether an event was true or false). Additionally and/or alternatively, in some embodiments, the true or false designation may appear automatically based on predetermined settings indicating to the media application to display a true or false designation in response to detecting an event.
In some embodiments, an indicator that supplemental information has previously been generated or is currently ready to generate (e.g., a plurality of users are available) may be displayed to a user (e.g., on display 100 (FIG. 1) during the event). The indicator may also indicate the particular information, the multimedia format, and/or the form of supplemental information that is available. An indicator may also appear with the supplemental information (e.g., supplemental information 110 (FIG. 1)), which allows the user to request additional supplemental information or provide feedback/responses (e.g., rating the quality of the supplemental information) to the media application and/or plurality of users.
In some embodiments, a user may also access (e.g., via selection of an indicator and/or automatically upon the supplemental information being generated) summary information about the event. For example, in some embodiments (e.g., when the supplemental information is not generated in real-time), the media asset may have progressed to a different point by the time the supplemental information is ready for display. Therefore, the media application may need to provide a video clip of the event or other summary information, so that the user remembers about what or why the supplemental information was requested.
FIG. 3 is a block diagram of an illustrative user equipment device in accordance with some embodiments of the disclosure. It should be noted that the components shown in FIG. 3 may be used to store, receive, transmit, and/or display the media assets, additional information, and/or supplemental information as described herein. For example, media application 206 (FIG. 2) may be implemented on user equipment device 300, and may issue instructions (e.g., displaying supplemental information 110 (FIG. 1)) via control circuitry 304.
Users may access media assets and the media application (and its display screens described above and below) from one or more of their user equipment devices. FIG. 3 shows a generalized embodiment of illustrative user equipment device 300. More specific implementations of user equipment devices are discussed below in connection with FIG. 4. User equipment device 300 may receive content and data via input/output (hereinafter “I/O”) path 302. I/O path 302 may provide content (e.g., broadcast programming, on-demand programming, Internet content, content available over a local area network (LAN) or wide area network (WAN), and/or other content) and data to control circuitry 304, which includes processing circuitry 306 and storage 308. Control circuitry 304 may be used to send and receive commands, requests, and other suitable data using I/O path 302. I/O path 302 may connect control circuitry 304 (and specifically processing circuitry 306) to one or more communications paths (described below). I/O functions may be provided by one or more of these communications paths, but are shown as a single path in FIG. 3 to avoid overcomplicating the drawing.
Control circuitry 304 may be based on any suitable processing circuitry such as processing circuitry 306. As referred to herein, processing circuitry should be understood to mean circuitry based on one or more microprocessors, microcontrollers, digital signal processors, programmable logic devices, field-programmable gate arrays (FPGAs), application-specific integrated circuits (ASICs), etc., and may include a multi-core processor (e.g., dual-core, quad-core, hexa-core, or any suitable number of cores) or supercomputer.

Answer: It uses a content-recognition module or algorithm.