A refinement of an iterative orthogonal projection method

作者:

Highlights:

摘要

The Kaczmarz algorithm is an iterative orthogonal projection method for solving linear systems of equations. As compared to direct methods such as Gaussian elimination or sparse QR-factorization, this algorithm is efficient for problems with sparse matrices, as they appear in constraint-based User Interface (UI) layout specifications. We present a variant of the Kaczmarz method for solving non-square systems that can be applied to Graphical User Interface (GUI) layout problems. In its original form the Kaczmarz algorithm cannot handle soft constraints. Therefore, we propose two algorithms for handling specifications containing soft constraints using prioritized irreducible infeasible subsystem (IIS) detection and prioritized grouping constraints. If we use Kaczmarz during resizing of a window in a GUI then the system can also be under-determined. In this case, space is not distributed in an aesthetically pleasing way. To distribute the space according to the preferred size of the layout, we introduce the least squares Kaczmarz method to get the desired results.The performance and convergence of the proposed algorithms are evaluated empirically using randomly generated UI layout specifications of various sizes. The results show that these methods outperform Matlab’s LINPROG, a well-known efficient linear programming solver.

论文关键词:UI layout,Kaczmarz algorithm,Soft constraints,Least squares,Cooling function

论文评审过程:Received 26 March 2017, Revised 9 October 2017, Available online 6 March 2018, Version of Record 24 April 2018.

论文官网地址:https://doi.org/10.1016/j.cam.2018.02.025