VANETs is a transportation network in which obstacles may disturb the communication. However, several challenges can hamper this such as obstacle can blocks communication. These techniques can develop effective collision avoidance systems which reduces the risk of accidents [23]. These issues can address by measuring different frequency bands of V2V channels. Development of data-driven methods can play a significant role in tackling this problem. Mathematically Blockage Prediction problem in VANETs represented by a set of vehicles \(V=\{{v}_{1}, {v}_{2},\dots \dots \dots ,{v}_{n}\}\) moves in a geographic area \(Ar\). Every vehicle \({v}_{i}\) has communication devices. The main objective is to detect the significance of obstacles on V2V communication channels, Identification of blockages caused by obstacles such as buildings, vegetation, and vehicle sizes. Optimization of management strategies of traffic in VANETs.The problem formulation is as given
1. Variables:
-
Binary variable \(B(v, t)\): Indicates the presence of blockage for vehicle \(v\) at time \(t\). \(B\left(v, t\right)=1\) if there is a blockage, and \(B\left(v, t\right)=0\) otherwise.
2. Parameters:
-
Position \(P(v, t)\):The geographical position of vehicle \(v\) at time \(t\).
-
Communication signal strength \(S(v, t)\): The strength of the V2V communication signal for vehicle \(v\) at time \(t\).
-
Obstacle characteristics \(O(v, t)\): Descriptive parameters representing the type, size, and location of obstacles in the vicinity of vehicle \(v\) at time \(t\).
3. Constraints:
-
Line-of-sight (LOS) constraint: The LOS condition between two vehicles \({v}_{1}\) and \({v}_{2}\) must be satisfied for successful communication, i.e., \(S({v}_{1} , t)>Threshold\) and \(S({v}_{2} , t)>Threshold\), where the threshold represents the minimum required signal strength for reliable communication.
4. Objective:
The impact of vehicles as obstacles in VANETs can be modeled mathematically using different performance metrics.
When an obstacle blocks or interferes with communication between two vehicles, the packet delivery ratio may decrease, which can lead to packet’s high probability loss and delay [24]. This can be expressed mathematically as:
$$Packet Delivery Ratio =\frac{Number of Packets Successfully Delivered}{Total Number of Packets Sent} \left(1\right)$$
Similarly, the cumulative delay is derived as the time required for a packet transmitted from the sender to the receiver. When an obstacle blocks or interferes with communication, the cumulative delay may increase, which can affect the performance of different applications, like collision avoidance or emergency warning systems. This can be expressed mathematically as:
$$End to End Delay = Time taken for Packet to be Transmitted from Source to Destination \left(2\right)$$
Finally, the network throughput is derived as the amount of data transmitted per unit of time. When obstacles block or interfere with communication, the network throughput may decrease, which can result in reduced traffic flow and increased travel time. This can be expressed mathematically as:
$$Network Throughput = Amount of Data Transmitted/Unit Time \left(3\right)$$
The system model for probable blockages in VANETs given in Fig. 1 refers to the conceptual framework that captures the factors and components involved in identifying potential blockages or obstacles in the context of VANETs. In this framework 1, 2, 3, and 4 shows the blockages or obstacles and V2V communications are represented by 5. It has vehicles which has on-board units (OBUs)involved in sharing data, road network that operates vehicles, VANET which facilitates vehicle-to-infrastructure (V2I) and V2V communication, sensor data for detecting and gathering data, data fusion model used for exchanging information that improves the accurate and reliable blockage detection, blockage detection is used to detect potential blockages or obstacles on the road. Other than that, it has alert generation model which generates alerts or warnings to inform the affected vehicles or the surrounding infrastructure. Based on this model it has decision-making system it reroutes the vehicles, adjusted traffic signal timings, or notifying emergency services.
An Optimizable Tree is a DT-based technique which is designed to minimize a particular objective function. It optimizes gradient-based optimization technique like stochastic gradient descent and has several advantages over state of art like flexibility for capturing more complicated decision planes and optimizes over fitting problem. The Optimizable Tree given by training dataset express in Eq. (4) and split function Eq. (5).
$$D=\left\{\left({x}_{1}, {y}_{1}\right),\left({x}_{2}, {y}_{2}\right) , \dots \dots \dots , \left({x}_{N}, {y}_{N}\right) \right\}$$
4
The split function \(s\left(.\right)\) that takes an input feature vector \(x\) and returns a binary decision, i.e., \(s\left(x\right) ϵ \left\{0, 1\right\}\). If \(s\left(x\right)=1\), then the example \(x\) is the left child node of the current tree node, and if \(s\left(x\right)=0\), then it is the right child node.
The split function \(s\left(.\right)\) can be expressed by a weight vector \(w ϵ {\mathbb{R}}^{d}\) and a bias term \(b ϵ \mathbb{R}\), i.e.,
$$s\left(x\right)=\left\{1 if wT\left(x\right) + b > 0, 0 otherwise\right\}$$
5
The weight vector and bias term are learned during training by optimizing a given objective function. The key function is typically defined as a sum of per-example loss functions
$$\mathcal{l}=\left({y}_{i }, {T}_{i}\left({x}_{i }\right)\right)$$
6
that measure the difference between the predicted label \({T}_{i}\left({x}_{i }\right)\) and the true label \({y}_{i }\), i.e.,
$$F\left(w, b\right)=\frac{1}{N}\sum _{i=1}^{N}\mathcal{l}=\left({y}_{i }, {T}_{i}\left({x}_{i }\right)\right)$$
7
The per-example loss function \(\mathcal{l}\) can be defined based on the specific task.
During training, the weight vector and bias term are updated using gradient descent or a variant thereof, i.e.,
$$w\leftarrow w-\eta {\nabla }_{w}\left(F\left(w, b\right)\right)$$
8
and
$$b\leftarrow b-\eta {\nabla }_{b}\left(F\left(w, b\right)\right)$$
9
where η is the learning rate and \({\nabla }_{w}\) and \({\nabla }_{b}\) are the gradients of the w and b, correspondingly.
The training process continues until convergence or a predefined stopping criterion is met. The resulting decision tree \(T\) is then used to make predictions on new, unseen examples by traversing the tree and applying the learned decision rules to the input feature vector.
An efficient Machine Learning-Based Approach for predicting Vehicle Obstacle Impact in VANETs using Optimizable Trees:
-
Collect data: Collect sensor data from vehicles, such as GPS location, speed, and acceleration, as well as obstacle data, such as location, size, and type.
-
Data pre-processing: Pre-process the data by removal of duplicates and normalizing the numerical features.
-
Feature extraction: Extract the features related from the pre-processed data, for instance distance to the nearest obstacle, angle of the obstacle relative to the vehicle's heading, and the vehicle's speed and acceleration.
-
Split data: Divide the dataset into training and testing sets.
-
Train the Optimizable Tree: Train an Optimizable Tree model on the extracted features and respective labels, such as whether a collision occurred or not, using gradient-based optimization.
-
Hyperparameter tuning: Optimize the hyperparameters of the Optimizable Tree model, using a grid search or other optimization method.
-
Model evaluation: Assess the proposed approach on the testing set, using suitable evaluation metrics.
-
Model deployment: Deploy the trained model in a real-world scenario, such as in a VANETs, to predict the likelihood of collisions with obstacles.
-
Model maintenance: Update and retrain the model periodically as new data becomes available, and continuously evaluate and monitor its performance to ensure reliable collision prediction in real-time scenarios.
The Optimizable Tree model takes a set of features\(X=\left\{{x}_{1}, {x}_{2}, \dots \dots \dots , {x}_{n} \right\}\) as input and produces a binary classification output y, which indicates whether a collision with an obstacle is likely or not.
The output of the Optimizable Tree model is defined as follows:
$$y=\text{s}\text{i}\text{g}\text{m}\text{o}\text{i}\text{d}\left(\text{z}\right)$$
10
where sigmoid is the logistic sigmoid function and z is the output of the final node in the tree which is defined as:
$$z= {w}^{T}h\left(x\right)$$
11
where \({w}^{T}\) denotes the transpose operation of weight vector and \(h\left(x\right)\) is a vector of features computed from the input features \(x\).
The features \(h\left(x\right)\) are computed by recursively applying a set of decision functions \({f}_{i}\left(x\right)\) to the input features \(x\), where i ranges from 1 to the number of nodes in the tree:
$$h\left(x\right)=\left[{f}_{1}\left(x\right), {f}_{2}\left(x\right), \dots \dots \dots \dots , {f}_{m}\left(x\right)\right]$$
12
where, \(m\) is the number of nodes in the tree.
Each decision function \({f}_{i}\left(x\right)\) takes the form:
$${f}_{i}\left(x\right)=ReLU\left({\left({w}_{i}\right)}^{T}{x}_{i}+{b}_{i}\right)$$
13
where \(ReLU\) is the rectified linear unit function, \({w}_{i}\) is a weight vector, \({b}_{i}\) is a bias term, and x is the input feature vector.
The weight vectors and bias terms are learned during training using gradient-based optimization, where the objective is to minimize a binary cross-entropy loss function:
$$L\left(y, t\right)=-t\text{log}y-\left(1-t\right)\text{log}\left(1-y\right)$$
14
Where, \(t\) is the ground-truth label (1 for collision and 0 for non-collision).
The gradient loss weight vectors and bias terms is computed using backpropagation, and the weights are updated using a gradient descent algorithm, such as Adam or SGD.
During hyperparameter tuning, the rate of learning and the number of layers can be varied to find the optimal combination of hyperparameters that maximizes the performance of the model on the validation set.
The confusion matrix (CM) is used to assess the performance of an ML technique. The given parameters are required in data-driven models for comparative analysis.
| Positive (Predicted) | Negative (Predicted) |
Positive (Actual) | \({\text{T}}_{\text{P}}\) | \({\text{F}}_{\text{N}}\) |
Negative (Actual) | \({\text{F}}_{\text{P}}\) | \({\text{T}}_{\text{N}}\) |
In this, the classifier correctly predicted \({\text{T}}_{\text{P}}\) and \({\text{T}}_{\text{N}}\) instances and incorrectly predicted
and \({\text{F}}_{\text{N}}\) instances. The CM can be used for calculating different performance metrics like \(A\), \(P\), \(R\), \(F\), etc.
Accuracy \(\left(A\right)\): Accuracy is a measure of how close a measured value (MV) is to the true value (TV) of the quantity being measured. It is computed by using Eq. (15).
$$A=\left(\frac{{\text{T}}_{\text{P}}+ {\text{T}}_{\text{N}}}{{\text{T}}_{\text{P}}+ {\text{F}}_{\text{P}}+ {\text{T}}_{\text{N}}+{\text{F}}_{\text{N}} }\right)$$
15
Precision \(\left(P\right)\): Eq. (16) define the precision (P) which depicts how closely the MV associated with one another.
$$P=\left(\frac{{\text{T}}_{\text{P}}}{{\text{T}}_{\text{P}}+ {\text{F}}_{\text{P}}}\right)$$
16
Recall \(\left(R\right)\): It is ability of technique to find all relevant things within a dataset given by Eq. (17).
$$R=\left(\frac{{\text{T}}_{\text{P}}}{{\text{T}}_{\text{P}}+{\text{F}}_{\text{N}}}\right)$$
17
F-Score \(\left(F\right)\): It can be computed as the harmonic average of R and P given in Eq. (18).
$$F=\left(\frac{2PR}{P+R}\right)$$
18
Specificity \(\left(S\right)\): It is given in Eq. (19).
$$S=\left(\frac{{\text{T}}_{\text{N}}}{{\text{F}}_{\text{P}}+ {\text{T}}_{\text{N}}}\right)$$
19
Error Rate \(\left(ER\right)\): It is computed by Eq. (20)
$$ER=\left(\frac{No. of incorrect predictions}{Size of the dataset}\right)$$
20