Title: Resource Allocation in Communication Networks Using Abstraction and Constraint Satisfaction
1Resource Allocation in Communication Networks
Using Abstraction and Constraint Satisfaction
- C. Frei, B. Faltings and M. Hamdi
- ABB, EPFL and HK U. of Science and Tech.
- IEEE JSAC, Feb. 2005
2Outline (1/2)
- Introduction
- Resource Allocation in Network (RAIN)
- Problem Model
- Constraint Satisfaction Problem (CSP)
- Problem Solving in CSP
- Blocking Island (BI) Paradigm
- BI Clustering Scheme
- Problem Model
3Outline (2/2)
- CSP Problem Solving in BI
- Empirical Results
4Introduction
- The goal of QoS Routing
- To achieve global efficiency in network resource
utilization. - To satisfy the QoS requirements of each admitted
connection. - QoS Path Placement with Single constraint is a
NP-complete Problem. (Ex BW) - QoS Path Placement with Multiple constraints is a
NP-Hard Problem. (Ex E2E delay loss rate)
5Resource Allocation in Network
- Simple Analysis
- A complete network has N nodes.
- The length of route is bounded by N-1
- A routes length j has j-1 intermediate nodes
between Source and Destination. - The number of routes of length j is(N-2)! /
(N-j-1)! (???node)
6RAIN (cont.)
- The total number of routes between any pair of
nodes is - A complete graph with 10 nodes, there are 69281
routes between any pair of nodes.
7Uninformed Search
Criterion Time Space Optimal
BFS b(d1) b(d1)
DFS bm bm
Depth-Limit bl bl
b max branching factor of search tree. d
depth of the tree. m max depth of tree.
(bound) l limited depth
8Complete Algorithm
- Completeness The algorithm guaranteed to find a
solution. - Shortest Path method is a incomplete algorithm.
- There is a need for heuristics to guide the
search, in order to solve most problem in a
reasonable amount of time.
9Constraint Satisfaction Problem
- Define
- A triple (X, D, C), where X x1, x2, ,xn
is a set of variables, D D1, D2, , Dn is a
set of finite domains associated with the
variables, C C1, C2, , Cn is a set of
constraint. - The domain of a variable is the set of all
values that can be assigned to that variable.
10CSP (cont.)
11CSP (cont.)
12Problem Solving in CSP
- Backtracking (BT)
- Variable and value ordering
- Minimum Remaining Values heuristic (MRV)
- Degree heuristic
- Least-constraining-value
- Forward Checking (FC)
- Backjumping (BJ)
13BT and BJ
- BT is used for a DFS that choose values for one
variable at a time and backtracks when a variable
has no legal values left to assign. - BJ is the method backtracks to the most recent
variable in the conflict set. - The conflict set is a set of variables that
caused the failure.
14BT / BJ Example
WA
NT
Q
??????assign NSW, ???R,G, ???assign
SA. ??jump?Q, ??assign
SA no solution
15Variable and Value Ordering
- Variable ???????????assign
- Value ??????????assign
- Minimum Remaining Values heuristic (MRV)
- Choosing the variable with the fewest legal
values
16Variable and value ordering (cont.)
- Degree heuristic
- To reduce the branching factor on future choices
by selecting the variable that is involved in the
largest number of constraints on other unassigned
variables - Least-constraining-value
- It prefers the value that rules out the fewest
choices for the neighboring variables in the
constraint graph.
17Forward Checking
- Whenever a variable X is assigned, the forward
checking process looks at each unassigned
variable Y that is connected to X by a constraint
and deletes from Ys domain any value that is
inconsistent with the value chosen for X.
18Min-Conflicts
19Comparison of various CSP
Problem BT BTMRV FC FCMRV Min-Conflicts
USA (4-color) gt 1M gt 1M 2K 60 64
N-Queens(250) gt 40M 13,500K gt40M 817K 4K
20Blocking Island (BI) Paradigm
BIH BI hierarchy
BIG BI Graph
21Blocking Island (BI)
- A ß-blocking island (ß-BI) for a node x is the
set of all nodes of the network that can be
reached from x using links with at least
ßavailable resources, including x.
22BI (cont.)
- The BIs partition the network into equivalence
classes of nodes. - The BIs are unique and identify global
bottlenecks. - The splitting and merging BIs.
23BIH
24BIH (cont.)
- ß-BI can be obtained by simple greedy algorithm,
with a linear complexity of O(m), where m is the
number of links. - BIH is obtained by recursive calls to BIG
computation algorithm. The time complexity is
bounded in O(bm), where b is the number of
possible bandwidth requirement.
25Routing Problem Model
- A single demand du(c, e, 16K).
- Lowest level (LL) heuristic
- Not route to other clusters
- Lr c -gt b -gt d -gt e
- In the Lower BI, there are less critical links
clustered in it.
26Routing Problem Model (cont.)
- Route selection in BI
- Minimal splitting (MS)
- Cause the fewest splitting of BIs I the BIH.
- More splittings, more critical links
- Shortest-widest path (WP)
- Not good
27Routing Problem Model (cont.)
28CSP Problem Solving in BI
- FC
- Value Ordering
- LL heuristic
- Variable Ordering
- Dynamic Variable Ordering Highest Level (DVO-H)
- Dynamic Variable Ordering Numver Level (DVO-N)
- Min-Conflict
- Reroute conflict path with BJ
29DVO
- DOV-H
- First choose the demand whose lowest common
father of its endpoint is the highest n the BIH.
( highest BIH means low in resource requirement
and more routes constraints) - DOV-N
- First choose the demand for which the difference
in number of levels (in the BIH) between the
lowest common father of its endpoint and
resources requirements is lowest.
30Empirical Results
- Compared Algorithms
- Shortest Path Algorithm (SP)
- Shortest Path with Backtracking (BT-SP)
- BI with LL heuristic and DVO-HL (BI-LL-HL)
- BI with LL heuristic and DVO-NL (BI-LL-NL)
- BI-LL-HL with Backjumping (BI-BJ-LL-HL)
- BI-BJ-LL-NL
31Empirical Results (cont.)
- Tightness is defined as the ratio of resources
required for the best possible allocation (in
terms of used bandwidth) divided by the total
amount of resources available in the network.
32Empirical Results A
- Simulation-A Environment (feasible)
- Find a feasible solution
- 23,000 runs.
- Each run has a random topology of 20 nodes, 38
links and 80 demands. - Each demand characterized by two endpoints and a
bandwidth constraint. - A solution must allocate all demands within the
bandwidth constraint.
33Results A-1
Run Time lt 1s
34Results A-2
35Empirical Results B
- Simulation-B Environment (feasible)
- Find a feasible solution
- 6000 runs.
- Each run has a random topology of 38 nodes, 107
links and 1200 demands. - Each demand characterized by two endpoints and a
bandwidth constraint. - A solution must allocate all demands within the
bandwidth constraint.
36Results B-1
NL??Traffic??cluster?
37Empirical Results C
- Simulation-C Environment (feasible)
- Find a feasible solution
- 50 nodes, 171 links and 3000 demands.
- BI-BJ-LL-NL solved it in 4.5 min
- BT-SP was not able to solve it with in 12 hour.
- 1600?
38Empirical Results C
- Simulation-C1 Environment (infeasible)
- Find a feasible solution
- 300 runs.
- FUDI topology. (Europe Topology 12 nodes, 14
links, BW 634Mb/s) - Demand of each run 2024
- BW of Demand uniformly distributed in 510Mb/s
39Empirical Results C (cont.)
- Simulation-C2 Environment (infeasible)
- Find a feasible solution
- 300 runs.
- FUDI topology. (Europe Topology 12 nodes, 14
links, BW 634MB) - Demand of each run 78 164
- BW of Demand uniformly distributed in 0.05, 0.1,
0.2, 0.3, , 0.9, 1.0
40Results C-1
41Results C-2
42Conclusion
- Using BI abstractions coupled with CSP can solve
the network bandwidth allocation problem in
reasonable time with a complete search algorithm. - This method gives better solutions than Shortest
Path routing algorithms.