ML Algorithms
for
WSN
Sahand Khoshdel, 810196607
A Comprehensive Survey on ML algorithms used in Wireless Sensor Networks
This presentation is a summary of the main topics discussed in the paper:
“Machine Learning Algorithms for Wireless Sensor Networks: A survey” by
D. Praveen Kumar, [Link], [Link]
Published on Elsevier, 2019
Table of Contents
1. Introduction to WSN’s 2. Overview on ML Algorithms
3. WSN’s challenges 4. What can ML solve?
01. Introduction To WSN
Wireless Sensor Networks
Self-configured, Infrastructure-less wireless networks of sensors
that monitor physical or environmental conditions
and co-operatively pass their data through the network to a main
location (sink) where the data can be observed and analyzed
What's actually done?
Sensing & Monitoring
Sensors collect the signals from a
source and convert them into
electric signals and eventually a
stream of bits
Routing &
Data Transmission
Nodes act as routers, find the
best route to deliver data to the
sink node
Post Processing &
Data Analysis
After monitored data is delivered to
the sink node (base station), it is
ready for further processing in order
to extract useful information and to
issue control signals
IoT WSN
Technology Technology
02. Overview on
ML algorithms
The
Art of
Machine Learning
The process of self-improvement using data in computing algorithms in order to
extract useful, hidden and complex information, predict unknown outcomes and
learn how to react according to a certain data distribution
Supervised
Learning
An overview on
Semi-Supervised Machine Reinforcement Machine Learning
Approaches
Learning
Learning Learning
Unsupervised ML
Learning Learning
Problems
Deep Classification Regression
Learning
Supervised
Learning
Learning is done by observing
training data labels, extracting
high-level info about the data
and trying to use it to predict Evaluation is done by calculating a
labels for unseen test data. cost function which the learning
process aims to minimize.
Supervised
Learning Bayesian
Learning
Algorithms Evolutionary
Algorithms
The major responsibilities Supervised
of supervised learning KNN Learning SVM
algorithms is to generate a Algorithms
model that:
1. Represents relationships
and dependency links Linear &
Neural
Decision Logistic
between input features. Tress
Regression
Networks
2. Forecast objective outputs.
Random
Forest
Unsupervised
Learning
The model tries to extract relationships
according to similarities and differences
among data, instead of using a labeled dataset
This may be necessary when no labels exist, when we
don’t have access to labels, when we cant rely on them,
or when only similarities are meant to be found
Unsupervised
Learning
Algorithms
Clustering algorithms group data based on
similarities and differences spotted among them.
Unsupervised
Too much features make data analysis, Learning
Algorithms
interpretation and label prediction very complex.
Dimensionality
Clustering reduction
Dimensionality reduction relies on expressing
useful information in less dimensions, making it
easier to process and interpret
PCA ICA
Reinforcement Learning
Agent interacts with the environment by taking
actions, receiving rewards and moving to the
next state.
In each iteration, either state values (V) or action-
state (Q) values are updated according to the
observed reward, resulting in a policy update
leading to agent’s better performance.
Q- learning Algorithm:
Reinforcement Learning
Many RL algorithms are based
on value or policy iteration,
the process of evaluation and
improvement through a loop
until values from a policy and
optimal values converge to
one another.
What are the main
considerations in designing
and maintaining a WSN?
How is ML solving these issues?
Appropriate algorithms?
03 & 04. WSN problems, ML solutions
1. Localization ML becomes helpful in reconfiguration and
increasing location accuracy
The problem of
finding each sensor’s Proximity
Based
exact position.
Angle & Range
Distance Localization
based Based
The main problem is
Solution to dynamic changes: when the position of a
Reconfiguration and Known sensor changes
location
Reprogramming based
dynamically due to
external causes.
How does ML help Localization?
1. Classifying anchor nodes and unknown nodes in the network.
2. Creating clusters which can be trained separately to find coordinates rapidly.
3. Higher Accuracy is obtained as intelligent search in parameter space is done to
optimize the system.
- Clustering nodes requires RSSI data for each node, which shows the received signal
strength of each node.
Anchor nodes are the nodes
which already know their location
via GPS, …
Other nodes locate themselves
according anchor nodes
Lets see some examples
1. LPSONN:[10]
A new PSO-based neural network, where each anchor node calculates hop count with
others and sends the info to the header. The head anchors are then trained using
neural nets.(routing optimization)
A PSO(Particle swarm optimization) algorithm is used to find optimal number of
hidden layers. [10]
Lets see some examples
2. Range-free localization via Energy efficient distance estimation (ANN based): [11]
- Robust to attenuation, interference, shadowing and fading
- High accuracy guaranteed
3. Improved PSO localization for mobile sensors (ANN based): [12]
- PSO used to optimize neuron numbers
- Higher accuracy than traditional methods
4. Vectored PSO + Fuzzy logic for non-uniform node deployment [13]
- Lower Complexity
Lets see some examples
5. Fuzzy Linguistic Model for indoor WSN’s [14]
- Fuzzy logic used in two areas: 1- RSSI variation handling / 2- Fuzzy location indicator
6. Graph-based localization using CNN+SVM [15]
- Analyzing target signals with heterogeneous dual classifiers
- Identifies leakage location of the network
7. SVM for large scale WSN’s [16]
- Solving large training overhead issue with sample reduction by fuzzy c-means
2. Coverage & Connectivity Sweep
Coverage: Sensor monitoring efficiency
Partial
Focused
Coverage Barrier
Coverage
Full Partial Target
Connectivity: No isolated sensors! Deterministic
Random
Every sensor in the network should
directly send their data to the sink node Sensor
through relay nodes Deployment
Coverage holes (uncovered areas)
are shown in white
Node A, B are disconnected as no
nodes are in their range to sense
their signal (Low RSSI)
How does ML help Coverage & Connectivity?
1. Minimizing number of nodes for covering an area
2. Obtaining desired locations for #1
3. Changing routes dynamically based on the
connected nodes.
3. Anomaly Detection Blackhole
Attack
Anomaly: Rare and significant observations
These misbehaviors mainly
WSN
happen in two fields: Misdetection
Attack
Wormhole
1. Measuring sensor data Attacks Attack
2. Traffic-related attributes
While data transmission there is a possibility Sinkhole
Attack
of data loss because of abnormal attacks!
We want fast networks in many applications!
Anomaly detection leads to overhead minimization! Higher pure data rate!
Blackhole Attack
In a blackhole attack a node receives the data instead of forwarding it
towards the base station
Misdirection Attack
The attacker routes the packet through distant nodes rather than it’s
neighbors, resulting in a longer route and a throughput decrease
Wormhole attack
Some attacker nodes create a tunnel route to manipulate packets in
their journey towards the base station
Sinkhole attack
The attacker node advertises an optimal route (via itself to the base station)
to its neighbors, causing data loss due to congestion and expiration
Normal Blackhole Misdirection
Flow Attack Attack
Wormhole Sinkhole
Attack Attack
How does ML help Anomaly detection?
1. Self-learning threshold algorithm
2. Sleep-scheduling approaches
3. Detecting data inconsistencies, to prevent sinkhole
attacks (such as DoS)
4- Suitable for non-stationary environment.
5- Using historical information in dynamic online
anomaly detection
4. Fault detection
WSN’s are often implemented in Battery
Failures
harsh and hostile conditions …
Challenges in fault detection: Communication WSN Topological
Failures
Faults Challenges
1. Resource limitation
2. Environment variability
3. Deployment changes
Inefficient
Software
4. Detection accuracy Hardware
Base
failures
Station
Failures
How does ML help fault detection?
1. Fault categorization
2. Improving accuracy relative to traditional methods
3. Brisk detection
Goals:
5. Routing 1. Reduce Energy Consumption
Routing is one of the 2. Increase Network Lifetime
most important and
challenging issues in Generally
WSNs due to many nodes near to
limitations: the base station
consume more
1. Power limitation power because
they act as a
2. Transmission BW
relay to other
3. Memory capacity nodes too.
4. Processing capacity
How does ML help routing?
1. Multivariate optimization with smart search to find the best path
according to several factors.
2. Adopts to dynamic environment without reprogramming
3. Decreasing overhead, increasing throughput
Smart Routing
- Sending messages to neighbor nodes on a random fashion
causes energy consumption, data rate and congestion
problems.
- Cluster nodes into efficient neighborhoods and select head
nodes for each cluster
- Forward data to your head node which is responsible of
sending it to the base station
Clustering Nodes
- To implement smart routing algorithms are usually separately
developed to cluster and then choose head nodes for clusters
Training data should be gathered and stored in a structured format to be ready for post processing
6. Congestion Control
Congestion happens when a node
handles more data than it’s capacity
It can happen for several reasons
1. Node buffer overflow
2. Many-to-One data transmission scheme
3. Packet Collision
4. Dynamic Time Variations
How does ML help congestion control?
[Link] traffic estimation, resulting in better
routing and less congestion
2. Dynamic optimization of transmission ranges
Thanks for your attention!