Algorithm 1: LGR Algorithm. |
Begin |
Input: Network topology, data source nodes |
Output: Data aggregation tree |
Initialize Lagrangean multiplier vectors ui(0) = 0, ∀i = 1,.…,6. |
and LB = a very large negative number (e.g., −∞) //upper and lower bounds, respectively |
quiescence_age = 0, and step_size = 2. |
Foriteration = 1 to Max_Iteration_Number, perform the following: |
Solve subproblem 1, subproblem 2, subproblem 3, subproblem 4, subproblem 5. |
ComputeZLR in (LR). |
IfZLR (u) > LB
|
LB = ZLR(u) and quiescence_age = 0. |
Elsequiescence_age = quiescence_age + 1. |
Ifquiescence_age = Quiescence_Threshold
|
step_size = step_size/2 and quiescence_age = 0. |
RunLGR-Primal algorithm (Figure 5). |
Compute the new upper bound ub. |
Ifub < UB then UB = ub. |
Update the step_size. |
Update the Lagrangean multiplier vectors. |
End For
|
End |