## 5 Experimentation
### Results
#### Reduction Factor for a Decay (\(r\))  
In Figure 17, we consider different decay at different times (300 s, 600 s, 1800 s, and 3600 s). The decay ranges from 1 (no decay) to (0.01) at each considered time. For all the scenarios, we can see that the delivery ratio overwhelmingly drops when the congestion reading is not \"penalized\" by a decay (decay weight close to 1) after an elapsed time. Hence, we conclude that considering a decay for the congestion readings is crucial.  
Figure 15: Left: delivery ratio vs. the time interval while the controller is gathering congestion readings. Right: delivery ratio depending on the number of inputs the linear regression is fed with.  
From the transient of the results, for each scenario, it can be seen that the decay at \(t\) heavily affects the performance. Nevertheless, it can be observed that for high decay \"penalties\" (small decay weight values), better results are obtained at any time than with lower decay (high values).  
In conclusion, the best strategy is to apply a high decay (small weight factor value), which implies a considerable reduction in the effect of the congestion measurement after a short elapsed time from its creation up to its reception by a node/controller.  
Figure 16: Delivery ratio depending on the prediction time factor.  
Figure 17: Tendency of the delivery ratio when combining different decay percentages at different times per scenario.  
Section 3.3 shows how the received measurements are aggregated through (3). This equation double weights the congestion reading by the number of aggregations it is formed by and by its decay, which is calculated with (1). Consequently, a congestion measurement formed by a high number of aggregated congestion measurements would have a high impact, despite its decay in the overall process of the congestion measurements aggregation. Hence, several of these congestion readings in the control's current aggregation process can lead to a long tail effect [39], where almost negligible old congestion readings would highly affect the whole aggregation result. In this case, we would have a congestion reading calculation based on, very likely, expired information. To avoid this undesirable situation, a decay threshold is specified so that the congestion readings with a decay smaller than decay threshold are not considered in the controller's congestion calculation. From Figure 18 it can be stated that, for all the scenarios, the best decay threshold is 10% of the decay.  
Figure 18 shows that, as expected, either aggregating old readings (small decay threshold) or discarding new readings (high decay threshold) worsens the performance consistently for all the scenarios. Nevertheless, although small decay thresholds diminish the performance for the Emergency scenario, high decay thresholds do not significantly affect such performance. This behaviour is due to the high variance in the latency of this scenario, so considering old readings does not significantly affect the performance.  
The number of aggregations weight setting (\(\alpha\)) used in (3) is the weight applied to the _number of aggregations_ an aggregated congestion measurement is formed of. As (3) is a two-factor weighted average, the weight related to the _decay_ is the _alpha_'s complementary \((1-\alpha)\).  
As we can see in Figure 19, for all the scenarios, we obtain the best performance with an alpha of 0.2. This result concludes that the decay of a congestion measurement is more relevant than the number of aggregations this aggregated measurement is formed of.