If you are willing to test a few things to reduce the effect we can start right away. You could set TQ_GLOBAL_WINDOW_SIZE to 1 in order to deactivate the averaging of the TQ values. Aslo, some people reported that reducing the hop penalty also will increase the speed.
I already tried changing TQ_GLOBAL_WINDOW_SIZE to 5 instead of 10 and that helped. Changing it to one is interesting. I've not tried it yet, but i would of thought some ring buffer was needed to handle the 0s which are added when originator messages are received for other neighbors.
I already tried reducing the hop penalty. However testing showed it behaved worse. This i don't understand. So i'm guessing my test setup changed between my different tests. So i need to run the test again, both the control and the modified hop penalty.
What ideas do you have for improving the algorithms. Depending on the scale of work needed i might have some time to do some coding.
Andrew