Minimizing Multi-Hop Wireless Routing State under Application-based Accuracy Constraints
Mustafa Kilavuz & Murat YukselUniversity of Nevada, Reno
Motivation
•Need of application-specific routings▫Flexibility, more control▫Expressiveness of the routing interface
must be at sufficient level▫Send(src, dst, data, option)▫Constraints
Path quality Path accuracy Path cost
Our focus
•Minimizing routing state under application specific constraints▫Trajectory-based Routing (TBR)
Geographic routing Application-specific routing
Path accuracy: follow a trajectory Very small state information
▫State cost – Path accuracy
Trajectory-based Routing (TBR)
TBR Model User Application
Trajectory Approximator
Trajectory-based
Forwarding (TBF)
Actual Trajector
y
Ideal Trajector
y
Constraints
Approximation Error
Destination
Source
Approximate Trajectory
y = ax3 + bx2 + cx + d
y = ax2 + bx + c
y = ax + b
Error• The area between the ideal and approximate
trajectories is called error.• Error is a measure of how accurate the
approximate trajectory is.• Accuracy constraint is an error tolerance
percentage that the total error should not exceed this limit. e.g. 30% or 40%. Otherwise it is considered as an infeasible solution.
• To calculate this we need to define what 100% error is. We can define it▫ Intuitively, by giving it a reasonable quantity.▫ Or considering the error of a single line from
source to destination 100% error assuming that any solution would be better than this approximation.
TBR Demonstration
Ideal Trajectory Actual
Trajectory
Data
Approximate Trajectory
Source
Destination
Intermediate Nodes
Cost Calculations• Aggregate cost = +
Source
Destination
Data
DataData
Packet Header Cost
Network state cost
Solving the problem
•Trajectory approximation is NP-hard▫Weight Constrained Shortest Path Problem
•Methods▫Exhaustive (slow, optimum)▫Genetic Algorithm▫Heuristics
Equal Error Heuristic Longest Representation Heuristic
1. Exhaustive Search
Possible Split Points
Approximate Trajectory
(curve + line + curve)
Ideal Trajectory
SelectedSplit Points
0 0 0 0 0 1 0 0 0 0 0 1 0 00 0 0 01 1
2. Genetic Algorithm•The first N+2 bits represent possible split
points•Next bit couples chooses which
representation is used starting from the corresponding split point
1 0 1 0 0 1 0 1 1 0 0 0 1 1…… 1 1……
N 2(N+1)
2nd Degree Curve line
3rd Degree Curve
Source Destination
3. Equal Error•First find the best fit to the whole trajectory•Calculate the error• If it is higher than the error tolerance
▫Divide the trajectory into two equal pieces and repeat the process for each piece
30% errorError Tolerance
= 20%
5% error
7% error
Ideal Trajectory
4. Longest Representation•Fit a representation to the shortest interval• Increase the interval and find the best fit until
we cannot find one under the error tolerance•Repeat the process for the rest of the trajectory
1% error
Error Tolerance = 5%1%
error
4% error
9% error 0%
error
1% error
4% error
2% error
Performance evaluation
•Comparison of algorithms▫Cost▫Time
Error tolerance %5
GA performs pretty close to the exhaustive
search
Longest representation heuristic is not
bad
Exhaustive Search
Error tolerance %50
GA performs pretty close to the exhaustive
search
Longest representation heuristic is not
bad
Exhaustive Search
Error tolerance %5
Equal Error heuristic runs
in no time
Exhaustive search takes
too much time
These run in reasonable
amount of time
Error tolerance %50
Equal Error heuristic runs
in no time
These run in reasonable
amount of time
Exhaustive search takes
too much time
Customization to the packet header and network state cost trade-off
Ideal TrajectoryApproximate Trajectory
High Network State CostLow Transmission Cost
Low Network State CostHigh Transmission Cost
Summary?
•Presented an optimization framework minimizing routing state under application-specific constraints
•Applied on TBR, minimizing the state cost under path accuracy constraint
•Proposed four methods to solve the approximation problem which is NP-hard
•Showed that the problem is customizable for different specifications
Future Work?
•User application input needs to be more defined
•The whole framework is to be tested together
•New representations for trajectories•Multiple connections•Mobility
Questions?