Meta

Tag: #articles/tags/Computer_Science__Machine_Learning, #articles/tags/Statistics__Machine_Learning, #articles/tags//unread
citekey: fanDecentralizedAsynchronousMultiplayer2025
authors: #articles/authors/Jingqi-Fan, #articles/authors/Canzhe-Zhao, #articles/authors/Shuai-Li, #articles/authors/Siwei-Wang
year: 2025/09/30
doi: 10.48550/arXiv.2509.25824
url: http://arxiv.org/abs/2509.25824
conference: #articles/conference/
Journal : #articles/journals/

Abstract

In recent years, multi-player multi-armed bandits (MP-MAB) have been extensively studied due to their wide applications in cognitive radio networks and Internet of Things systems. While most existing research on MP-MAB focuses on synchronized settings, real-world systems are often decentralized and asynchronous, where players may enter or leave the system at arbitrary times, and do not have a global clock. This decentralized asynchronous setting introduces two major challenges. First, without a global time, players cannot implicitly coordinate their actions through time, making it difficult to avoid collisions. Second, it is important to detect how many players are in the system, but doing so may cost a lot. In this paper, we address the challenges posed by such a fully asynchronous setting in a decentralized environment. We develop a novel algorithm in which players adaptively change between exploration and exploitation. During exploration, players uniformly pull their arms, reducing the probability of collisions and effectively mitigating the first challenge. Meanwhile, players continue pulling arms currently exploited by others with a small probability, enabling them to detect when a player has left, thereby addressing the second challenge. We prove that our algorithm achieves a regret of O(TlogT+logT/Δ2)\mathcal{O}(\sqrt{T \log T} + {\log T}/{Δ^2}), where ΔΔ is the minimum expected reward gap between any two arms. To the best of our knowledge, this is the first efficient MP-MAB algorithm in the asynchronous and decentralized environment. Extensive experiments further validate the effectiveness and robustness of our algorithm, demonstrating its applicability to real-world scenarios.

Note

1. exploration phase

  • k^j\hat k^j 代表j利用的这个arm,
  • Aj\mathcal{A}^j 代表的是j认为正在被occupy的arm, 如果Aj>m1|\mathcal{A}^j|>m-1那说明存在冗余的判断, 需要做correction
  • occupy: 代表的是以高概率利用这arm
  • release: 代表之前利用某个arm,此时要停止利用,要么离开系统
  • Pkj\mathcal{P}^j_k: 追踪某个arm是否被占用, k1j=k2jk^j_1=k^j_2 的时候放 ηk1j(t1)ηk2j(t2)\eta_{k^j_1}(t_1)\cdot\eta_{k^j_2}(t_2), 如果碰撞超过阈值则要添加到Aj\mathcal{A}^j里, 连续两次才能加入1,否则智能加入0
    • Pkj:=Lp=866ln(T)|\mathcal{P}^j_k | := Lp = ⌈866 ln(T )⌉, 阈值为iPkji0.85Lp\sum _{i∈P^j_k} i≥ ⌈0.85Lp ⌉
  • Qkj\mathcal{Q}^j_k: 追踪某个arm是否被释放, k2jk^j_2Aj\mathcal{A}^j 里取的时候不碰撞则放1, 碰撞则放0, 如果不碰撞超过阈值, 则要从Aj\mathcal{A}^j移除, 并停止correction
    • Qkj:=Lq=570ln(T)|\mathcal{Q} ^j_ k | := Lq = ⌈570 ln(T )⌉, 阈值为iQkji0.142Lq\sum_{i∈Q^j _k} i ≥ ⌈0.142Lq⌉
注意, P\mathcal{P}Q\mathcal{Q} 都是队列, 也就是他实际上是一个先进先出的结构!

  • 对于任意一个在exploration phase的agent jj, pull 任意一个arm kk的概率不超过1m\frac{1}{m} (Remark 3.3)

1.1. 证明P\mathcal{P}Q\mathcal{Q}的阈值, 以及队列的长度

我们必须从两个event开始

E1:={tTj,jM,kK:τp=τLp+τCkj(tk,pj(τp))τp=τLp+τE[Ckj(tk,pj(τp))Fτp1]0.034Lp},E2:={tTj,jM,kK:τq=τLq+τDkj(tk,qj(τq))τq=τLq+τE[Dkj(tk,qj(τq))Fτq1]0.0419Lq}\begin{aligned} \mathcal{E}_1 &:= \left\{ \exists t \in \mathcal{T}^j, j \le M, k \le K : \left| \sum_{\tau_p = \tau}^{L_p + \tau} C_k^j (t_{k,p}^j(\tau_p)) - \sum_{\tau_p = \tau}^{L_p + \tau} \mathbb{E} [C_k^j (t_{k,p}^j(\tau_p)) | \mathcal{F}_{\tau_{p-1}}] \right| \ge 0.034 L_p \right\}, \\ \mathcal{E}_2 &:= \left\{ \exists t \in \mathcal{T}^j, j \le M, k \le K : \left| \sum_{\tau_q = \tau}^{L_q + \tau} D_k^j (t_{k,q}^j(\tau_q)) - \sum_{\tau_q = \tau}^{L_q + \tau} \mathbb{E} [D_k^j (t_{k,q}^j(\tau_q)) | \mathcal{F}_{\tau_{q-1}}] \right| \ge 0.0419 L_q \right\} \end{aligned}

  • Ckj()C^j_k(\cdot): 在第τp\tau_p次在向队列插入值对应的全局时间步tkj()t^j_k(\cdot), 在这个时间步有没有发生碰撞(0,1), 求和后代表的是, 该序列当前序列长度, 整个event代表的是实际上的队列长度和期望中的队列长度的差, 很大.

  • 为了使得这两个event的发生概率很小, 通过集中不等式, 可以得到相应的长度LpL_p, 所以这个长度能够控制整个概率使得它和时间步成反比(常见的操作LemmaB.3)

  • 对于P\mathcal{P}来说, 连续两次碰撞才会为1, 对于thredhold的考量是为了区分真的有agent occupy arm k, 和没有agent occupy arm k.

    • 对于有agent occupy arm k的情况由于exploit的时候至少会有ϵ\epsilon的概率不选某个arm, 所以能造成连续两次collision的概率至少为 1ϵ1-\epsilon conditioned on select k in two consecutive step, 在期望下 τp=τLp+τE[Ckj(tk,pj(τp))Fτp1]0.9Lp.\sum_{\tau_p=\tau}^{L_p+\tau} \mathbb{E} \left[ C_k^j (t_{k,p}^j(\tau_p)) \mid \mathcal{F}_{\tau_{p-1}} \right] \ge 0.9 L_p .
    • 而对于没有agent occupy arm k的情况下, 由于任意一个arm k被pull的概率不超过1m\frac{1}{m}所以, 连续发生两次碰撞的概率不超过1jj:j is active(11m)1(11m)m112e0.816.1 - \prod_{j' \neq j: j' \text{ is active}} \left(1 - \frac{1}{m}\right) \le 1 - \left(1 - \frac{1}{m}\right)^m \le 1 - \frac{1}{2e} \le 0.816 . 在这样的情况下, τp=τLp+τE[Ckj(tk,pj(τp))Fτp1]0.816Lp.\sum_{\tau_p=\tau}^{L_p+\tau} \mathbb{E} \left[ C_k^j \left(t_{k,p}^j(\tau_p)\right) \mid \mathcal{F}_{\tau_{p-1}} \right] \le 0.816L_p .
    • 根据上面两个序列长度的分析, 接着我们考虑到方差的影响, 我们直接取中点作为thredhold, 这样的话两边方差的radius就一样了, 中点也就是0.85Lp0.85L_p
    • 相似的分析对Q\mathcal{Q}也是一样的.
  • 除此之外, 我们还可以通过这些分析出最大需要多少步才能把arm正确加入AjA^j和移除AjA^j, 这两个都是O(logT)\mathcal{O}(\log T)

2. exploit

  • 要转移到exploitation需要满足两个condition:
    img
    • Condition 3.1: 由于在exploit阶段并不是每个时间都pull k^j\hat k^j, 但是两步之内必定会pull k^j\hat k^j, 如果两步都不碰, 那说明确实没有人occupy
    • Condition 3.2: 经典的explore-then-commit式算法的exploit的条件

2.1. Condition 3.2

condition 3.2 实际上是一个标准的explore-then-commit算法的条件, 这个条件通常可以直接转换为$$\mu_k-\mu_{k’}\geq4\times \max_{k,k’} \textbf{Confidence interval radius}$$通过这个条件可以计算出至少需要多少个sample才能把一些arm给eliminate.

2.2. Condition 3.1

在满足了3.2. 之后需要满足3.1. 还需要采样的步数, 可以把这个建模成每一步选中arm k的概率为p, 而其他agent不选择arm k, 随机变量为这个时间发生第一次的轮数N, 求N的期望E[Tc]\mathbb{E}[T_{c}]. (Lemma4.2)

3. regret decompose

G1j:={tTj:jj,j[M],kK,kAj(t),k^j=k},G2j:={tTj:kAj(t),jj,j[M],k^jk},\begin{aligned} \mathcal{G}_1^j &:= \left\{ t \in \mathcal{T}^j : \exists j' \neq j, j' \in [M], \exists k \le K, k \notin \mathcal{A}^j(t), \hat{k}^{j'} = k \right\} , \\ \mathcal{G}_2^j &:= \left\{ t \in \mathcal{T}^j : \exists k \in \mathcal{A}^j(t), \forall j' \neq j, j' \in [M], \hat{k}^{j'} \neq k \right\} , \end{aligned}

这两个事件分别代表着对于被exploit的arm没有被检测到Aj\mathcal{A^j}里, 另一个事件则对应着无人在利用的arm仍然残留在Aj\mathcal{A^j}

jMt=TstartjTendjE[11[πj(t)mt,ηj(t)=0]E0]+jMTjPr[E0](12)jME[G2jE0]A+jMtTexpjE[1[tG1jG2j]E0]B+jMtTexpjE[1[tG1j]E0]C+jMTjPr[E0]E+jMtTexpltjE[(11[πj(t)mt,ηπj(t)(t)=0])1[tG2j]E0]D.\begin{aligned} &\le \sum_{j \le M} \sum_{t=T_{\text{start}}^j}^{T_{\text{end}}^j} \mathbb{E} \left[ 1 - \mathbb{1}[\pi^j(t) \le m_t, \eta^j(t) = 0] \mid \overline{\mathcal{E}_0} \right] + \sum_{j \le M} T^j \Pr[\mathcal{E}_0] \quad (12) \\ &\le \underbrace{\sum_{j \le M} \mathbb{E} \left[ |\mathcal{G}_2^j| \mid \overline{\mathcal{E}_0} \right]}_{A} + \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{exp}}^j} \mathbb{E} \left[ \mathbb{1}[t \notin \mathcal{G}_1^j \cup \mathcal{G}_2^j] \mid \overline{\mathcal{E}_0} \right]}_{B} \\ &+ \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{exp}}^j} \mathbb{E} \left[ \mathbb{1}[t \in \mathcal{G}_1^j] \mid \overline{\mathcal{E}_0} \right]}_{C} + \underbrace{\sum_{j \le M} T^j \Pr[\mathcal{E}_0]}_{E} \\ &+ \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{explt}}^j} \mathbb{E} \left[ \left( 1 - \mathbb{1}[\pi^j(t) \le m_t, \eta_{\pi^j(t)}(t) = 0] \right) \mathbb{1}[t \notin \mathcal{G}_2^j] \mid \overline{\mathcal{E}_0} \right]}_{D} . \end{aligned}

(12)式分解, 实际上是:

  • condition on Eˉ0\bar{\mathcal{E}}_{0}, 选择了最优arm [mt]\in[m_t], 且没有发生碰撞, 则regret为0 否则为1,
  • 由于Eˉ0\bar{\mathcal{E}}_{0}不发生而导致的损失
    从最终的分解来看, 实际上的regret可以写成
  • A: 所有agent因无人利用arm残留在Aj\mathcal{A}^j造成的regret
  • B: 在explore phase, exploit的arm被检测到Aj\mathcal{A^j}里, 并且无人在利用的arm不残留在Aj\mathcal{A^j}里做出选择而产生regret
  • C: 在explore phase, exploit的arm被没有检测到Aj\mathcal{A^j}
  • D: 在exploit phase, 选择了最优arm [mt]\in[m_t], 且无人在利用的arm不残留在Aj\mathcal{A^j}里, 则regret为0 否则为1,

3.1. proof of B

对于B还可以进一步分解:

jMtTexpjE[kAj(t)1[πj(t)=k]1[tG1jG2j]1{πj(t)K2(t)}|E0E3]B1+jMtTexpjE[kAj(t)1[πj(t)=k]1[tG1jG2j]1{πj(t)K2(t)}|E0E3]B2+jMtTexpjE[kK1[πj(t)=k]1[tG1jG2j]1{πj(t)K2(t),πj(t)K1(t)}|E0E3]B3+jMtTexpjE[kK1[πj(t)=k]1[tG1jG2j]1{πj(t)K2(t),πj(t)K1(t)}|E0E3]B4+jMTexpjPr[E3]B5.\begin{aligned} \le &\underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{exp}}^j} \mathbb{E} \left[ \sum_{k \notin \mathcal{A}^j(t)} \mathbb{1}[\pi^j(t) = k] \mathbb{1}[t \notin \mathcal{G}_1^j \cup \mathcal{G}_2^j] \mathbb{1}\{\pi^j(t) \in \mathcal{K}_2(t)\} \middle| \overline{\mathcal{E}_0} \cap \overline{\mathcal{E}_3} \right]}_{B_1} \\ &+ \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{exp}}^j} \mathbb{E} \left[ \sum_{k \in \mathcal{A}^j(t)} \mathbb{1}[\pi^j(t) = k] \mathbb{1}[t \notin \mathcal{G}_1^j \cup \mathcal{G}_2^j] \mathbb{1}\{\pi^j(t) \in \mathcal{K}_2(t)\} \middle| \overline{\mathcal{E}_0} \cap \overline{\mathcal{E}_3} \right]}_{B_2} \\ &+ \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{exp}}^j} \mathbb{E} \left[ \sum_{k \le K} \mathbb{1}[\pi^j(t) = k] \mathbb{1}[t \notin \mathcal{G}_1^j \cup \mathcal{G}_2^j] \mathbb{1}\{\pi^j(t) \notin \mathcal{K}_2(t), \pi^j(t) \in \mathcal{K}_1(t)\} \middle| \overline{\mathcal{E}_0} \cap \overline{\mathcal{E}_3} \right]}_{B_3} \\ &+ \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{exp}}^j} \mathbb{E} \left[ \sum_{k \le K} \mathbb{1}[\pi^j(t) = k] \mathbb{1}[t \notin \mathcal{G}_1^j \cup \mathcal{G}_2^j] \mathbb{1}\{\pi^j(t) \notin \mathcal{K}_2(t), \pi^j(t) \notin \mathcal{K}_1(t)\} \middle| \overline{\mathcal{E}_0} \cap \overline{\mathcal{E}_3} \right]}_{B_4} \\ &+ \underbrace{\sum_{j \le M} T_{\text{exp}}^j \Pr[\mathcal{E}_3]}_{B_5} . \end{aligned}

使用是否满足condition3.1(不满足3.1, K1\mathcal{K}_{1})和condition3.2(不满足3.2, K2\mathcal{K}_{2})进行划分.

  • B1 : 可以直接从(LemmaB.8)得到相关结论, 这里还要考虑Aj\mathcal{A}^j的变动次数
  • B2: jMεTexpj\sum_{j≤M} εT ^j_{ exp}, 可以把后面的进行放缩
  • B3: 可以从E[Tc]\mathbb{E}[ T_c]得到

3.2. proof of A and C

这两个term实际上都是由于检测延误所造成的regret, 实际上在上面的P\mathcal{P}Q\mathcal{Q}队列的讨论中有所提及, 这里需要考虑移除的次数和移除之后产生的delay, 相乘即可

3.3. proof of D

jMtTexpltjE[ηk^j(t)1[πj(t)=k^j,jj,j[M],k^jAj(t),tG2j]E0]D1+jMtTexpltjE[ηk^j(t)1[πj(t)=k^j,jj,j[M],k^jAj(t),tG2j]E0]D2+jMεTexpltj,\begin{aligned} \le &\underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{explt}}^j} \mathbb{E} \left[ \eta_{\hat{k}^j}(t) \mathbb{1} [\pi^j(t) = \hat{k}^j, \exists j' \neq j, j' \in [M], \hat{k}^j \notin \mathcal{A}^{j'}(t), t \notin \mathcal{G}_2^j] \mid \overline{\mathcal{E}_0} \right]}_{D_1} \\ &+ \underbrace{\sum_{j \le M} \sum_{t \in \mathcal{T}_{\text{explt}}^j} \mathbb{E} \left[ \eta_{\hat{k}^j}(t) \mathbb{1} [\pi^j(t) = \hat{k}^j, \forall j' \neq j, j' \in [M], \hat{k}^j \in \mathcal{A}^{j'}(t), t \notin \mathcal{G}_2^j] \mid \overline{\mathcal{E}_0} \right]}_{D_2} \\ &+ \sum_{j \le M} \varepsilon T_{\text{explt}}^j , \end{aligned}

  • 其中D1D_{1}可以放缩成CC, 也即被exploit的arm没有被检测到Aj\mathcal{A^j}
  • D2D_{2}是由于ϵ\epsilon贪心而导致的碰撞

4. Algorithm

  • 连续pull两个arm, k1jk^j_1k2jk^j_2, k2jk^j_2有一定的概率探索Aj\mathcal{A}^j
  • 同时在探索的时候也是, 存在一定的概率使得k2jk_2^j探索Aj\mathcal{A}^j
    img

img

Q&A

  1. 为什么两个Queue的长度分别设定为这样?
    • 是为了恰好区分开加入和不加入的情况
  2. 为什么UCB和LCB的系数里有3\sqrt{3}?
    • 可能只是为了进一步缩小概率
  3. 对于LemmaB.6中情况2, 如果说比LpL_p次更加长呢?会不会再那个时候达到临界值?
    • 因为整个队列的长度就是LpL_p, 至于为什么要设置队列的长度, 因为我们只考虑一个时间窗内的碰撞情况!
  4. 设置的队列触发阈值不是越小越好吗?为什么要设置在中点附近?
    • 是为了相同的radius
  5. 在这里, 使用的uniform是round robin还是随机的采样? 如果是round robin会不会导致很多arm在exploration的时候同步而导致的持续collision的问题?
    • 这里使用的是随机的uniform sample
takeaway

  1. 几何分布: 一件事发生的概率为p, 他在第n次才首次发生的期望 E(n)=1p\mathbb{E}(n)=\frac{1}{p}
  2. 全期望公式: E[X(t)]=E[X(t)E0]Pr[E0]+E[X(t)E0]Pr[E0]\mathbb{E}[X(t)] = \mathbb{E}[X(t) \mid \overline{\mathcal{E}_0}] \Pr[\overline{\mathcal{E}_0}] + \mathbb{E}[X(t) \mid \mathcal{E}_0] \Pr[\mathcal{E}_0]