Pairwise Influence Scheme for Continuous BTS Systems

Pairwise voting budgets are becoming a feature in decentralised decision-making systems. However there is currently no system - that I am aware of at least - designed for continuous probabilities.

Here I present a design built with this specific problem in mind. The goals are to guard against collusion but to not overly punish genuine alignment. In the latter case like-minded people may occasionally align and eventually exhaust their budgets over a long timeframe. To avoid them being punished I’ve introduced a time decay to the effect of occasional coincidences. Another innovation is to heighten the effect of influence dampening in smaller markets that are more susceptible to collusion and reduce it for larger markets.

For simplicity I focus my efforts on the personal probability element rather than the meta probability as colluding on that element brings little benefit AFAICS.

Influence–weight rule for continuous-probability BTS

(time decay, no hard distance cut-off)

1 Pair-closeness score

For every ordered pair (i,j):

s_{ij}\;=\;\sum_{m\in M_{ij}} \exp\!\Bigl(-\tfrac{|\,p_i^{(m)}-p_j^{(m)}|}{\tau}\Bigr)\; \exp\!\Bigl(-\tfrac{t(m)}{T}\Bigr),
  • M_{ij} = resolved markets in which both i and j voted.
  • p_i^{(m)} = probability agent i reported in market m.
  • \tau = distance scale (e.g. 0.10) – nearer votes add more.
  • t(m) = age of that market (days or rounds).
  • T = memory constant (e.g. 90 days) – every T days a clash’s weight multiplies by e^{-1}\!\approx0.37.

2 Agent-level crowdedness

s_i \;=\; \sum_{j\neq i}s_{ij}.

3 Influence weight applied to all future reports

w_i \;=\; \bigl(\eta + s_i\bigr)^{-\lambda}, \qquad \eta>0,\; 0<\lambda\le1.

A newcomer (s_i\!\approx\!0) keeps weight \eta^{-\lambda};
repeated recent & close overlaps make s_i large and shrink w_i smoothly.

4 Weighted kernel densities fed into BTS

Primary density

\widehat f(x)= \frac{1}{\,h(n)\,\sum_j w_j}\; \sum_{j=1}^{n} w_j\, K\!\Bigl(\tfrac{x-p_j}{h(n)}\Bigr) +\alpha(n),

and analogously for \widehat g(x) using the meta reports m_j.

  • Kernel K = Epanechnikov.
  • Bandwidth h(n)=C\,n^{-1/5}.
  • Pseudo-count \alpha(n)=\alpha_0\,n^{-\gamma}.

Features

  • Guards against persistent collusion
    – a bloc that keeps posting very similar recent numbers drives its own w_i down sharply.
  • Occasional coincidences cost little
    – one perfect clash trims a newcomer’s weight by at most
    (\eta/(\eta+1))^{\lambda} (≈ 16 % with \eta=2,\lambda=0.5) and the hit decays exponentially with time.
  • No new strategic lever
    – weights don’t affect the incentives, truth-telling remains optimal.

Choosing λ – how steeply one agent’s influence falls

The influence weight is

w_i = (\eta + s_i)^{-\lambda},

and in the table below I use η = 2 for illustration.

λ-value Influence after 1 close clash Influence after 5 close clashes Dampening feel Likely pool size
0.80 72 % 37 % very steep ≤ 50 voters
0.70 75 % 42 % steep 50 – 100
0.60 78 % 47 % medium 100 – 500
0.50 82 % 53 % gentle 500 – 1 000
0.40 85 % 61 % very gentle 1 000 +
  • Close clash means the two probabilities were within the distance scale \tau.
  • Percentages are computed with η = 2; choosing a different η shifts every row slightly but keeps the ordering.
  • These are suggested values. It’s possible, even likely, they’ll need to be more punitive in practice if we see well-organised groups trying to influence outcomes.

Time-decay lookup for memory constant (T = 30) days

Age of overlap t Multiplier \exp(-t/30) Remaining influence
(t = 0) days (today) 1.00 100 %
(t = 21) days (one half-life, (0.69T)) 0.50 50 %
(t = 30) days ((T)) 0.37 37 %
(t = 60) days ((2T)) 0.14 14 %
(t = 90) days ((3T)) 0.05 5 %

(T = 30) days a close overlap keeps about one-third of its weight after a month, and by three months its effect is effectively gone.


Conclusion

This pairwise influence–weight scheme does three jobs at once:

  1. Rewards newcomers and diversity – agents who rarely overlap keep almost their full weight.
  2. Penalises persistent, recent agreement – repeated tight matches drive weight down smoothly, with strength tuned by λ.
  3. Lets old history fade – the time-decay constant (T) ensures yesterday’s crowding matters, last season’s hardly does.

Because today’s reports are locked before weights are computed, we can also fold the current market into s_{ij}. This sharpens the brake on collusion while leaving the truth-telling incentive essentially intact (there’s an extremely minor incentive to stand out more but negligible).

Integrating pair-wise influence into the Article-score weights


Same influence factors

For every pair ((i,j)):

s_{ij} \;=\; \sum_{m\in M_{ij}} \exp\!\bigl(-|p_i^{(m)}-p_j^{(m)}|/\tau\bigr)\, \exp\!\bigl(-t(m)/T\bigr), \qquad s_i \;=\; \sum_{j\neq i}s_{ij}.

Choose global constants \eta>0,\;0<\lambda\le1 and set

I_i = \bigl(\eta + s_i\bigr)^{-\lambda}\in(0,1].

\,I_i is the pair-wise influence weight (smaller when agent i
has many recent close overlaps).


Un-normalised combined weight

w_i' \;=\; I_i \;\times\; |p_i - m_i| \;\times\; \bigl[1 + \beta\,(PR_i - 0.5)\bigr].
  • |p_i - m_i| = divergence/expertise term
  • 1+\beta(PR_i-0.5) = track-record multiplier
  • I_i = new anti-collusion factor

Normalise so weights sum to 1

w_i = \frac{w_i'}{\displaystyle\sum_j w_j'}, \qquad\sum_i w_i = 1.

Final aggregated probability for the article

S \;=\; \sum_i w_i\,p_i.