{"id":1034,"date":"2024-04-01T12:02:49","date_gmt":"2024-04-01T19:02:49","guid":{"rendered":"https:\/\/labs.engineering.asu.edu\/sops\/?page_id=1034"},"modified":"2024-04-01T12:02:49","modified_gmt":"2024-04-01T19:02:49","slug":"convex-hull","status":"publish","type":"page","link":"https:\/\/labs.engineering.asu.edu\/sops\/convex-hull\/","title":{"rendered":"Convex Hull Formation for Programmable Matter"},"content":{"rendered":"\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p>Joshua J. Daymude, Robert Gmyr, Kristian Hinnenthal, Irina Kostitsyna, Christian Sheideler, and Andr\u00e9a W. Richa.<br>[<a href=\"https:\/\/arxiv.org\/abs\/1805.06149\">arXiv<\/a>] [<a href=\"https:\/\/dl.acm.org\/doi\/abs\/10.1145\/3369740.3372916\">Online<\/a>] \u2014 Conference paper at the\u00a0<em>21st International Conference on Distributed Computing and Networking (ICDCN \u201920)<\/em>, pp. 2:1-2:10, 2020.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Overview<\/h2>\n\n\n\n<p>Motivated by the problem of sealing an object using minimal resources, this paper gives a distributed, local algorithm under the amoebot model for forming an object\u2019s&nbsp;<strong>convex hull<\/strong>. We prove that this algorithm is correct and terminates within&nbsp;<strong>O(<em>B<\/em>)<\/strong>&nbsp;asynchronous rounds, where&nbsp;<em><strong>B<\/strong><\/em><em>&nbsp;<\/em>is the length of the object\u2019s boundary. We also show that this algorithm can be extended to form an object\u2019s&nbsp;<strong>(weak) O-hull<\/strong>, which uses the same number of particles but \u201cshrink-wraps\u201d the object to enclose the minimum possible area.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1500\" height=\"393\" src=\"https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hulls-1500x393.png\" alt=\"\" class=\"wp-image-677\" srcset=\"https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hulls-1500x393.png 1500w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hulls-500x131.png 500w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hulls-1000x262.png 1000w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hulls-1536x402.png 1536w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hulls-2048x537.png 2048w\" sizes=\"auto, (max-width: 1500px) 100vw, 1500px\" \/><\/figure>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p>Our algorithms are the first to compute convex hulls with distributed entities that have\u00a0<em>strictly local sensing<\/em>,\u00a0<em>constant-size memory<\/em>, and\u00a0<em>no shared sense of orientation or coordinates<\/em>. Ours is also the first distributed approach to computing\u00a0<strong>restricted-orientation convex hulls<\/strong>. This approach involves coordinating particles as distributed memory; thus, as a supporting but independent result, we present and analyze an algorithm for organizing particles with constant-size memory as\u00a0<strong>distributed binary counters<\/strong>\u00a0that efficiently support\u00a0<em>increments<\/em>,\u00a0<em>decrements<\/em>, and\u00a0<em>zero-tests<\/em>\u00a0\u2014 even as the particles move.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"996\" height=\"678\" src=\"https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-halfplanes.png\" alt=\"\" class=\"wp-image-679\" srcset=\"https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-halfplanes.png 996w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-halfplanes-500x340.png 500w\" sizes=\"auto, (max-width: 996px) 100vw, 996px\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p>The core idea of our algorithm is the following: we treat the convex hull as an intersection of six half-planes, labelling the half-planes according to some internal compass. Then, a leader particle traverses the object\u2019s boundary, keeping track of its distance to each of the six half-planes. Whenever its boundary traversal takes it past where it had estimated one or more half-planes to be, it updates its estimate. Thus, once it completes its traversal, it has an accurate estimate of the convex hull.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1500\" height=\"360\" src=\"https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hullestimate-1500x360.png\" alt=\"\" class=\"wp-image-678\" srcset=\"https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hullestimate-1500x360.png 1500w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hullestimate-500x120.png 500w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hullestimate-1000x240.png 1000w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hullestimate-1536x369.png 1536w, https:\/\/labs.engineering.asu.edu\/sops\/wp-content\/uploads\/sites\/181\/2020\/01\/paper-convexhull-hullestimate-2048x492.png 2048w\" sizes=\"auto, (max-width: 1500px) 100vw, 1500px\" \/><\/figure>\n\n\n\n<div style=\"height:20px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<p>However, these distances can far exceed the memory capacity of a single particle. This is where the distributed binary counters come in: by using its follower particles as distributed memory, the leader can keep track of these large distances. The remainder of the algorithm involves carefully coordinating the particle system to fill the hull once it\u2019s been learned.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n\n\n\n<div style=\"height:21px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-28f84493 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\">\n<h2 class=\"wp-block-heading\">Resources<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>[GitHub] Coming soon!<\/li>\n\n\n\n<li>[Talk Slides] Coming soon!<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Press<\/h2>\n\n\n\n<p>None.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">BibTeX<\/h2>\n\n\n\n<p>@InProceedings{Daymude2020, <br>Title = {Convex Hull Formation for Programmable Matter}, <br>Author = {Daymude, Joshua J. and Gmyr, Robert and Hinnenthal, Kristian and Kostitsyna, Irina and Scheideler, Christian and Richa, Andr\\'{e}a W.}, Booktitle = {Proceedings of the 21st International Conference on Distributed Computing and Networking}, <br>Series = {ICDCN 2020}, <br>Pages = {2:1&#8211;2:10}, <br>Year = {2020} }<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Related Publications<\/h2>\n\n\n\n<p>This paper is related in part to the&nbsp;<a href=\"https:\/\/sops.engineering.asu.edu\/sops\/collaborative-computation\/\">Collaborative Computation paper<\/a>&nbsp;(2018) which also studied binary counters under the amoebot model. However, as discussed in the Overview, this paper supplants those results by extending the counters to handle both increments and decrements by one as well as zero-testing.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\"><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p class=\"mb-2\">Joshua J. Daymude, Robert Gmyr, Kristian Hinnenthal, Irina Kostitsyna, Christian Sheideler, and Andr\u00e9a W. Richa.[arXiv] [Online] \u2014 Conference paper at the\u00a021st International Conference on Distributed Computing and Networking (ICDCN \u201920), pp. 2:1-2:10, 2020. Overview Motivated by the problem of sealing an object using minimal resources, this paper gives a distributed, local algorithm under the amoebot&#8230;<\/p>\n","protected":false},"author":338,"featured_media":0,"parent":0,"menu_order":6,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1034","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/pages\/1034","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/users\/338"}],"replies":[{"embeddable":true,"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/comments?post=1034"}],"version-history":[{"count":0,"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/pages\/1034\/revisions"}],"wp:attachment":[{"href":"https:\/\/labs.engineering.asu.edu\/sops\/wp-json\/wp\/v2\/media?parent=1034"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}