While interior-point methods share the same fundamentals, the implementation determines the actual performance. In order to attain the highest efficiency, different applications may require differently tuned implementations. In this paper we describe an implementation specifically designed for optimisation in radiation therapy. These problems are large-scale nonlinear (and sometimes nonconvex) constrained optimisation problems, consisting of both sparse and dense data. Several application-specific properties are exploited to enhance efficiency. Permuting, tiling and mixed precision arithmetic allow the algorithm to optimally process the mixed dense and sparse data matrices (making this step 2.2 times faster, and overall runtime reduction of 55 %) and scalability (16 threads resulted in a speed-up factor of 9.8 compared to singlethreaded performance, against a speed-up factor of 7.7 for the less optimised implementation). Predefined cost-functions are hard-coded and the computationally expensive second derivatives are written in canonical form, and combined if multiple cost-functions are defined for the same clinical structure. The derivatives are then computed using a scaled matrix–matrix product. A cheap initialisation strategy based on the background knowledge reduces the number of iterations by 11 %. We also propose a novel combined Mehrotra–Gondzio approach. The algorithm is extensively tested on a dataset consisting of 120 patients, distributed over 6 tumour sites/approaches. This test dataset is made publicly available.

Additional Metadata
Keywords Higher-order methods, Initialisation, Interior-point, Large-scale, Multiple precision arithmetic, Nonlinear optimisation, Performance optimised, Radiation therapy, Tiled matrix algebra
Persistent URL dx.doi.org/10.1007/s10589-017-9919-4, hdl.handle.net/1765/108519
Journal Computational Optimization and Applications
Breedveld, S, van den Berg, B. (Bas), & Heijmen, B.J.M. (2017). An interior-point implementation developed and tuned for radiation therapy treatment planning. Computational Optimization and Applications, 68(2), 209–242. doi:10.1007/s10589-017-9919-4