This module implements a distributed dual-gradient based algorithm for adapting the network routing to the one which minimizes the average number of hops, that results in a purely decentralized backpressure scheme.
Ths event processor is adapted to permit observing the algorithm performances under user-defined conditions,
including asynchronous distributed executions, where signaling can be affected by losses and/or delays, and/or measurement errors.
The time evolution of different metrics can be stored in output files, for later processing.
As an example, see the fig_sec10_3_backpressureRoutingDual.m MATLAB file used for generating the graph/s of the case study in the
book using this algorithm.
To simulate a network with this module, use the Online_evGen_doNothing generator.
signaling_isSynchronous: Boolean type (default: false). true if all the distributed agents involved wake up synchronously to send the signaling messages
signaling_averageInterMessageTime: Default: 1.0 Average time between two signaling messages sent by an agent
signaling_maxFluctuationInterMessageTime: Default: 0.5 Max fluctuation in time between two signaling messages sent by an agent
signaling_averageDelay: Default: 0.0 Average time between signaling message transmission by an agent and its reception by other or others
signaling_maxFluctuationInDelay: Default: 0.0 Max fluctuation in time in the signaling delay, in absolute time values. The signaling delays are sampled from a uniform distribution within the given interval
signaling_signalingLossProbability: Default: 0.05 Probability that a signaling message transmitted is lost (not received by other or others involved agents)
routing_fixedPacketDurationAndSchedulingInterval: Default: 1.0 Fixed slot size (synchronized all links)
routing_numTrafficUnitsOfOnePacket: Default: 1.0 One packet in one slot time is this traffic
routing_maxNumberOfN2PStatisticsIntervals: Default: 50 Simulation length in number of scheduling intervals
routing_statNumSchedSlotBetweenN2PRecomputing: Default: 100 Number of scheduling slots between two N2P update and storing a stat trace
routing_pressureDifferenceThreshold: Default: 1.0 Pressure difference parameter (delta P in the book)
gradient_gammaStep: Default: 0.01 Gamma step in the gradient algorithm
simulation_randomSeed: Default: 1 Seed of the random number generator
simulation_outFileNameRoot: Default: backpressureRoutingDual Root of the file name to be used in the output files. If blank, no output