Preconditioned Nonlinear Conjugate Gradient Method for Real-time Interior-point Hyperelasticity
Xing Shen, Runyuan Cai, Mengxiao Bi, Tangjie Lv
TL;DR
This work targets real-time simulation of elastodynamics with complex self-contact by leveraging a preconditioned nonlinear conjugate gradient (PNCG) method within an interior-point barrier framework. It adopts a Dai–Kou nonlinear CG variant with Jacobi preconditioning, a Newton-based one-pass line search to avoid CCD, and a highly efficient, parallelizable Hessian-vector computation for hyperelasticity and barrier terms. By decomposing Hessian calculations, implementing a larger barrier threshold $\hat{d}$ with preprocessing, and splitting computation across objects, the method achieves real-time performance for meshes with over $10^5$ tetrahedra on modern GPUs. The approach demonstrates fast convergence and robustness across diverse self-collision scenarios, offering substantial speedups over prior Newton-PCG and Chebyshev-accelerated methods, with practical impact for interactive simulation and digital fabrication applications.
Abstract
The linear conjugate gradient method is widely used in physical simulation, particularly for solving large-scale linear systems derived from Newton's method. The nonlinear conjugate gradient method generalizes the conjugate gradient method to nonlinear optimization, which is extensively utilized in solving practical large-scale unconstrained optimization problems. However, it is rarely discussed in physical simulation due to the requirement of multiple vector-vector dot products. Fortunately, with the advancement of GPU-parallel acceleration techniques, it is no longer a bottleneck. In this paper, we propose a Jacobi preconditioned nonlinear conjugate gradient method for elastic deformation using interior-point methods. Our method is straightforward, GPU-parallelizable, and exhibits fast convergence and robustness against large time steps. The employment of the barrier function in interior-point methods necessitates continuous collision detection per iteration to obtain a penetration-free step size, which is computationally expensive and challenging to parallelize on GPUs. To address this issue, we introduce a line search strategy that deduces an appropriate step size in a single pass, eliminating the need for additional collision detection. Furthermore, we simplify and accelerate the computations of Jacobi preconditioning and Hessian-vector product for hyperelasticity and barrier function. Our method can accurately simulate objects comprising over 100,000 tetrahedra in complex self-collision scenarios at real-time speeds.
