Jonathan Howard wrote:
The current StandardNodeEstimator.estimate() is trying to calculate the average time a node will take for any outcome.
Shouldn't it be returning the time if it succeeds + punishment for when it fails?
It is (or should be). It returns pSuccess*tSuccess + pFailure*tFailure
That shows what I say first and is dependent on (for working) as desired tSuccess < tFailure.
(pSuccess + pFailure) = 1 tSuccess ~= tFailure -> estimate ~= (pSuccess + pFailure)*tFailure -> estimate ~= tFailure (or tSuccess) If your dealing with quick and slow nodes it will always favour the quick.
Node 1 - pSuccess 0.1 tSuccess 1000 pFailure 0.9 tFailure 2000 estimate = 1900
Node 2 - pSuccess 0.9 tSuccess 5000 pFailure 0.1 tFailure 10000 estimate = 5500
The actual result is dependent on the real values but I would favour my suggested change and tweak the punishment.
I can't resist :-) Who is your money on the tortoise or the hare.
Note: Just to point out for anyone not knowing the lower estimate is the first (preferred) node tried.
_______________________________________________ Devl mailing list [EMAIL PROTECTED] http://dodo.freenetproject.org/cgi-bin/mailman/listinfo/devl