We present an algorithm that given any invertible symmetric diagonally dominant M-matrix (SDDM), i.e., a principal submatrix of a graph Laplacian, $\boldsymbol{\mathit{L}}$ and a nonnegative vector $\boldsymbol{\mathit{b}}$, computes an entrywise approximation to the solution of $\boldsymbol{\mathit{L}} \boldsymbol{\mathit{x}} = \boldsymbol{\mathit{b}}$ in $\tilde{O}(m n^{o(1)})$ time with high probability, where $m$ is the number of nonzero entries and $n$ is the dimension of the system.
ID статьи : 2511.16570Название : Entrywise Approximate Solutions for SDDM Systems in Almost-Linear TimeАвторы : Angelo Farfan (MIT), Mehrdad Ghadiri (MIT), Junzhao Yang (CMU)Классификация : cs.DS (Структуры данных и алгоритмы), cs.NA (Численный анализ), math.NA (Численный анализ)Дата публикации : Подано на arXiv 20 ноября 2025 г.Ссылка на статью : https://arxiv.org/abs/2511.16570 В данной работе предложен алгоритм, который для произвольной обратимой симметричной диагонально доминирующей M-матрицы (SDDM, то есть главного подматрицы матрицы Лапласа) L L L и неотрицательного вектора b b b вычисляет поэлементное приближение решения L x = b Lx = b Lx = b с высокой вероятностью за время O ~ ( m ⋅ 2 O ( log n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m \cdot 2^{O(\sqrt{\log n})} \log(U) \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m ⋅ 2 O ( l o g n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 )) , где m m m — количество ненулевых элементов, n n n — размерность системы. Это первый алгоритм, решающий SDDM системы в почти линейном времени с гарантией поэлементного приближения.
Основная задача : Решить линейную систему L x = b Lx = b Lx = b , где L L L — матрица SDDM, требуя для каждой компоненты вектора решения x x x мультипликативное поэлементное приближение:
e − ϵ ( L − 1 b ) i ≤ x ~ i ≤ e ϵ ( L − 1 b ) i , ∀ i ∈ [ n ] e^{-\epsilon}(L^{-1}b)_i \leq \tilde{x}_i \leq e^{\epsilon}(L^{-1}b)_i, \quad \forall i \in [n] e − ϵ ( L − 1 b ) i ≤ x ~ i ≤ e ϵ ( L − 1 b ) i , ∀ i ∈ [ n ] Важность проблемы :Системы матриц Лапласа широко применяются в информатике, тесно связаны с теорией графов и случайными блужданиямиПоэлементное приближение критично для случаев, когда компоненты решения различаются на экспоненциальные величиныПриложения включают вычисление стационарных распределений цепей Маркова, задачи потоков во внутренних точечных методах Ограничения существующих методов :Границы ошибок норм : Работы Spielman-Teng ST14 и другие предоставляют почти линейные алгоритмы, но гарантируют только ошибку энергетической нормы или евклидовой нормы:
∥ x ^ − L † b ∥ L ≤ ϵ ∥ L † b ∥ L \|\hat{x} - L^\dagger b\|_L \leq \epsilon \|L^\dagger b\|_L ∥ x ^ − L † b ∥ L ≤ ϵ ∥ L † b ∥ L Требование экспоненциальной точности : Поскольку компоненты решения могут различаться в экспоненциальное число раз, ошибка нормы не может восстановить малые компоненты, если только ϵ \epsilon ϵ не экспоненциально мала (ϵ = O ( 1 / 2 n ) \epsilon = O(1/2^n) ϵ = O ( 1/ 2 n ) )Узкое место временной сложности : Требуется O ( log ( 1 / ϵ ) ) O(\log(1/\epsilon)) O ( log ( 1/ ϵ )) итераций, численная точность требует log ( κ / ϵ ) \log(\kappa/\epsilon) log ( κ / ϵ ) бит, что приводит к O ( m n 2 ) O(mn^2) O ( m n 2 ) битовых операцийСуществующие поэлементные алгоритмы : GNY26 предложил алгоритм за время O ~ ( m n log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m\sqrt{n}\log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m n log 2 ( U ϵ − 1 δ − 1 )) , но это всё ещё сверхлинейноИсследовательская мотивация :Можно ли решить SDDM системы в почти линейном времени с гарантией поэлементного приближения? Данная работа даёт положительный ответ, снижая временную сложность с O ( m n ) O(m\sqrt{n}) O ( m n ) до O ( m ⋅ n o ( 1 ) ) O(m \cdot n^{o(1)}) O ( m ⋅ n o ( 1 ) ) Первый почти линейный поэлементный решатель : Предложен алгоритм, вычисляющий поэлементное приближённое решение SDDM системы за O ~ ( m ⋅ 2 O ( log n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m \cdot 2^{O(\sqrt{\log n})} \log(U) \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m ⋅ 2 O ( l o g n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 )) битовых операцийВероятностное покрытие с малым диаметром :Определена вероятностная метрика D L ( i , j ) = − log n U ( ( L − 1 ) i j ) + 2 D_L(i,j) = -\log_{nU}((L^{-1})_{ij}) + 2 D L ( i , j ) = − log n U (( L − 1 ) ij ) + 2 , основанная на элементах матрицы, обратной к L L L Построено ( r i n , r o u t , α ) (r_{in}, r_{out}, \alpha) ( r in , r o u t , α ) -покрытие, где r i n = 2 O ( log n ) r_{in} = 2^{O(\sqrt{\log n})} r in = 2 O ( l o g n ) , r o u t = 2 Ω ( log n ) r_{out} = 2^{\Omega(\sqrt{\log n})} r o u t = 2 Ω ( l o g n ) , α = 2 O ( log n ) \alpha = 2^{O(\sqrt{\log n})} α = 2 O ( l o g n ) Доказана существование такого покрытия и предоставлен алгоритм его построения в почти линейном времени Улучшенная схема пороговой деградации :Расширена схема пороговой деградации (Threshold Decay) из GNY26 Используется покрытие с малым диаметром для предсказания, адаптивно определяя масштабы компонент решения Сохраняется размер активного множества n 1 + o ( 1 ) n^{1+o(1)} n 1 + o ( 1 ) через расширение границ множеств Теоретические гарантии : Для ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n (не экспоненциально малая) алгоритм с вероятностью не менее 1 − δ 1-\delta 1 − δ выдаёт решение, удовлетворяющее x ~ ≈ ϵ L − 1 b \tilde{x} \approx_\epsilon L^{-1}b x ~ ≈ ϵ L − 1 b Входные данные :
L ∈ Z n × n L \in \mathbb{Z}^{n \times n} L ∈ Z n × n : обратимая матрица SDDM с целыми элементами в диапазоне [ − U , U ] [-U, U] [ − U , U ] , m m m ненулевых элементовb ∈ Z n b \in \mathbb{Z}^n b ∈ Z n : неотрицательный вектор с целыми элементами в диапазоне [ 0 , U ] [0, U] [ 0 , U ] ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n : параметр точностиδ ∈ ( 0 , 1 ) \delta \in (0,1) δ ∈ ( 0 , 1 ) : вероятность отказаВыходные данные :
x ~ \tilde{x} x ~ : удовлетворяющий поэлементному приближению e − ϵ ( L − 1 b ) i ≤ x ~ i ≤ e ϵ ( L − 1 b ) i e^{-\epsilon}(L^{-1}b)_i \leq \tilde{x}_i \leq e^{\epsilon}(L^{-1}b)_i e − ϵ ( L − 1 b ) i ≤ x ~ i ≤ e ϵ ( L − 1 b ) i для всех i ∈ [ n ] i \in [n] i ∈ [ n ] Элементы представлены числами с плавающей точкой с O ( log ( n U / ϵ ) ) O(\log(nU/\epsilon)) O ( log ( n U / ϵ )) битами Ограничения :
Временная сложность: O ~ ( m ⋅ 2 O ( log n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m \cdot 2^{O(\sqrt{\log n})} \log(U) \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m ⋅ 2 O ( l o g n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 )) битовых операций Вероятность успеха: не менее 1 − δ 1-\delta 1 − δ Определение (Definition 2.1):
D L ( i , j ) : = − log n U ( ( L − 1 ) i j ) + 2 D_L(i,j) := -\log_{nU}((L^{-1})_{ij}) + 2 D L ( i , j ) := − log n U (( L − 1 ) ij ) + 2
Ключевые свойства (Claim 2.2):
Симметричность : D L ( i , j ) = D L ( j , i ) D_L(i,j) = D_L(j,i) D L ( i , j ) = D L ( j , i ) Неравенство треугольника : D L ( i , k ) ≤ D L ( i , j ) + D L ( j , k ) D_L(i,k) \leq D_L(i,j) + D_L(j,k) D L ( i , k ) ≤ D L ( i , j ) + D L ( j , k ) Малое расстояние между соседними вершинами : если L i j ≠ 0 L_{ij} \neq 0 L ij = 0 , то D L ( i , j ) ≤ 4 D_L(i,j) \leq 4 D L ( i , j ) ≤ 4 Монотонность (Lemma 2.3): для главного подматрица L S , S L_{S,S} L S , S имеет место D L ( i , j ) ≤ D L S , S ( i , j ) D_L(i,j) \leq D_{L_{S,S}}(i,j) D L ( i , j ) ≤ D L S , S ( i , j ) Физический смысл : Через Lemma 1.4, ( L − 1 ) i j (L^{-1})_{ij} ( L − 1 ) ij связана с вероятностью выхода случайного блуждания:
P ( i , j , n + 1 ) = ( L − 1 ) i j L j j ( L − 1 ) j j P(i,j,n+1) = \frac{(L^{-1})_{ij}}{L_{jj}(L^{-1})_{jj}} P ( i , j , n + 1 ) = L jj ( L − 1 ) jj ( L − 1 ) ij
Вероятностная метрика характеризует логарифмическую шкалу вероятности достижения случайного блуждания из i i i в j j j .
Определение (Definition 2.4): Набор C = { ( V 1 , W 1 ) , … , ( V k , W k ) } \mathcal{C} = \{(V_1, W_1), \ldots, (V_k, W_k)\} C = {( V 1 , W 1 ) , … , ( V k , W k )} является ( r i n , r o u t , α ) (r_{in}, r_{out}, \alpha) ( r in , r o u t , α ) -покрытием, если выполнены:
Включение : V i ⊆ W i ⊆ [ n ] V_i \subseteq W_i \subseteq [n] V i ⊆ W i ⊆ [ n ] (внутренний шар V i V_i V i , внешний шар W i W_i W i )Полное покрытие : каждая вершина находится по крайней мере в одном внутреннем шареОграниченное перекрытие : каждая вершина находится не более чем в α \alpha α внешних шарахМалый диаметр : для любых u , v ∈ W i u,v \in W_i u , v ∈ W i , D L ( u , v ) ≤ r i n D_L(u,v) \leq r_{in} D L ( u , v ) ≤ r in Большой зазор : для любых u ∈ V i , v ∈ [ n ] ∖ W i u \in V_i, v \in [n] \setminus W_i u ∈ V i , v ∈ [ n ] ∖ W i , D L ( u , v ) > r o u t D_L(u,v) > r_{out} D L ( u , v ) > r o u t Алгоритм построения (LowDiamConstruct, Figure 1):
Установка параметров :
ℓ = ⌈ log n ⌉ + 3 \ell = \lceil\sqrt{\log n}\rceil + 3 ℓ = ⌈ log n ⌉ + 3 Пороги расстояния: d i = 4 ℓ 2 i − 1 d_i = \frac{4\ell}{2^{i-1}} d i = 2 i − 1 4 ℓ , i ∈ [ ℓ ] i \in [\ell] i ∈ [ ℓ ] Вероятности выборки: p j = min { 1 n ⋅ 2 ℓ ( j − 1 ) , 1 } p_j = \min\{\frac{1}{n} \cdot 2^{\ell(j-1)}, 1\} p j = min { n 1 ⋅ 2 ℓ ( j − 1 ) , 1 } , j ∈ [ ℓ ] j \in [\ell] j ∈ [ ℓ ] Количество итераций: B = 6 ⋅ 16 ℓ ⋅ ⌈ log ( n / δ ) ⌉ B = 6 \cdot 16^\ell \cdot \lceil\log(n/\delta)\rceil B = 6 ⋅ 1 6 ℓ ⋅ ⌈ log ( n / δ )⌉ Процесс алгоритма :
Для каждой пары (d_i, p_j), повторить B раз:
1. Независимо выбрать множество S ⊆ [n] с вероятностью p_j
2. Решить Lx = 1_S, получить приближённое решение y с ошибкой нормы M^{-2d_i}
3. Установить T = {k: y_k ≥ M^{-d_i/2}}, построить индуцированный подграф G_T
4. Для каждого v ∈ S, если его компонента связности C_v не пересекается с другими вершинами из S:
- Внутренний шар: V = {k ∈ C_v: y_k ≥ M^{-d_i/4} - M^{-2d_i}}
- Внешний шар: W = {k ∈ C_v: y_k ≥ M^{-(d_i/2)+2}}
- Добавить (V,W) в покрытие C
Ключевая идея :
Для каждой вершины u u u существует подходящая пара ( d i , p j ) (d_i, p_j) ( d i , p j ) такая, что:
S S S содержит ровно одну вершину рядом с u u u с подходящей вероятностьюКомпонента связности этой вершины отделена от других вершин из S S S Внутренние и внешние шары восстанавливаются из больших элементов решения Сложность (Theorem 2.1):
Время: m ⋅ 2 O ( log n ) log ( U ) log ( δ − 1 ) log ( U δ − 1 ) m \cdot 2^{O(\sqrt{\log n})} \log(U) \log(\delta^{-1}) \log(U\delta^{-1}) m ⋅ 2 O ( l o g n ) log ( U ) log ( δ − 1 ) log ( U δ − 1 ) битовых операций Параметры: r i n = 2 2 ℓ + 1 r_{in} = 2^{2\ell+1} r in = 2 2 ℓ + 1 , r o u t = 2 ℓ − 2 r_{out} = 2^{\ell-2} r o u t = 2 ℓ − 2 , α = 6 ℓ 2 ⋅ 16 ℓ ⋅ ⌈ log ( n / δ ) ⌉ \alpha = 6\ell^2 \cdot 16^\ell \cdot \lceil\log(n/\delta)\rceil α = 6 ℓ 2 ⋅ 1 6 ℓ ⋅ ⌈ log ( n / δ )⌉ Базовая схема (ThresholdDecay, Figure 2):
Поддерживается разбиение [ n ] = P ( t ) ∪ Q ( t ) ∪ R ( t ) [n] = P^{(t)} \cup Q^{(t)} \cup R^{(t)} [ n ] = P ( t ) ∪ Q ( t ) ∪ R ( t ) на три непересекающихся множества:
P ( t ) P^{(t)} P ( t ) : решённое множество (уже вычислено поэлементное приближение)Q ( t ) Q^{(t)} Q ( t ) : неактивное множество (считается достаточно малым, чтобы пренебречь)R ( t ) R^{(t)} R ( t ) : активное множество (участники текущей линейной системы)Процесс итерации :
Инициализация: S^(0) = [n], b̂^(0) = b, x̃^(0) = 0
Для t = 0 до T:
1. Решить подсистему: L_{S^(t),S^(t)} x = b̂^(t), получить приближённое решение x̂^(t)
2. Вычислить порог: θ_t = (наименьшая степень 2 > 1/(4(nU)^2) ||b̂^(t)||_1)
3. Извлечь большие элементы: F^(t) = {i: x̂^(t)_i ≥ θ_t}
4. Обновить решённое множество: S^(t+1) = S^(t) \ F^(t)
5. Обновить вектор правой части: b̂^(t+1) ≈_{ε/(8T)} b_{S^(t+1)} - L_{S^(t+1),[n]\S^(t+1)} x̃^(t+1)
Ключевые свойства (Lemma 3.1):
Деградация порога: ∣ ∣ b ^ ( t ) ∣ ∣ 1 ≤ ( n U ) − t ∣ ∣ b ∣ ∣ 1 ||b̂^{(t)}||_1 \leq (nU)^{-t} ||b||_1 ∣∣ b ^ ( t ) ∣ ∣ 1 ≤ ( n U ) − t ∣∣ b ∣ ∣ 1 Поэлементная точность: x ~ ( t ) ≈ ϵ t / ( 4 T ) x [ n ] ∖ S ( t ) \tilde{x}^{(t)} \approx_{\epsilon t/(4T)} x_{[n]\setminus S^{(t)}} x ~ ( t ) ≈ ϵ t / ( 4 T ) x [ n ] ∖ S ( t ) Гарантия малых элементов: для i ∈ S ( t + 1 ) i \in S^{(t+1)} i ∈ S ( t + 1 ) , x i < ( n U ) − 2 ∣ ∣ b ^ ( t ) ∣ ∣ 1 x_i < (nU)^{-2} ||b̂^{(t)}||_1 x i < ( n U ) − 2 ∣∣ b ^ ( t ) ∣ ∣ 1 Инновация данной работы: Предсказание с использованием покрытия с малым диаметром
Расширение границ множества (Definition 3.4):
Exp C ( I ) : = { u ∈ [ n ] : ∃ ( V i , W i ) ∈ C , u ∈ V i ∧ ∣ W i ∩ I ∣ > 0 } \text{Exp}_{\mathcal{C}}(I) := \{u \in [n]: \exists (V_i, W_i) \in \mathcal{C}, u \in V_i \land |W_i \cap I| > 0\} Exp C ( I ) := { u ∈ [ n ] : ∃ ( V i , W i ) ∈ C , u ∈ V i ∧ ∣ W i ∩ I ∣ > 0 }
Эквивалентное определение:
Exp C ( I ) = ⋃ ( V i , W i ) ∈ C : ∣ W i ∩ I ∣ > 0 V i \text{Exp}_{\mathcal{C}}(I) = \bigcup_{(V_i,W_i) \in \mathcal{C}: |W_i \cap I| > 0} V_i Exp C ( I ) = ⋃ ( V i , W i ) ∈ C : ∣ W i ∩ I ∣ > 0 V i
Частичный решатель (PartialSolve, Figure 3):
На t t t -й итерации:
I ( t ) = { u ∈ S ( t ) : b ^ u ( t ) > 0 } I^{(t)} = \{u \in S^{(t)}: \hat{b}^{(t)}_u > 0\} I ( t ) = { u ∈ S ( t ) : b ^ u ( t ) > 0 } (носитель вектора правой части)H ( t ) = Exp C ( I ( t ) ) ∩ S ( t ) H^{(t)} = \text{Exp}_{\mathcal{C}}(I^{(t)}) \cap S^{(t)} H ( t ) = Exp C ( I ( t ) ) ∩ S ( t ) (расширение границ активного множества)Решить только на H ( t ) H^{(t)} H ( t ) :
L H ( t ) , H ( t ) x = b ^ H ( t ) ( t ) L_{H^{(t)},H^{(t)}} x = \hat{b}^{(t)}_{H^{(t)}} L H ( t ) , H ( t ) x = b ^ H ( t ) ( t )
Гарантия корректности (Lemma 3.5):
Для u ∈ S ( t ) ∖ H ( t ) u \in S^{(t)} \setminus H^{(t)} u ∈ S ( t ) ∖ H ( t ) , имеет место D L S ( t ) , S ( t ) ( u , v ) > r o u t D_{L_{S^{(t)},S^{(t)}}}(u, v) > r_{out} D L S ( t ) , S ( t ) ( u , v ) > r o u t для всех v ∈ I ( t ) v \in I^{(t)} v ∈ I ( t ) Применяя Corollary 3.3, ошибка от игнорирования S ( t ) ∖ H ( t ) S^{(t)} \setminus H^{(t)} S ( t ) ∖ H ( t ) составляет ( n U ) − r o u t + 5 ∣ ∣ b ^ ( t ) ∣ ∣ 2 (nU)^{-r_{out}+5} ||\hat{b}^{(t)}||_2 ( n U ) − r o u t + 5 ∣∣ b ^ ( t ) ∣ ∣ 2 Установка r o u t ≥ 5 + log n U ( 2 / ϵ L ) r_{out} \geq 5 + \log_{nU}(2/\epsilon_L) r o u t ≥ 5 + log n U ( 2/ ϵ L ) гарантирует ошибку ≤ ϵ L ∣ ∣ b ^ ( t ) ∣ ∣ 2 \leq \epsilon_L ||\hat{b}^{(t)}||_2 ≤ ϵ L ∣∣ b ^ ( t ) ∣ ∣ 2 Алгоритм SDDMSolve (Figure 4):
Вход: L, b, ε, δ
Выход: x̃ ≈_ε L^{-1}b
1. Построить покрытие с малым диаметром:
C ← LowDiamConstruct(L, δ/2)
2. Запустить улучшенную пороговую деградацию:
Инициализация: S^(0) = [n], b̂^(0) = b, I^(0), H^(0)
Для t = 0 до n:
a. Частичное решение:
x̂^(t) ← PartialSolve(L, C, S^(t), b̂^(t), ε_L, δ/(2n), H^(t), I^(t))
b-d. Извлечь большие элементы, обновить решённое множество (только на H^(t))
e. Эффективное поддержание векторов:
- Использовать инкрементальное обновление v̂^(t+1) ← v̂^(t)_{S^(t+1)} - L_{S^(t+1),F^(t)} x̂^(t)_{F^(t)}
- Неявное представление b̂^(t+1) := b_{S^(t+1)} + v̂^(t+1)
f. Поддержание I^(t) и H^(t):
- I^(t) через отслеживание ненулевых элементов b̂^(t)
- H^(t) через счётчики поддержания расширения границ
3. Вернуть x̃
Введение вероятностной метрики :Связывает теорию случайных блужданий с обратной матрицей Удовлетворяет неравенству треугольника, подходит для построения метрического пространства Монотонность гарантирует, что расстояния в подсистемах не уменьшаются Случайное выборочное построение покрытия :Одновременное построение нескольких шаров через решение систем со случайными правыми частями 1 S 1_S 1 S Экспоненциальные пороги расстояния и вероятности выборки гарантируют разделение Повторная выборка повышает вероятность успеха до 1 − δ 1-\delta 1 − δ Предсказание через расширение границ :Использует свойства покрытия для предсказания расположения больших элементов Избегает явного вычисления всех расстояний Поддерживает общий размер активного множества n 1 + o ( 1 ) n^{1+o(1)} n 1 + o ( 1 ) Эффективные структуры данных для поддержания :Инкрементальное обновление вектора правой части (O(m+n) общих обновлений) Счётчики для поддержания расширения границ Сегментные деревья для поддержания норм (избегают проблем численного вычитания) Основная лемма (Lemma 3.6):
∑ t = 0 T 1 [ u ∈ H ( t ) ] ≤ r i n = 2 O ( log n ) \sum_{t=0}^T \mathbb{1}[u \in H^{(t)}] \leq r_{in} = 2^{O(\sqrt{\log n})} ∑ t = 0 T 1 [ u ∈ H ( t ) ] ≤ r in = 2 O ( l o g n )
Идея доказательства :
Когда u u u входит в H ( t ) H^{(t)} H ( t ) , существует v ∈ I ( t ) v \in I^{(t)} v ∈ I ( t ) такой, что D L ( u , v ) ≤ r i n D_L(u,v) \leq r_{in} D L ( u , v ) ≤ r in По Lemma 3.8, x u ≥ x v ⋅ ( n U ) − r i n ≥ ( n U ) − r i n − 3 ∣ ∣ b ^ ( t − 1 ) ∣ ∣ 1 x_u \geq x_v \cdot (nU)^{-r_{in}} \geq (nU)^{-r_{in}-3} ||\hat{b}^{(t-1)}||_1 x u ≥ x v ⋅ ( n U ) − r in ≥ ( n U ) − r in − 3 ∣∣ b ^ ( t − 1 ) ∣ ∣ 1 Если u u u остаётся активным более чем r i n + 1 r_{in}+1 r in + 1 итераций, то x u < ( n U ) − 3 − r i n ∣ ∣ b ^ ( t − 1 ) ∣ ∣ 1 x_u < (nU)^{-3-r_{in}} ||\hat{b}^{(t-1)}||_1 x u < ( n U ) − 3 − r in ∣∣ b ^ ( t − 1 ) ∣ ∣ 1 (противоречие) Поэтому каждая вершина находится в активном множестве не более r i n r_{in} r in итераций Следствие :
∑ t = 0 T ∣ H ( t ) ∣ ≤ n ⋅ r i n = n ⋅ 2 O ( log n ) \sum_{t=0}^T |H^{(t)}| \leq n \cdot r_{in} = n \cdot 2^{O(\sqrt{\log n})} ∑ t = 0 T ∣ H ( t ) ∣ ≤ n ⋅ r in = n ⋅ 2 O ( l o g n )
Сложность каждого шага :
Построение покрытия с малым диаметром (Шаг 1):Количество итераций: ℓ 2 B = 2 O ( log n ) log ( n / δ ) \ell^2 B = 2^{O(\sqrt{\log n})} \log(n/\delta) ℓ 2 B = 2 O ( l o g n ) log ( n / δ ) Каждое решение: O ~ ( m log ( M 4 ℓ ) log ( U M 4 ℓ δ − 1 ℓ 2 B ) ) \tilde{O}(m \log(M^{4\ell}) \log(UM^{4\ell}\delta^{-1}\ell^2B)) O ~ ( m log ( M 4 ℓ ) log ( U M 4 ℓ δ − 1 ℓ 2 B )) Итого: m ⋅ 2 O ( log n ) log ( U ) log ( δ − 1 ) log ( U δ − 1 ) m \cdot 2^{O(\sqrt{\log n})} \log(U) \log(\delta^{-1}) \log(U\delta^{-1}) m ⋅ 2 O ( l o g n ) log ( U ) log ( δ − 1 ) log ( U δ − 1 ) Частичное решение (Шаг 2a):На t t t -й итерации решить на H ( t ) H^{(t)} H ( t ) , разреженность nnz ( L H ( t ) , H ( t ) ) \text{nnz}(L_{H^{(t)},H^{(t)}}) nnz ( L H ( t ) , H ( t ) ) Сложность одного решения: O ~ ( nnz ( L H ( t ) , H ( t ) ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(\text{nnz}(L_{H^{(t)},H^{(t)}}) \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( nnz ( L H ( t ) , H ( t ) ) log 2 ( U ϵ − 1 δ − 1 )) Общая разреженность:
∑ t = 0 T nnz ( L H ( t ) , H ( t ) ) ≤ ∑ u ∈ [ n ] deg ( u ) ⋅ ∑ t = 0 T 1 [ u ∈ H ( t ) ] ≤ m ⋅ 2 O ( log n ) \sum_{t=0}^T \text{nnz}(L_{H^{(t)},H^{(t)}}) \leq \sum_{u \in [n]} \deg(u) \cdot \sum_{t=0}^T \mathbb{1}[u \in H^{(t)}] \leq m \cdot 2^{O(\sqrt{\log n})} ∑ t = 0 T nnz ( L H ( t ) , H ( t ) ) ≤ ∑ u ∈ [ n ] deg ( u ) ⋅ ∑ t = 0 T 1 [ u ∈ H ( t ) ] ≤ m ⋅ 2 O ( l o g n ) Итого: O ~ ( m ⋅ 2 O ( log n ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m \cdot 2^{O(\sqrt{\log n})} \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m ⋅ 2 O ( l o g n ) log 2 ( U ϵ − 1 δ − 1 )) Извлечение больших элементов (Шаги 2b-d):Итерация только по H ( t ) H^{(t)} H ( t ) , общее количество ∑ t ∣ H ( t ) ∣ = n ⋅ 2 O ( log n ) \sum_t |H^{(t)}| = n \cdot 2^{O(\sqrt{\log n})} ∑ t ∣ H ( t ) ∣ = n ⋅ 2 O ( l o g n ) Сложность: O ~ ( n ⋅ 2 O ( log n ) ) \tilde{O}(n \cdot 2^{O(\sqrt{\log n})}) O ~ ( n ⋅ 2 O ( l o g n ) ) Поддержание векторов и множеств (Шаги 2e-f):Обновление вектора: O(m+n) общих обновлений (Claim 3.9) Поддержание норм: O ( ( n + m ) log ( n U / ϵ ) log n ) O((n+m)\log(nU/\epsilon)\log n) O (( n + m ) log ( n U / ϵ ) log n ) (Claim 3.10) Поддержание I ( t ) I^{(t)} I ( t ) : O(m+n) Поддержание H ( t ) H^{(t)} H ( t ) : n ⋅ 2 O ( log n ) n \cdot 2^{O(\sqrt{\log n})} n ⋅ 2 O ( l o g n ) (Claim 3.12) Общая временная сложность (Theorem 1.1):
O ~ ( m ⋅ 2 O ( log n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m \cdot 2^{O(\sqrt{\log n})} \log(U) \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m ⋅ 2 O ( l o g n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 ))
Основная теорема (Theorem 1.1): Для ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n алгоритм с вероятностью не менее 1 − δ 1-\delta 1 − δ выдаёт x ~ ≈ ϵ L − 1 b \tilde{x} \approx_\epsilon L^{-1}b x ~ ≈ ϵ L − 1 b .
Элементы доказательства :
Корректность покрытия (Theorem 2.1):Вероятность отказа ≤ δ / 2 \leq \delta/2 ≤ δ /2 Параметры удовлетворяют r o u t = 2 Ω ( log n ) ≥ 9 + log n U ( 1 / ϵ ) r_{out} = 2^{\Omega(\sqrt{\log n})} \geq 9 + \log_{nU}(1/\epsilon) r o u t = 2 Ω ( l o g n ) ≥ 9 + log n U ( 1/ ϵ ) Корректность частичного решения (Lemma 3.5):Вероятность отказа каждой итерации ≤ δ / ( 2 n ) \leq \delta/(2n) ≤ δ / ( 2 n ) Общая вероятность отказа за n n n итераций ≤ δ / 2 \leq \delta/2 ≤ δ /2 (объединённая граница) Корректность пороговой деградации (Theorem 3.1):После T = n T=n T = n итераций, x ~ ≈ ϵ L − 1 b \tilde{x} \approx_\epsilon L^{-1}b x ~ ≈ ϵ L − 1 b Объединённая граница : Общая вероятность отказа ≤ δ / 2 + δ / 2 = δ \leq \delta/2 + \delta/2 = \delta ≤ δ /2 + δ /2 = δ
Примечание : Данная работа является чисто теоретической и не включает экспериментальную часть. Все результаты получены теоретическим анализом и доказательствами.
Spielman-Teng ST14 : Первый почти линейный алгоритм, ошибка энергетической нормы O ( m log n poly ( log ( U ϵ − 1 ) ) ) O(m \log n \text{poly}(\log(U\epsilon^{-1}))) O ( m log n poly ( log ( U ϵ − 1 ))) Упрощённые алгоритмы : KOSZ13, LS13, KS16 упростили конструкцию алгоритмаУлучшение полилогарифмических множителей : KMST10, KMP11, LS13, PS14, KMP14, CKM+14, JS21, KS16 Параллельные алгоритмы : BGK+11, PS14, KLP+16 полилогарифмическая глубина, почти линейная работаОграничения : Все эти алгоритмы предоставляют только границы ошибок норм, не могут восстановить малые компоненты (если только ϵ \epsilon ϵ не экспоненциально мала)
Ранние работы (1980-1990-е годы) :
Higham Hig90 : Быстрое матричное умножение (например, алгоритм Штрассена) не может реализовать поэлементное приближениеЧисленная стабильность : Hey87, GTH85, HP84 эмпирические исследования показывают, что гауссово исключение более стабильно для матриц SDDMТеоретический анализ : O'C93, O'C96 анализируют поэлементные ошибки при вычислении стационарных распределений и LU-разложенииВременная сложность : Все алгоритмы требуют кубического времени O ( n 3 ) O(n^3) O ( n 3 ) Современные работы :
GNY26 :
Решение SDDM систем: O ~ ( m n log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m\sqrt{n}\log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m n log 2 ( U ϵ − 1 δ − 1 )) Обращение матриц SDDM: O ~ ( m n log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(mn\log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( mn log 2 ( U ϵ − 1 δ − 1 )) Использование схемы пороговой деградации и предсказания соседних вершин Улучшение данной работы :
Снижение с O ( m n ) O(m\sqrt{n}) O ( m n ) до O ( m ⋅ n o ( 1 ) ) O(m \cdot n^{o(1)}) O ( m ⋅ n o ( 1 ) ) Ключ: покрытие с малым диаметром реализует более точное глобальное предсказание Традиционные методы :
Coh98, BGK+11 : Используются для кратчайших путей и параллельных решателей SDDMРазличия :
Традиционные: одиночные кластеры/шары, малый диаметр Данная работа: пары внутренних и внешних шаров, большой зазор между ними Определение расстояния :
Традиционные: расстояние в графе (взвешенное/невзвешенное) Данная работа: вероятностная метрика D L ( i , j ) = − log n U ( ( L − 1 ) i j ) + 2 D_L(i,j) = -\log_{nU}((L^{-1})_{ij}) + 2 D L ( i , j ) = − log n U (( L − 1 ) ij ) + 2 Ограничение доступа : Данная работа косвенно запрашивает расстояния через решение систем со случайными правыми частямиGKS23 : Превосходная практическая производительность почти линейных решателей ЛапласаПотенциальные приложения : Сценарии с большими вариациями весов рёбер (например, задачи потоков во внутренних точечных методах)Теоретический прорыв : Впервые решены SDDM системы в почти линейном времени O ~ ( m ⋅ n o ( 1 ) ) \tilde{O}(m \cdot n^{o(1)}) O ~ ( m ⋅ n o ( 1 ) ) с гарантией поэлементного приближенияТехнические вклады :Метрика вероятностного расстояния Существование и конструкция покрытия с малым диаметром Улучшенная схема пороговой деградации с предсказанием расширения границ Границы сложности :Время: O ~ ( m ⋅ 2 O ( log n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 ) ) \tilde{O}(m \cdot 2^{O(\sqrt{\log n})} \log(U) \log^2(U\epsilon^{-1}\delta^{-1})) O ~ ( m ⋅ 2 O ( l o g n ) log ( U ) log 2 ( U ϵ − 1 δ − 1 )) битовых операций Точность: ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n (не экспоненциально малая) Вероятность успеха: ≥ 1 − δ \geq 1-\delta ≥ 1 − δ Квазилинейный множитель : 2 O ( log n ) = n o ( 1 ) 2^{O(\sqrt{\log n})} = n^{o(1)} 2 O ( l o g n ) = n o ( 1 ) хотя и является подполиномиальным, но всё ещё не константный множительТребование точности : ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n , хотя и не экспоненциально малая, но имеет нижнюю границуПредставление входных данных :Текущий алгоритм предназначен для входных данных с фиксированной точкой Входные данные с плавающей точкой могут включать редукцию к задачам кратчайших путей, что более сложно Константные множители : Константа в 2 O ( log n ) 2^{O(\sqrt{\log n})} 2 O ( l o g n ) не оптимизирована, может быть довольно большой на практикеТеоретическая работа : Отсутствует экспериментальная проверка и оценка практической производительностиИстинно почти линейное время : Можно ли достичь O ( m ⋅ polylog ( n ) ) O(m \cdot \text{polylog}(n)) O ( m ⋅ polylog ( n )) ?Требуется улучшение параметров покрытия r i n , α = O ( polylog ( n ) ) r_{in}, \alpha = O(\text{polylog}(n)) r in , α = O ( polylog ( n )) Или разработка новой схемы, не зависящей от покрытия Входные данные с плавающей точкой : Исследование алгоритмов для входных данных с плавающей точкойНеобходимо избежать сложности задач кратчайших путей Может потребоваться новые техники и предположения Практические алгоритмы :Оптимизация константных множителей Реализация и экспериментальная оценка Интеграция с существующими решателями (например, GKS23 ) Расширение на матрицы RDDL : Текущая работа сосредоточена на SDDM (симметричные), можно ли обобщить на общие RDDL?Параллельные алгоритмы : Разработка параллельной версии с полилогарифмической глубинойИсследование приложений : Применение во внутренних точечных методах, цепях Маркова и других практических задачахБольшое теоретическое значение :Впервые решена задача поэлементного приближения в почти линейном времени Преодолён барьер O ( m n ) O(m\sqrt{n}) O ( m n ) из GNY26 Снижена сложность задачи с n 1.5 n^{1.5} n 1.5 до n 1 + o ( 1 ) n^{1+o(1)} n 1 + o ( 1 ) Сильная техническая инновативность :Вероятностная метрика : Искусно связывает случайные блуждания и обратную матрицу, удовлетворяет неравенству треугольникаПокрытие с малым диаметром : Элегантный дизайн внутренних и внешних шаров, балансирует покрытие и разделениеСлучайная конструкция : Косвенный запрос расстояний через решение систем со случайными правыми частями, избегает O ( n 2 ) O(n^2) O ( n 2 ) явных вычисленийРасширение границ : Техника предсказания контролирует общий размер активного множества в n 1 + o ( 1 ) n^{1+o(1)} n 1 + o ( 1 ) Строгий теоретический анализ :Полное доказательство корректности Детальный анализ временной сложности Точный вероятностный анализ (гарантия с высокой вероятностью) Тщательный анализ битовой сложности (учитывает численную точность) Ясное изложение :Интуитивное объяснение ключевых идей в обзоре техник Хорошо организованные определения и леммы Чёткие псевдокоды алгоритмов Логичная структура доказательств Универсальность :Применим ко всем обратимым матрицам SDDM Гибкая установка параметров (точность ϵ \epsilon ϵ , вероятность отказа δ \delta δ ) Неизвестная практическая производительность :Чисто теоретическая работа без экспериментальной проверки Константа в 2 O ( log n ) 2^{O(\sqrt{\log n})} 2 O ( l o g n ) может быть очень большой На практике может быть медленнее алгоритма O ( m n ) O(m\sqrt{n}) O ( m n ) для средних размеров n n n Квазилинейный множитель :2 O ( log n ) 2^{O(\sqrt{\log n})} 2 O ( l o g n ) хотя и n o ( 1 ) n^{o(1)} n o ( 1 ) , но всё ещё значительный ростДля n = 2 20 n=2^{20} n = 2 20 , log n ≈ 4.5 \sqrt{\log n} \approx 4.5 log n ≈ 4.5 , 2 4.5 ≈ 22.6 2^{4.5} \approx 22.6 2 4.5 ≈ 22.6 Расстояние до истинно почти линейного O ( polylog ( n ) ) O(\text{polylog}(n)) O ( polylog ( n )) всё ещё велико Ограничение точности :ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n хотя и не экспоненциально малая, но имеет нижнюю границуДля очень малых ϵ \epsilon ϵ (например, ϵ = 1 / poly ( n ) \epsilon = 1/\text{poly}(n) ϵ = 1/ poly ( n ) ) может быть неприменим Ограничение входных данных :Работает только с входными данными с фиксированной точкой Проблема входных данных с плавающей точкой не решена Техническая сложность :Алгоритм сложен в реализации (многоуровневые циклы, поддержание структур данных) Построение покрытия требует решения O ( ℓ 2 B ) = 2 O ( log n ) log ( n / δ ) O(\ell^2 B) = 2^{O(\sqrt{\log n})} \log(n/\delta) O ( ℓ 2 B ) = 2 O ( l o g n ) log ( n / δ ) линейных систем Высокая сложность инженерной реализации Открытые теоретические вопросы :Существует ли алгоритм за O ( m ⋅ polylog ( n ) ) O(m \cdot \text{polylog}(n)) O ( m ⋅ polylog ( n )) ? Какова нижняя граница? Академический вклад :Значительное влияние на теорию алгоритмов Продвижение теории решения SDDM систем Введение новых технических инструментов (вероятностная метрика, покрытие с малым диаметром) Последующие исследования :Может вдохновить дальнейшие улучшения (оптимизация множителя 2 O ( log n ) 2^{O(\sqrt{\log n})} 2 O ( l o g n ) ) Техники могут применяться к другим классам матриц (RDDL, M-матрицы) Покрытие с малым диаметром может найти применение в других задачах Практическая ценность :В краткосрочной перспективе может быть менее практичным, чем существующие алгоритмы В долгосрочной перспективе может улучшиться через оптимизацию и реализацию Для очень больших задач (очень большие n n n ) имеет потенциальное преимущество Теоретическая полнота :По сути отвечает на вопрос "возможно ли поэлементное приближение в почти линейном времени" Устанавливает новый ориентир для этой области Большие разреженные системы :Очень большие n n n (например, n > 10 6 n > 10^6 n > 1 0 6 ) m ≈ O ( n ) m \approx O(n) m ≈ O ( n ) (разреженный граф)Множитель 2 O ( log n ) 2^{O(\sqrt{\log n})} 2 O ( l o g n ) относительно мал Большие вариации весов рёбер :Веса рёбер охватывают несколько порядков величины Компоненты решения различаются в экспоненциальное число раз Границы ошибок норм неудовлетворительны Требование высокой точности :Требуется точное приближение всех компонент ϵ \epsilon ϵ не может быть слишком малой (ϵ > ( n U ) − 2 log n \epsilon > (nU)^{-2\sqrt{\log n}} ϵ > ( n U ) − 2 l o g n )Теоретические исследования :Использование как подпрограммы в других алгоритмах Теоретический анализ сложности Неприменимые сценарии :Малые задачи (n < 10 4 n < 10^4 n < 1 0 4 ): алгоритмы O ( m n ) O(m\sqrt{n}) O ( m n ) или кубические могут быть быстрее Требуется только ошибка нормы: использовать классические алгоритмы ST14 Требуется очень малая ϵ \epsilon ϵ : может выходить за границы точности Входные данные с плавающей точкой: текущий алгоритм не поддерживает ST14 Spielman & Teng (2014): Почти линейный решатель SDDM, ошибка нормыGNY26 Ghadiri, Nguyen & Yang (2026): Алгоритм O ( m n ) O(m\sqrt{n}) O ( m n ) поэлементного приближения, схема пороговой деградацииKOSZ13 Kelner et al. (2013): Упрощение комбинаторного алгоритмаKS16 Kyng & Sachdeva (2016): Приближённое гауссово исключениеBGK+11 Blelloch et al. (2011): Параллельный решатель, разложение с малым диаметромHig90 Higham (1990): Быстрое матричное умножение и поэлементное приближениеO'C93, O'C96 O'Cinneide (1993, 1996): Цепи Маркова, поэлементные ошибки LU-разложенияStr69 Strassen (1969): Быстрое матричное умножениеGKS23 Gao, Kyng & Spielman (2023): Практическая производительность решателя ЛапласаДанная работа достигает важного теоретического прорыва, впервые реализуя почти линейный алгоритм поэлементного приближения для SDDM систем. Основные инновации заключаются во введении вероятностной метрики и покрытия с малым диаметром, через искусную случайную выборку и предсказание расширения границ контролируя общий размер активного множества в n 1 + o ( 1 ) n^{1+o(1)} n 1 + o ( 1 ) . Несмотря на наличие квазилинейного множителя 2 O ( log n ) 2^{O(\sqrt{\log n})} 2 O ( l o g n ) и отсутствие экспериментальной проверки, данная работа имеет значительное теоретическое значение, предоставляя новые технические инструменты и направления для последующих исследований. Для больших разреженных систем с большими вариациями весов рёбер алгоритм имеет потенциальную практическую ценность.