57 research outputs found
The Parma Polyhedra Library: Toward a Complete Set of Numerical Abstractions for the Analysis and Verification of Hardware and Software Systems
Since its inception as a student project in 2001, initially just for the
handling (as the name implies) of convex polyhedra, the Parma Polyhedra Library
has been continuously improved and extended by joining scrupulous research on
the theoretical foundations of (possibly non-convex) numerical abstractions to
a total adherence to the best available practices in software development. Even
though it is still not fully mature and functionally complete, the Parma
Polyhedra Library already offers a combination of functionality, reliability,
usability and performance that is not matched by similar, freely available
libraries. In this paper, we present the main features of the current version
of the library, emphasizing those that distinguish it from other similar
libraries and those that are important for applications in the field of
analysis and verification of hardware and software systems.Comment: 38 pages, 2 figures, 3 listings, 3 table
ORCSolver: An Efficient Solver for Adaptive GUI Layout with OR-Constraints
OR-constrained (ORC) graphical user interface layouts unify conventional
constraint-based layouts with flow layouts, which enables the definition of
flexible layouts that adapt to screens with different sizes, orientations, or
aspect ratios with only a single layout specification. Unfortunately, solving
ORC layouts with current solvers is time-consuming and the needed time
increases exponentially with the number of widgets and constraints. To address
this challenge, we propose ORCSolver, a novel solving technique for adaptive
ORC layouts, based on a branch-and-bound approach with heuristic preprocessing.
We demonstrate that ORCSolver simplifies ORC specifications at runtime and our
approach can solve ORC layout specifications efficiently at near-interactive
rates.Comment: Published at CHI202
iKlax: a New Musical Audio Format for Active Listening
In this paper, we are presenting a new model for interactive music. Unlike
most interactive systems, our model is based on file organization, but does not
require digital audio treatments. This model includes a definition of a
constraints system and its solver. The products of this project are intended
for the general public, inexperienced users, as well as professional musicians,
and will be distributed commercially. We are here presenting three products of
this project. The difficulty of this project is to design a technology and
software products for interactive music which must be easy to use by the
general public and by professional composers
Kaczmarz Algorithm with Soft Constraints for User Interface Layout
The Kaczmarz method is an iterative method for solving large systems of equations that projects iterates orthogonally onto the solution space of each equation. In contrast to direct methods such as Gaussian elimination or QR-factorization, this algorithm is efficient for problems with sparse matrices, as they appear in constraint-based user interface (UI) layout specifications. However, the Kaczmarz method as described in the literature has its limitations: it considers only equality constraints and does not support soft constraints, which makes it inapplicable to the UI layout problem.
In this paper we extend the Kaczmarz method for solving specifications containing soft constraints, using the prioritized IIS detection algorithm. Furthermore, 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 offer improvements in performance over standard methods like Matlab\u27s LINPROG, a well-known efficient linear programming solver
Speeding up SOR Solvers for Constraint-based GUIs with a Warm-Start Strategy
Many computer programs have graphical user interfaces (GUIs), which need good
layout to make efficient use of the available screen real estate. Most GUIs do
not have a fixed layout, but are resizable and able to adapt themselves.
Constraints are a powerful tool for specifying adaptable GUI layouts: they are
used to specify a layout in a general form, and a constraint solver is used to
find a satisfying concrete layout, e.g.\ for a specific GUI size. The
constraint solver has to calculate a new layout every time a GUI is resized or
changed, so it needs to be efficient to ensure a good user experience. One
approach for constraint solvers is based on the Gauss-Seidel algorithm and
successive over-relaxation (SOR).
Our observation is that a solution after resizing or changing is similar in
structure to a previous solution. Thus, our hypothesis is that we can increase
the computational performance of an SOR-based constraint solver if we reuse the
solution of a previous layout to warm-start the solving of a new layout. In
this paper we report on experiments to test this hypothesis experimentally for
three common use cases: big-step resizing, small-step resizing and constraint
change. In our experiments, we measured the solving time for randomly generated
GUI layout specifications of various sizes. For all three cases we found that
the performance is improved if an existing solution is used as a starting
solution for a new layout
- …