6 research outputs found
A Divide and Conquer Approximation Algorithm for Partitioning Rectangles
Given a rectangle with area and a set of areas
with , we consider the problem of partitioning into
sub-regions with areas in a way that the total
perimeter of all sub-regions is minimized. The goal is to create square-like
sub-regions, which are often more desired. We propose an efficient
--approximation algorithm for this problem based on a divide and conquer
scheme that runs in time. For the special case when the
aspect ratios of all rectangles are bounded from above by 3, the approximation
factor is . We also present a modified version of out
algorithm as a heuristic that achieves better average and best run times
Space Partitioning Schemes and Algorithms for Generating Regular and Spiral Treemaps
Treemaps have been widely applied to the visualization of hierarchical data.
A treemap takes a weighted tree and visualizes its leaves in a nested planar
geometric shape, with sub-regions partitioned such that each sub-region has an
area proportional to the weight of its associated leaf nodes. Efficiently
generating visually appealing treemaps that also satisfy other quality criteria
is an interesting problem that has been tackled from many directions. We
present an optimization model and five new algorithms for this problem,
including two divide and conquer approaches and three spiral treemap
algorithms. Our optimization model is able to generate superior treemaps that
could serve as a benchmark for comparing the quality of more computationally
efficient algorithms. Our divide and conquer and spiral algorithms either
improve the performance of their existing counterparts with respect to aspect
ratio and stability or perform competitively. Our spiral algorithms also expand
their applicability to a wider range of input scenarios. Four of these
algorithms are computationally efficient as well with quasilinear running times
and the last algorithm achieves a cubic running time. A full version of this
paper with all appendices, data, and source codes is available at
\anonymizeOSF{\OSFSupplementText}