P. Michael Kielstra,Tianyi Shi,Hengrui Luo,Jianliang Qian,Yang Liu
Abstract:This paper presents a multilevel tensor compression algorithm called tensor butterfly algorithm for efficiently representing large-scale and high-dimensional oscillatory integral operators, including Green's functions for wave equations and integral transforms such as Radon transforms and Fourier transforms. The proposed algorithm leverages a tensor extension of the so-called complementary low-rank property of existing matrix butterfly algorithms. The algorithm partitions the discretized integral operator tensor into subtensors of multiple levels, and factorizes each subtensor at the middle level as a Tucker-like interpolative decomposition, whose factor matrices are formed in a multilevel fashion. For a $d$-dimensional integral operator discretized into a $2d$-mode tensor with $n^{2d}$ entries, the overall CPU time and memory requirement scale as $O(n^d)$, in stark contrast to the $O(n^d\log n)$ requirement of existing matrix algorithms such as matrix butterfly algorithm and fast Fourier transforms (FFT), where $n$ is the number of points per direction. When comparing with other tensor algorithms such as quantized tensor train (QTT), the proposed algorithm also shows superior CPU and memory performance for tensor contraction. Remarkably, the tensor butterfly algorithm can efficiently model high-frequency Green's function interactions between two unit cubes, each spanning 512 wavelengths per direction, which represents over $512\times$ larger problem sizes than existing algorithms. On the other hand, for a problem representing 64 wavelengths per direction, which is the largest size existing algorithms can handle, our tensor butterfly algorithm exhibits 200x speedups and $30\times$ memory reduction comparing with existing ones. Moreover, the tensor butterfly algorithm also permits $O(n^d)$-complexity FFTs and Radon transforms up to $d=6$ dimensions.
What problem does this paper attempt to address?
The main problem that this paper attempts to solve is to develop an efficient algorithm for representing and computing large - scale, high - dimensional oscillatory integral operators (OIOs), including the Green's function of the wave equation and integral transforms such as the Radon transform and the Fourier transform. Existing matrix algorithms, such as the matrix butterfly algorithm and the fast Fourier transform (FFT), have the problem of high computational complexity when dealing with these high - dimensional problems, resulting in low efficiency.
### Specific description of the problem
1. **High computational complexity**: The computational complexity of existing algorithms (such as the matrix butterfly algorithm and FFT) is \(O(n^d \log n)\), where \(n\) is the number of points in each dimension and \(d\) is the number of dimensions. This complexity will lead to extremely high computational costs and memory requirements when dealing with high - dimensional problems.
2. **Limited ability to handle high - frequency wave equations**: For 3D high - frequency wave equations, existing algorithms cannot efficiently handle very large discretized Green's function tensors, which limits their performance in practical applications.
3. **Requirement for efficient processing of multi - dimensional scientific data and operators**: For large - scale multi - dimensional scientific data and operators, tensor algorithms are usually more efficient than matrix algorithms. However, existing tensor decomposition algorithms are not effective in dealing with oscillatory integral operators because they cannot fully utilize the oscillatory structure of these operators.
### Solution
The paper proposes a tensor butterfly algorithm with linear complexity, which solves the above problems in the following ways:
- **Utilizing the complementary low - rank (CLR) property**: This algorithm extends the existing matrix butterfly algorithm, utilizes the CLR property of high - dimensional oscillatory integral operators, and combines the translation invariance of tensors and the separability of the Fourier transform.
- **Multi - level tensor decomposition**: The algorithm divides the discretized integral operator tensor into sub - tensors at multiple levels and performs a Tucker - like interpolation decomposition on each sub - tensor at the intermediate level, and its factor matrices are constructed in a multi - level manner.
- **Linear complexity**: For a \(d\)-dimensional integral operator discretized into a \(2^d\)-mode tensor, the time complexity and storage requirements of this algorithm are both \(O(n^d)\), which is significantly better than the \(O(n^d \log n)\) complexity of existing algorithms.
### Application effect
- **Handling larger - scale problems**: This algorithm can efficiently handle the high - frequency Green's function interactions between unit cubes across 512 wavelength directions, which is 512 times larger than the problem scale handled by existing algorithms.
- **Significant speed improvement and memory savings**: For problems in 64 wavelength directions, this algorithm is 200 times faster than existing algorithms and reduces memory usage by 30 times.
In summary, this paper aims to solve the efficiency and performance problems of existing algorithms in dealing with large - scale, high - dimensional oscillatory integral operators by proposing a new tensor butterfly algorithm, thereby providing a more powerful tool for research in related fields.