vault backup: 2024-10-21 00:46:21
This commit is contained in:
parent
467538df17
commit
ccf1df617d
17 changed files with 452 additions and 63 deletions
138
Autonomous Networking/notes/5 Drones.md
Normal file
138
Autonomous Networking/notes/5 Drones.md
Normal file
|
@ -0,0 +1,138 @@
|
|||
#### Unmanned Aerial Vehicle (UAV)
|
||||
- UAV, commonly known as a Drone, is an aircraft without a human pilot aboard (unmanned or uncrewed)
|
||||
- it operates
|
||||
- under remote control by a human
|
||||
- autonomously by on board computers
|
||||
|
||||
**Weight:** from 0.5g 15000kg
|
||||
**Maximum speed:** up to 11265Kph
|
||||
**Propellant:**
|
||||
- fossil fuel
|
||||
- battery
|
||||
|
||||
#### Usages
|
||||
- can provide timely disaster warnings
|
||||
- medical supplies
|
||||
- dangerous situations
|
||||
- traffic monitoring, wind estimation, remote sensing...
|
||||
|
||||
I many scenarios, UAVs need to exchange a relatively large amount of data among themselves and/or a control station. In many case there isn't any network infrastructure available. Drones can also used to expand terrestrial communication networks.
|
||||
|
||||
Drones can be equipped with several standard radio modules:
|
||||
- Wi-Fi
|
||||
- Cellular
|
||||
- LPWAN (low power wide area network, es. LoRa)
|
||||
|
||||
## Routing
|
||||
may require multi-hop data connections
|
||||
#### Comparison WSN with Dronets
|
||||
|
||||
| | **WSN** | **Dronet** |
|
||||
| ------------------ | --------------------------------- | -------------------------------- |
|
||||
| **Mobility** | none or partial | high, even 3D |
|
||||
| **Topology** | random, star, ad-hoc node failure | mesh |
|
||||
| **Infrastructure** | absent | absent |
|
||||
| **Energy source** | battery | battery (very limited) |
|
||||
| **Typical use** | environmental monitoring | rescue, monitoring, surveillance |
|
||||
|
||||
**Goals of routing protocols:**
|
||||
- increase delivery ratio
|
||||
- loop freedom
|
||||
- low overhead
|
||||
- reduce delays
|
||||
- energy consumption
|
||||
- scalability
|
||||
|
||||
### Proactive routing protocols
|
||||
Are they suitable for UAV networks?
|
||||
- slow reaction to topology changes, will cause delays
|
||||
- bandwidth constraints
|
||||
|
||||
Protocols:
|
||||
- OLSR - Optimize Link State Routing
|
||||
- DSDV - Destination-Sequenced Distance Vector
|
||||
- B.A.T.M.A.N. - Better Approach to Mobile Ad Hoc Network
|
||||
|
||||
### Reactive protocols
|
||||
- DSR - Dynamic Source Routing
|
||||
- AODV - Ad hoc On Demand Distance Vector
|
||||
|
||||
#### Hybrid protocols
|
||||
- ZRP - Zone Routing Protocol
|
||||
- TORA - Temporarily Ordered Routing Algorithm
|
||||
|
||||
### B.A.T.M.A.N.
|
||||
A proactive, distance-vector routing protocol for Mobile Ad-hoc Networks (MANETs) and Mesh Networks. Designed for decentralized decision-making and self-organizing networks.
|
||||
|
||||
**Key features:**
|
||||
- decentralized routing
|
||||
- no node has global knowledge of the entire network
|
||||
- next-hop based
|
||||
- nodes only know their best-hop neighbor for reaching a destination
|
||||
- link quality driven
|
||||
- decisions are based on the quality of the link between nodes
|
||||
- self-healing
|
||||
- adapts to changes automatically
|
||||
|
||||
**How batman works**
|
||||
- Originator messages (OGMs):
|
||||
- broadcast to announce its presence
|
||||
- OGMs are forwarded by neighbors to propagate through the network
|
||||
- each OGM carries a sequence number to ensure the information is up-to-date and avoid routing loops
|
||||
- nodes evaluates how frequently they receive OGMs to their neighbors to determine link quality
|
||||
- each node maintains a routing table with the best next-hop neighbor based on link quality
|
||||
|
||||
- fields inside OGM
|
||||
- originator address
|
||||
- sequence number
|
||||
- TTL (hop limit)
|
||||
- LQ (quality between the sender and the originator)
|
||||
- hop count
|
||||
|
||||
Asimmetry problem:
|
||||
If A can reach B well, B thinks it can reach A well too. But it may not be the case.
|
||||
To overcome the issue there is the Transmit Quality (TQ) algorithm.
|
||||
|
||||
B transmits RQ (receive quality) packet to A. A counts them to know the link quality.
|
||||
A knows the echo quality by counting the rebroadcasts of its own OGMs from its neighbors.
|
||||
Dividing echo quality by receiving quality, A can calculate the transmit quality.
|
||||
|
||||
**propagation**
|
||||
A when originates the OGMs, it sets TQ to 100%. The neighbor computes their own local link quality into the received TQ value and rebroadcast the packet.
|
||||
- $TQ = TQ_{incoming} * TQ_{local}$
|
||||
|
||||
![[Pasted image 20241017154152.png]]
|
||||
|
||||
### Geographic protocols
|
||||
the geographical position information of the nodes is utilized for forwarding decisions.
|
||||
Nodes knows their position by GPS.
|
||||
|
||||
Geographic routing schemes don't need the entire network information
|
||||
- no routing discovery
|
||||
- no routing tables
|
||||
- forward packet based on local information
|
||||
- less overhead, bandwidth and so energy consumption
|
||||
- for routing decisions a drone needs only the neighbors and destination position
|
||||
|
||||
Every node has coordinates of neighbors.
|
||||
|
||||
**Dead end problem**
|
||||
several techniques have been defined in sensor networks to recover from a dead end but they are often not applicable to dronets.
|
||||
|
||||
Geo routing is based on three main approaches
|
||||
|
||||
##### Greedy forwarding
|
||||
as stated before
|
||||
|
||||
#### Store-carry and forward
|
||||
When the network is intermittently connected, forwarder nodes do not have any a solution to find a relay node. Not possible to forward any data packet to a predefined node which is not in range. So the current node will carry the packet until it meet another node or the destination target itself.
|
||||
|
||||
#### Prediction
|
||||
based on geographical location, direction, and speed to predict the future position of a given node. They will predict the position of a next relay node.
|
||||
|
||||
### DGA algorithm
|
||||
![[Pasted image 20241017161724.png]]
|
||||
![[Pasted image 20241017161747.png]]
|
||||
|
||||
![[Pasted image 20241017161803.png]]
|
||||
|
55
Autonomous Networking/notes/6 Internet of Things.md
Normal file
55
Autonomous Networking/notes/6 Internet of Things.md
Normal file
|
@ -0,0 +1,55 @@
|
|||
IoT term is used to refer to
|
||||
- the resulting globlal network of connecting smart objects
|
||||
- the protocols ...
|
||||
- ...
|
||||
|
||||
required features:
|
||||
- devices hetereogeneity
|
||||
- scalability
|
||||
- data ubiquitous data exchange
|
||||
- energy-optimized solutions
|
||||
|
||||
|
||||
#### Backscattering
|
||||
- allows devices to run without battery
|
||||
- only available at research level for now
|
||||
- use radio frequency signals as power source
|
||||
- two types
|
||||
- ambient
|
||||
- rfid
|
||||
|
||||
##### Ambient backscattering
|
||||
- devices harvest power from signals available in the environment
|
||||
- they use existing RF signals without requiring any additional
|
||||
|
||||
- Performance drawbacks
|
||||
- low data rate (about 1kbps)
|
||||
- not suitable for real-time applications that continuously exchange data
|
||||
- availability of signals
|
||||
- signal may not be available indoor or not powerful enough
|
||||
|
||||
##### RFID backscattering
|
||||
|
||||
...
|
||||
|
||||
##### Battery free smart home
|
||||
- in a smart home there may be a lot of smart devices
|
||||
- if every one of them has a battery, it's not good for the environment
|
||||
- we can deploy an RFID reader with multiple antennas that covers all the different rooms
|
||||
|
||||
### Communication
|
||||
add scheme slide
|
||||
|
||||
RFID tags run EPC Global Standard
|
||||
- in a smart home we may want less bits dedicated to the tag id and more dedicated to the actual data
|
||||
- 8 bits for ID
|
||||
- 6 bits for data
|
||||
- 4 for CRC
|
||||
|
||||
### Infrastructure based wireless networks
|
||||
- base stations connected to wired backbone network
|
||||
- stations choses the closest base station
|
||||
- Limits
|
||||
- when no infrastructure is available
|
||||
- expensive/inconvenient to setup
|
||||
- when there is no time to set it up
|
122
Autonomous Networking/notes/6.1 RL.md
Normal file
122
Autonomous Networking/notes/6.1 RL.md
Normal file
|
@ -0,0 +1,122 @@
|
|||
Case study: battery-free smart home
|
||||
- each device produces a new data sample with a rate that depends on the environment and the user (continuously, event based / on demand...)
|
||||
- a device should only transmit when it has new data
|
||||
- but in backscattering-based networks they need to be queried by the receiver
|
||||
|
||||
In which order should the reader query tags?
|
||||
- assume prefixed timeslots
|
||||
- TDMA with random access performs poorly
|
||||
- TDMA with fixed assignment also does (wasted queries)
|
||||
- we want to query devices that have new data samples and avoid
|
||||
- data loss
|
||||
- redundant queries
|
||||
|
||||
Goal: design a mac protocol that adapts to all of this.
|
||||
One possibility is to use Reinforcement Learning
|
||||
|
||||
#### Reinforcement learning
|
||||
How can an intelligent agent learns to make a good sequence of decisions
|
||||
|
||||
- an agent can figure out how the world works by trying things and see what happens
|
||||
- is what people and animals do
|
||||
- we explore a computational approach to learning from interaction
|
||||
- goal-directed learning from interaction
|
||||
|
||||
RL is learning what to do, it presents two main characteristics:
|
||||
- trial and error search
|
||||
- delayed reward
|
||||
|
||||
- sensation, action and goal are the 3 main aspects of a reinforcement learning method
|
||||
- a learning agents must be able to
|
||||
- sense the state of the environment
|
||||
- take actions that affects the state
|
||||
|
||||
Difference from other ML
|
||||
- no supervisor
|
||||
- feedback may be delayed
|
||||
- time matters
|
||||
- agent action affects future decisions
|
||||
- ...
|
||||
- online learning
|
||||
|
||||
Learning online
|
||||
- learning while interacting with an ever changing world
|
||||
- we expect agents to get things wrong, to refine their understanding as they go
|
||||
- the world is not static, agents continuously encounter new situations
|
||||
|
||||
RL applications:
|
||||
- self driving cars
|
||||
- engineering
|
||||
- healthcare
|
||||
- news recommendation
|
||||
- ...
|
||||
|
||||
Rewards
|
||||
- a reward is a scalar feedback signal (a number)
|
||||
- reward Rt indicates how well the agent is doing at step t
|
||||
- the agent should maximize cumulative reward
|
||||
|
||||
RL based on the reward hypotesis
|
||||
all goals can be described by the maximization of expected cumulative rewards
|
||||
|
||||
communication in battery free environments
|
||||
- positive rewards if the queried device has new data
|
||||
- else negative
|
||||
|
||||
Challenge:
|
||||
- tradeoff between exploration and exploitation
|
||||
- to obtain a lot of reward a RL agent must prefer action that it tried and ...
|
||||
- ...
|
||||
|
||||
exploration vs exploitation dilemma:
|
||||
- comes from incomplete information: we need to gather enough information to make best overall decisions while keeping the risk under control
|
||||
- exploitation: we take advanced of the best option we know
|
||||
- exploration: test new decisions
|
||||
|
||||
### A general RL framework
|
||||
at each timestamp the agent
|
||||
- executes action
|
||||
- receives observation
|
||||
- receives scalar reward
|
||||
|
||||
the environment
|
||||
...
|
||||
|
||||
agent state: the view of the agent on the environment state, is a function of history
|
||||
- the function of the history is involved in taking the next decision
|
||||
- the state representation defines what happens next
|
||||
- ...
|
||||
|
||||
#### Inside the agent
|
||||
one or more of these components
|
||||
- **Policy:** agent's behavior function
|
||||
- defines what to do (behavior at a given time)
|
||||
- maps state to action
|
||||
- core of the RL agent
|
||||
- the policy is altered based on the reward
|
||||
- may be
|
||||
- deterministic: single function of the state
|
||||
- stochastic: specifying probabilities for each actions
|
||||
- reward changes probabilities
|
||||
- **Value function:**
|
||||
- specifies what's good in the long run
|
||||
- is a prediction of future reward
|
||||
- used to evaluate the goodness/badness of states
|
||||
- values are prediction of rewards
|
||||
- Vp(s) = Ep[yRt+1 + y^2Rt+2 ... | St = s]
|
||||
- **Model:**
|
||||
- predicts what the environment will do next
|
||||
- many problems are model free
|
||||
|
||||
back to the original problem:
|
||||
- n devices
|
||||
- each devices produces new data with rate_i
|
||||
- in which order should the reader query tags?
|
||||
- formulate as an RL problem
|
||||
- agent is the reder
|
||||
- one action per device (query)
|
||||
- rewards:
|
||||
- positive when querying a device with new data
|
||||
- negative if it has no data
|
||||
- what to do if the device has lost data?
|
||||
- state?
|
Loading…
Add table
Add a link
Reference in a new issue