Split Packing: Algorithms for Packing Circles with Optimal Worst-Case Density

Split Packing: Algorithms for Packing Circles with Optimal Worst-Case Density
复制标题

分割填充:具有最佳最坏情况密度的填充圆的算法

DOI:
--
复制
发表时间:
2017
影响因子:
0.8
通讯作者:
Christian Scheffer
Christian Scheffer
中科院分区:
数学3区
文献类型:
--
作者:
S. Fekete;Sebastian Morr;Christian Scheffer

文献摘要

被引文献

相似文献

在经典的NPdocumentclass[12pt]{minimal} usepackageamsmath{ useppackagewasysym} useppackageamsfonts{ useppackageamssyb} useppackageamssyb{ useppackageamssys useppackageamsfs} setlengthoddsidemargin{-69pt} {egindocument}{}{}{}{}{}$$mathsf {NP}$$ enddocument-{hard圆}包装问题中,一个问题是给定的一组圆是否可以包装到给定的容器中。在本文中,我们只用圆的面积之和,给出了将圆装入正方形容器和三角形容器的新的充分条件:对于正方形容器,可以装入任何一组圆,其组合面积高达≈53.90%documentclass[12pt]{minimal} usepackage{amsmath} usepackage{wasysym} usepackage{amsfonts} usepackage{amssymb} usepackage{amsbsy} usepackage{mathrsfs} usepackage{upgreek} setlength{oddsidemargin}{-69pt} egin{document}$$approx !,53.90\%$$end{document} of the square’s area. And when the container is a right or obtuse triangle, any set of circles whose combined area does not exceed the triangle’s incircle can be packed. These area conditions are tight: for any larger areas, there are sets of circles which cannot be packed. Similar results have long been known for squares, but to the best of our knowledge, we give the first results of this type for circular objects. Our proofs are constructive: we describe a versatile, divide-and-conquer-based algorithm for packing circles into various container shapes with optimal worst-case density, which employs an elegant, recursive subdivision scheme. We call this algorithm Split Packing. It can be used as a constant-factor approximation algorithm when looking for the smallest container in which a given set of circles can be packed, due to its polynomial runtime. A visualization can be found at https://morr.cc/split-packing/.
In the classic, NPdocumentclass[12pt]{minimal} usepackage{amsmath} usepackage{wasysym} usepackage{amsfonts} usepackage{amssymb} usepackage{amsbsy} usepackage{mathrsfs} usepackage{upgreek} setlength{oddsidemargin}{-69pt} egin{document}$$mathsf {NP}$$end{document}-hard circle packing problem, one asks whether a given set of circles can be packed into a given container. In this paper, we present new sufficient conditions for packing circles into square and triangular containers, using only the sum of the circles’ areas: for square containers, it is possible to pack any set of circles with a combined area of up to ≈53.90%documentclass[12pt]{minimal} usepackage{amsmath} usepackage{wasysym} usepackage{amsfonts} usepackage{amssymb} usepackage{amsbsy} usepackage{mathrsfs} usepackage{upgreek} setlength{oddsidemargin}{-69pt} egin{document}$$approx !,53.90\%$$end{document} of the square’s area. And when the container is a right or obtuse triangle, any set of circles whose combined area does not exceed the triangle’s incircle can be packed. These area conditions are tight: for any larger areas, there are sets of circles which cannot be packed. Similar results have long been known for squares, but to the best of our knowledge, we give the first results of this type for circular objects. Our proofs are constructive: we describe a versatile, divide-and-conquer-based algorithm for packing circles into various container shapes with optimal worst-case density, which employs an elegant, recursive subdivision scheme. We call this algorithm Split Packing. It can be used as a constant-factor approximation algorithm when looking for the smallest container in which a given set of circles can be packed, due to its polynomial runtime. A visualization can be found at https://morr.cc/split-packing/.