Interior point methods are widely used for different types of mathematical optimization problems. Many implementations of interior point methods in use today rely on direct linear solvers to solve systems of equations in each iteration. The need to solve ever larger optimization problems more efficiently and the rise of hardware accelerators for general purpose computing has led to a large interest in using iterative linear solvers instead, with the major issue being inevitable ill-conditioning of the linear systems arising as the optimization progresses. We investigate the use of Krylov solvers for interior point methods in solving optimization problems from radiation therapy. We implement a prototype interior point method using a so called doubly augmented formulation of the Karush-Kuhn-Tucker (KKT) linear system of equations, originally proposed by Forsgren and Gill, and evaluate its performance on real optimization problems from radiation therapy. Crucially, our implementation uses a preconditioned conjugate gradient method with Jacobi preconditioning internally. Our measurements of the conditioning of the linear systems indicate that the Jacobi preconditioner improves the conditioning of the systems to a degree that they can be solved iteratively, but there is room for further improvement in that regard. Furthermore, profiling of our prototype code shows that it is suitable for GPU acceleration, which may further improve its performance in practice. Overall, our results indicate that our method can find solutions of acceptable accuracy in reasonable time, even with a simple Jacobi preconditioner.
翻译:内点法被广泛应用于各类数学优化问题。目前多数内点法实现依赖直接线性求解器求解每次迭代中的方程组。为更高效地求解日益庞大的优化问题,加之通用计算硬件加速器的兴起,人们开始转向使用迭代线性求解器,但主要难题在于优化过程中线性系统不可避免的病态性。我们研究了内点法中Krylov求解器在放射治疗优化问题中的应用。基于Forsgren与Gill提出的双重增广形式KKT线性方程组,我们实现了一款原型内点法,并评估其在真实放射治疗优化问题上的表现。关键在于,该实现内部采用带雅可比预条件子的共轭梯度法。对线性系统条件数的测量表明,雅可比预条件子虽能将系统改善至可迭代求解的程度,但仍有进一步优化空间。此外,原型代码的性能分析显示其适合GPU加速,有望在实践中提升性能。总体而言,即便仅使用简单的雅可比预条件子,该方法也能在合理时间内获得可接受的精度解。