Sublinear-Time Reconfiguration of Programmable Matter with Joint Movements
Abstract
We study centralized reconfiguration problems for geometric amoebot structures. A set of amoebots occupy nodes on the triangular grid and can reconfigure via expansion and contraction operations. We focus on the joint movement extension, where amoebots may expand and contract in parallel, enabling coordinated motion of larger substructures. Prior work introduced this extension and analyzed reconfiguration under additional assumptions such as metamodules, i.e., collections of modules that act as a single unit.
In contrast, we investigate the intrinsic dynamics of reconfiguration without such assumptions by restricting attention to centralized algorithms, leaving distributed solutions for future work. We study the reconfiguration problem between two classes of amoebot structures and : For every structure , the goal is to compute a schedule that reconfigures into some structure . Our focus is on sublinear-time algorithms.
We affirmatively answer the open problem by Padalkin et al. (Auton. Robots, 2025) whether a within-the-model sublinear-time universal reconfiguration algorithm is possible, by proving that any structure can be reconfigured into a canonical line-segment structure in rounds. Additionally, we give a constant-time algorithm for reconfiguring any spiral structure into a line segment. These results are enabled by new constant-time primitives that facilitate efficient parallel movement. Our findings demonstrate that the joint movement model supports sublinear reconfiguration without auxiliary assumptions. A central open question is whether universal reconfiguration within this model can be achieved in polylogarithmic or even constant time.
Keywords and phrases:
amoebot model, programmable matter, modular robot system, reconfigurationCopyright and License:
2012 ACM Subject Classification:
Computing methodologies Cooperation and coordination ; Theory of computation Computational geometryAcknowledgements:
We thank Christian Bauer and Leo Decking for the software implementation of the proposed algorithms.Funding:
Andreas Padalkin and Christian Scheideler: These authors were supported by the DFG Project SCHE 1592/10-1.Editors:
George B. Mertzios and Andréa W. RichaSeries and Publisher:
Leibniz International Proceedings in Informatics, Schloss Dagstuhl – Leibniz-Zentrum für Informatik
1 Introduction
Programmable matter is made of many small, identical robotic modules that can change the properties of matter, such as its shape, color, or density, in a programmable way [19]. In this paper, we consider the reconfiguration dynamics of the geometric amoebot model [7, 8, 9] from a centralized perspective. In the distributed version of this model, a set of robots (called amoebots) is placed on a triangular grid. Each amoebot can communicate with its neighboring amoebots and move by expanding into an empty adjacent node and then contracting into it. Since movement and communication happen locally from node to node, many problems in this model have a natural lower bound of rounds, where is the diameter of the structure.
To overcome this limitation, previous work introduced the joint movement extension [15]. This extension allows multiple amoebots to move together in a coordinated way, e.g., an amoebot can push or pull other amoebots while expanding or contracting, which enables large parts of the structure to move in parallel. This raises an important question: Can we reconfigure an amoebot structure much faster using joint movements? By “faster” we mean running in sublinear parallel time (measured in discrete rounds), or, if possible, even in polylogarithmic or constant time. In this paper, we are interested in whether this is in principle feasible, thus we naturally focus on the centralized reconfiguration dynamics of the model.
Actuation operations that can globally affect the structure are sometimes called linear-strength operations, representing the property that they have sufficient strength to displace up to a linear-sized set. Although such operations may be a strict assumption to make in some systems, they have been incorporated in a variety of theoretical models [2, 3, 4, 5, 13, 20] and are reasonable in several real-world contexts like micro- and nano-robotic systems in low-viscosity environments, DNA nanotechnology, and programmable matter where a single local operation can directly cause reconfiguration of the entire system. They also form a simple theoretical abstraction for dynamics that, in practice, could be implemented by joint movements, with multiple robots jointly bearing the load of a linear-strength operation. We use the terms move and movement to refer to actuation operations throughout the paper.
Aloupis et al. [4, 5] studied a model of a modular robot system known as crystalline robots [18]. The 2D version of the crystalline model represents modules as squares on a 2D grid, forming a connected shape of modules attached to adjacent modules. Each individual module can expand and contract, by extending one of its faces one unit out and retracting it back at some later point. Due to modules being attached to each other, up to linear-size components can move due to a module’s expansion or contraction. In [5], they gave a universal centralized reconfiguration algorithm for the crystalline model that, for any pair of connected shapes of the same number of modules , can transform into in rounds. Note that in the crystalline model reconfiguration of some classes of shapes is impossible without metamodules (or other assumptions), and these algorithms essentially rely on the use of metamodules.
Recent work has showed that joint movements in the geometric amoebot model can also be very powerful when additional assumptions such as metamodules are used [15]. However, it is still unclear how powerful the model is on its own, without relying on extra assumptions. In this paper, we study the centralized reconfiguration problem in the geometric amoebot model with joint movements, without relying on such additional assumptions, thus focusing on the limits of the model dynamics themselves.
We consider centralized algorithms, where a global scheduler knows the full structure and decides the movements of all amoebots in each round. This allows us to focus on the main question: How fast can reconfiguration be in principle? Given two classes of amoebot structures, the goal is to design sequences of movements that reconfigure every structure from one class into some structure of the other class. An algorithm in this context is a formal description of these sequences of movements for all structures in the source class.
Our main result is the first within-the-model universal sublinear-time reconfiguration algorithm. We show that any connected amoebot structure can be reconfigured into a line segment in rounds. Since any two connected structures with the same number of amoebots can both be reconfigured into a line segment, and every reconfiguration is reversible, this immediately implies that we can reconfigure any structure into any other structure within the same asymptotic bound. Therefore, we obtain universal reconfiguration in rounds. This answers an open question on whether large-scale reconfiguration can be achieved in sublinear time without additional assumptions [15]. We also present an algorithm that reconfigures spiral structures into a line segment in constant time. This result shows that non-trivial subclasses of paths can be reconfigured extremely fast within the model. We hope that this can serve as a foundational step toward polylogarithmic or even constant-time universal reconfiguration, which is left as a central open question.
Overall, our results show that joint movements can greatly increase the reconfiguration efficiency of programmable matter structures, i.e., how quickly a structure can be reconfigured into another. While the original amoebot model is limited by diameter-based lower bounds, as we show, coordinated parallel motion enables significantly faster global reconfiguration.
Organization of the paper.
In Section 2, we describe the geometric amoebot model with joint movements and formally define the reconfiguration problem and the classes of structures considered in this paper. Section 3 introduces a set of basic movement primitives that will be used as building blocks in our algorithms. In Section 4, we present an algorithm that reconfigures monotone structures into a line segment, which will become an important subroutine in our main algorithms. Section 5 describes our main result: a universal reconfiguration algorithm that reconfigures any connected structure into a line segment in sublinear time. Section 6 presents algorithms for reconfiguring spiral structures into a line segment, including a constant-time solution. Finally, Section 7 discusses open problems.
2 Model and Problem Statement
In this section, we formally present the model and the problem statement. In Section 2.1, we present the geometric amoebot model with joint movements. In Section 2.2, we define the reconfiguration problem and the classes of amoebot structures considered in this paper.
2.1 Geometric Amoebot Model with Joint Movements
In this section, we present the geometric amoebot model [8, 9] with the joint movement extension [15]. The amoebot structure consists of amoebots placed on the infinite regular triangular grid graph (see the left side of Figure 1). Each amoebot either occupies a single node or two adjacent nodes and the edge between them. We call an amoebot contracted if the amoebot occupies a single node and expanded otherwise. Every node of is occupied by at most one amoebot. Adjacent amoebots are connected by bonds.
Let denote the set of nodes occupied by contracted amoebots, the set of nodes occupied by expanded amoebots, denote the set of all edges occupied by expanded amoebots, and the set of all bonds. We define the connectivity graph of an amoebot structure as the graph . The edges of are pairwise disjoint. We assume that initially, is connected. To each edge in , we assign a geometric orientation. We only allow orientations parallel to the axes of the triangular grid (see the right side of Figure 1). The amoebot structure is defined by its connectivity graph and the assignment of orientations. For the sake of simplicity, we will denote each amoebot structure by its connectivity graph.
We assume the fully synchronous activation model, i.e., time is divided into synchronous rounds, and every amoebot is active in each round. In each round, each amoebot can perform a single movement which is performed in two steps. Let be the amoebot structure at the beginning of the round.
In the first step, the amoebots remove bonds from as follows. Each amoebot can decide to release an arbitrary subset of its currently incident bonds in . A bond is removed if and only if one of the incident amoebots releases the bond. Note that we only remove bonds (i.e., edges in ) but no occupied edges (i.e., edges in ). Let be the set of the remaining bonds and the resulting amoebot structure. We require that is connected since otherwise, disconnected parts might float apart. We say that a connectivity conflict occurs if and only if is not connected. Whenever a connectivity conflict occurs, the amoebot structure transitions into an undefined state such that we become unable to make any statements about the structure.
In the second step, each amoebot may perform one of the following movements. A contracted amoebot occupying may expand on one of the axes of the grid (see Figure 2). For that, we replace by two nodes and an edge , and assign an orientation to . For each to incident bond , we replace with one of the new nodes. Note that the incident bonds do not change their orientations. As a result, all connected amoebots move with the expanding amoebot. An expanded amoebot may contract analogously by reversing the contraction (see Figure 2).
Furthermore, pairs of amoebots may perform isolated handovers as follows (see Figure 2). Consider a contracted amoebot occupying and an expanded amoebot occupying and that are connected by a bond . Intuitively, we want to switch the association of the expanded amoebot and the bond. More precisely, (i) amoebot becomes expanded and occupies nodes , , and edge , (ii) amoebot becomes contracted and occupies node , and (iii) edge becomes a bond.
At the end of the movements, let denote the set of nodes occupied by contracted amoebots, and the set of nodes occupied by expanded amoebots, the set of all edges occupied by expanded amoebots, and the set of all bonds. Let be the resulting connectivity graph. We require that is a subgraph of in compliance with the orientations of all edges (i.e., ). We say that a collision occurs if and only if is not a subgraph of , i.e., either the amoebots cannot be mapped to the triangular grid or multiple amoebots are mapped to the same node. Whenever a collision occurs, the amoebot structure transitions into an undefined state such that we become unable to make any statements about the structure. We, as algorithm designers, are responsible to make sure collisions do not happen. In the next round, we continue with the adjacency closure of , i.e., we add bonds between amoebots until all adjacent amoebots are connected.
In this paper, we assume that we have a centralized scheduler. The scheduler knows the current state of the amoebot structure at all times. At the beginning of each synchronous round, it decides for each amoebot which bonds to release, and which movement to perform. Due to our focus being on understanding the feasibility of sublinear-time dynamics within the model (i.e., no additional assumptions in contrast to previous work which used metamodules), we leave the design of distributed solutions for future work.
2.2 Problem Statement and Classes of Amoebot Structures
In this paper, we consider the reconfiguration problem between two classes and of amoebot structures of the same size. The goal of the problem is to develop an algorithm that for every amoebot structure computes a schedule that reconfigures into any amoebot structure . Note that an algorithm may map the amoebot structures of to only a subset of and not the whole class. Hence, in general, it is not possible to use the same algorithm with reversed schedules to solve the reverse problem. In the remainder of this paper, we will consider the following classes (see Figure 3, which also shows our results). We assume that all structures in the classes only consist of contracted amoebots. Note that each class is closed under translation, rotation, and reflection.
Arbitrary: All structures.
Tree: Structures forming a tree. Note that this class is equal to Arbitrary since each structure has a spanning tree.
Path: Structures forming a path.
Spiral: Structures forming a simple spiral with corners. Note that a single line segment is a one-segmented spiral.
LineSegment: Structures that form a line segment.
Monotone: We call the intersection of the amoebot structure with a line parallel to the -axis an -section. Note that an -section is not necessarily connected. We define - and -sections analogously. In particular, we also call -sections rows, and -sections columns. We call an amoebot structure -monotone if and only each -section is connected. We define - and -monotone analogously. We call an amoebot structure monotone if and only if it is -monotone, -monotone, or -monotone.
Histogram: We call a line segment of amoebots parallel to the -axis an -segment. We define - and -segments analogously. We say that an amoebot structure forms a histogram if and only if it consists of an -segment with -segments attached to one side of the -segment, or can be obtained from such a structure by reflections and rotations. Note that every histogram is monotone.
Bounded(): Structures with at most non-empty -, -, or -sections.
Convex: We call an amoebot structure convex if and only if for each pair of amoebots , all shortest paths between and are part of the amoebot structure.
WeaklyConvex: We call an amoebot structure weakly convex if and only if for each pair of amoebots , at least one shortest path between and is part of the amoebot structure.
StarConvex: We call an amoebot structure star-convex if and only if there is an amoebot such that for each amoebot , all shortest paths between and are part of the amoebot structure [6].
Another interesting variant of the reconfiguration problem is the one within a class . The goal of this variant is to develop an algorithm that for any two amoebot structures (with the same number of amoebots) computes a schedule that reconfigures into . We obtain a universal reconfiguration algorithm if we solve the problem for the class Arbitrary. A common way to design such an algorithm is to use a canonical structure as an intermediate structure during the reconfiguration (e.g., [4, 5, 12]). Given schedules from and to , we can obtain a schedule from to by first executing the schedule from to and then the reverse schedule from to . In this paper, we utilize a line segment as the canonical structure. Our focus therefore is to solve the reconfiguration problem between various classes and the class LineSegment. Our main results are a universal reconfiguration algorithm that requires rounds and an algorithm that reconfigures a spiral into a line in rounds. Further results can be found in Figure 3.
3 Preliminaries
In this section, we present basic movement primitives: the tunneling, shearing, parallelogram, triangle, and trapezoid primitive. These are core components in our reconfiguration algorithms. Due to space constraints, we omit the description of the implementation of these primitives and refer to the full version.
In the tunneling primitive, originally defined in [10], we move a chain of amoebots along a path by constantly performing handovers.111In previous work, the primitive is defined for spanning forests and is therefore called the spanning forest primitive. Since we only need the simpler case of a path, we refer to [7, 10] for the general case. We will use this primitive to “tunnel” an amoebot from one end to the other end without changing the structure of the remaining chain. In general, it may take up to rounds to tunnel the amoebot through the chain. We call a chain that alternates between contracted and expanded amoebots alternating. On alternating chains, the primitive only requires rounds (see Figure 4). Note that the primitive actually moves all amoebots along the path without changing the order. However, since the amoebots are identical, the outcome is equivalent to a real tunneling. By construction, we obtain the following lemma.
Lemma 1.
On alternating chains, the tunneling primitive requires rounds to tunnel an amoebot through the chain.
We perform all remaining primitives on substructures of the amoebot structure. Other parts of the amoebot structure may be connected to that substructure at specific amoebots which we call connection points. Each primitive has two of these connection points. As the parts are not necessarily connected without the substructure, we must keep it connected at all times. With the exception of the shearing primitive, we maintain the relative position between those connection points.
In the shearing primitive, we shear a line segment of amoebots to another axis.222This primitive is similar to the realignment primitive of [15]. In fact, both primitives use the same intermediate structure. This allows us to switch between all structures of both primitives. We emphasize that this is not a rotation of the line segment since the attached parts of the amoebot structure are not rotated with the line segment. The endpoints of the line serve as the connection points.
Lemma 2.
The shearing primitive requires rounds.
Consider a parallelogram where only the two sides incident to an obtuse corner are occupied by amoebots. The amoebots at the acute corners serve as the connection points. The goal of the parallelogram primitive is to move the amoebots to the other two sides without leaving the parallelogram and without changing the relative positions of the connection points at any time. Note that these sides require the same number of amoebots as the initially occupied sides.
Lemma 3.
The parallelogram primitive requires rounds.
Consider an equilateral triangle where only two sides (w.l.o.g., the legs) are occupied by amoebots. The amoebots at the corners incident to the unoccupied side (i.e., the base) serve as the connection points. The goal of the triangle primitive is to occupy the base and one of the legs without leaving the triangle and without changing the relative positions of the connection points at any time. Note that any two sides of the triangle require the same number of amoebots since the triangle is equilateral.
Lemma 4.
The triangle primitive requires rounds.
Finally, consider a trapezoid where the shorter base and the legs are occupied by amoebots. The amoebots at the acute corners serve as the connection points. Let a node on the longer base be given. We will call it the starting point. The goal of the trapezoid primitive is to occupy the longer base and a path between the bases starting from the starting point, which may consist of up to segments, without leaving the trapezoid and without changing the relative positions of the connection points at any time. Note that the shorter base and both legs require the same number of amoebots as the longer base and one leg. Furthermore, the path between the legs requires the same number of amoebots as one leg. Hence, we have the exact number of amoebots for this reconfiguration.
Lemma 5.
The trapezoid primitive requires rounds.
4 Monotone Structures
Both our universal reconfiguration algorithm and our constant-time Spiral2Line algorithm make use of monotone structures as intermediate structures. In the following, we present our Monotone2LineSegment algorithm. W.l.o.g., we assume that the amoebot structure is -monotone. By definition, each column is a -segment. We first remove all bonds between adjacent columns except for one arbitrary horizontal bond. If there is no such bond, we shift the right column up by one position in a preprocessing phase (see Figure 5).
Let denote the amoebots of the column from bottom to top. Let () be the amoebot connected to the left (right) column if it exists and () otherwise. Each column applies the following rules until (see Figure 6).
-
1.
If , we shear the subsegment to align it to the -axis (see Figure 6). We obtain new columns. The first column consists of . For all , the -th column consists of . The last column consists of . For each of these columns, holds. Note that if , all resulting columns will consist of a single amoebot, respectively.
-
2.
If , we shear the subsegment twice to first align it to the -axis and then to the -axis (see Figure 6). We obtain new columns. The first column consists of . For all , the -th column consists of . The last column consists of . For each of these columns, holds. Note that if , all resulting columns will consist of a single amoebot, respectively.
-
3.
If , we apply the following subrules.
-
(a)
If , we split the column into two columns as follows (see Figure 6). First, expands horizontally. Second, and perform a handover. Finally, contracts again. The left column consists of . The right column consists of .
-
(b)
If and is odd, we split the column into two columns analogously to Rule 3a (see Figure 6). The left column consists of . The right column consists of .
-
(c)
If and is odd, we split the column into two columns analogously to Rules 3a and 3b (see Figure 6). The left column consists of . The right column consists of .
-
(d)
If and is even, we split the subsegment into two columns with amoebots, respectively, as follows (see Figure 6). For each , , we perform the following procedure in parallel. In the first round, each expands horizontally. In the second round, each performs a handover with . In the third round, each contracts. We obtain two columns with amoebots. The left column consists of . The right column consists of .
For subsequent rule applications, we connect all amoebots within the same column with bonds and remove all bonds between those columns except for the topmost horizontal bond. Note that this does not require an additional round.
-
(e)
If and is even, we split the subsegment into two columns with amoebots, respectively, analogously to Rules 3d (see Figure 6). The left column consists of . The right column consists of .
For subsequent rule applications, we connect all amoebots within the same column with bonds and remove all bonds between those columns except for the bottommost horizontal bond. Note that this does not require an additional round.
-
(a)
We obtain the following theorem.
Theorem 6.
The Monotone2LineSegment algorithm reconfigures a structure of Monotone into a structure of LineSegment in rounds.
In the full version, we also show how the Monotone2LineSegment algorithm can be used to reconfigure a star-convex structure into a monotone structure.
Theorem 7.
The StarConvex2Monotone algorithm reconfigures a structure of StarConvex into a structure of Monotone in rounds.
5 Universal Reconfiguration
In this section, we describe our universal reconfiguration algorithm that reconfigures an arbitrary structure into a line segment. It consists of subroutines. In the first subroutine, we apply an algorithm (called Arbitrary2Bounded) to reconfigure the structure into a bounded structure. In the second subroutine, we apply an algorithm (called Bounded2Monotone) to reconfigure the bounded structure into a monotone structure. Finally, in the third subroutine, we apply the Monotone2LineSegment algorithm to reconfigure the monotone structure into a line segment. The latter subroutine was presented in Section 4. In the following, we present the other two subroutines.
First, consider the reconfiguration into a bounded structure. W.l.o.g., we will bound the number of rows to . The idea is to iteratively merge rows with less than amoebots with neighboring rows. Each iteration proceeds as follows. We first pair a maximum number of adjacent rows such that each pair has at least one row with less than amoebots.
Then, we merge each pair of rows as follows. The merge consists of phases. In the first phase, each amoebot expands into the other row parallel to the -axis if the node is unoccupied (see Figure 7). Observe that the amoebots that are not able to expand form pairs (see the blue amoebots in Figure 7).
In the second phase, we iteratively move one amoebot of each of these pairs to the next unoccupied position in the row. W.l.o.g., consider the rightmost pair of amoebots and all expanded amoebots to the next unoccupied position to the right (see Figure 8). The idea is to construct an alternating chain from the pair of amoebots to the next unoccupied position. For that, we contract every second amoebot to its bottom node, ensuring the rightmost amoebot remains expanded. This construction guarantees that we can maintain connectivity within the amoebot structure since the participating amoebots can keep at least one bond to each of the initially adjacent nodes (see the gray nodes in Figure 8). Now, we can apply the tunneling primitive to move all amoebots to the right (see Lemma 1). Finally, we expand all contracted amoebots again. We continue with the next iteration if there is another pair of amoebots. Otherwise, we continue to the next phase.
In the third phase, we contract all expanded amoebots again (see Figure 9). This concludes the merge. We obtain the following lemma.
Lemma 8.
The Arbitrary2Bounded algorithm reconfigures a structure of Arbitrary into a structure of Bounded() in rounds.
Proof.
We first show that the algorithm does not cause any collisions. In the first phase, amoebots only expand into unoccupied nodes. In the second phase, amoebots only perform isolated handovers. In the third phase, we contract whole rows. Hence, neither phase can cause a collision. Since the algorithm does not cause any collisions, the correctness follows from the fact that there can be at most rows with at least amoebots.
Since we can pair all rows with less than amoebots (except for at most ), the number of rows with less than amoebots gets reduced by (approximately) . Therefore, after iterations, all rows have at least amoebots such that we terminate.
Each iteration consists of three phases. The first and third phase only consist of a single round, respectively. A single iteration of the second phase requires rounds: round to construct the alternating chain, rounds to apply the tunneling primitive (see Lemma 1), and round to expand the amoebots again.
It remains to bound the number of necessary iterations in the second phase. Since at least one row of each pair of rows has less than amoebots, there can only be at most many pairs of amoebots that cannot expand in the first phase. Therefore, we need at most iterations in the second phase. Overall, we require rounds.
Remark 9.
The second phase can be parallelized within each row. However, if all pairs of amoebots are next to each other, we can only tunnel the two outermost pairs at the same time. In the worst case, the parallelization can only speed up the second phase of the algorithm by a factor of . Therefore, the runtime does not improve asymptotically.
Second, consider the reconfiguration into a monotone structure. For that, we simulate the combing algorithm by Aloupis et al. [4]. We obtain the following lemma.
Lemma 10.
The Bounded2Histogram algorithm reconfigures a structure of Bounded() into a structure of Monotone in rounds.
Finally, the universal reconfiguration algorithm applies the Monotone2Line algorithm to reconfigure the monotone structure to a line segment (see Section 4). By combining Lemmas 8, 10, and 6, we obtain the following theorem.
Theorem 11.
The universal reconfiguration algorithm reconfigures a structure of Arbitrary into a structure of LineSegment in rounds.
6 Spirals
In this section, we present two algorithms to reconfigure a spiral into a line. In Section 6.1, we describe a simple algorithm that preserves the order of the amoebots within the spiral. Preserving the order may be interesting when the amoebots store information. In Section 6.2, we show a faster algorithm that only requires constant time.
6.1 Unrolling
In this section, we present our unrolling algorithm to reconfigure a spiral into a line while preserving the order of the amoebots. The algorithm iteratively removes corners by aligning the outermost segment to the next segment. For that, we simply apply the shearing primitive. We terminate once all corners were removed. We obtain the following theorem.
Theorem 12.
The unrolling algorithm reconfigures a structure of Spiral into a structure of LineSegment while preserving the order of the amoebots in rounds where denotes the number of corners.
Remark 13.
We cannot accelerate the algorithm by applying the shearing primitive on multiple segments in parallel because the number of shearing primitives the initially outermost segment has to participate in is linear in the number of corners. Furthermore, parallelization can lead to collisions.
6.2 Constant-Time Algorithm
In this section, we present our Spiral2LineSegment algorithm. We assume that the spiral consists of at least line segments. Otherwise, we resort to the unrolling algorithm which gives us a constant-time reconfiguration in this case. W.l.o.g., we assume that the spiral starts with a -segment, spirals outwards in a clockwise direction, and ends with a sufficiently long -segment. By sufficiently long, we mean that it is long enough to perform a parallelogram primitive if necessary (see below). We may perform up to iterations of the unrolling algorithm to enforce the latter assumption.
Similar to the universal reconfiguration algorithm, we go through a monotone structure. Hence, the algorithm starts with the Spiral2Monotone algorithm which reconfigures the spiral into a -monotone structure. The idea is to form a base line through the spiral which allows us to cut the “arcs” of the spiral without disconnecting the structure. In order to then obtain a monotone structure, we only need to align all segments that are not part of the base line, w.l.o.g., with the -axis. In the following, we explain both parts in more detail.
We first define a base line as follows (see Figure 10). We start with the first three innermost segments. From each left (right) corner, we go straight to the left (right) until we hit the next line segment if such line segment exists. From there, we go to the next left (right) corner of that line segment. If such a line segment does not exist, we stop the base line at the corner. Note that the base line is - and -monotone by construction.
In order to construct the base line, we need to fill the paths from the left (right) corners to the next line segments to the left (right). Observe that the remaining base line is already occupied by amoebots. The idea is to apply the parallelogram primitive on each hit line segment and its adjacent -segment in parallel. If the base line hits a corner, we can choose either incident line segment. However, the parallelograms may intersect with each other or may degenerate because the -segments are too short. To resolve these issues, we can apply the trapezoid primitive. We choose the starting point such that it becomes an acute corner of the parallelogram.
The base line allows us to disconnect each -segment (except for the innermost one, which is part of the base line) at one of its endpoints without disconnecting the amoebot structure. Note that some -segments could been reduced to a single amoebot. Similar to the triangle primitive (see Lemma 4), we will call all line segments that are not part of the base line “arms”. It remains to align the arms to the -axis with the shearing primitive. For this, we must first ensure that we have enough space to perform all applications of the primitive.
We start by aligning the -segments in the arms in the following phases (see Figure 11). In the first phase, we expand all amoebots on the base line connected to a -segment of an arm horizontally. In the second phase, we can apply the shearing primitive on each -segment. In the third phase, we contract all amoebots again.
Next, we align the -segments in the arms in the following phases (see Figure 12). In the first phase, we expand all left and right corners on the base line parallel to the -axis, and all corners in the arms parallel to the -axis. In the second phase, we can apply the shearing primitive on each -segment. In the third phase, we contract all amoebots again.
Lemma 14.
The Spiral2Monotone algorithm reconfigures a structure of Spiral into a structure of Monotone in rounds.
Theorem 15.
The Spiral2LineSegment algorithm reconfigures a structure of Spiral into a structure of LineSegment in rounds.
7 Open Problems
In this paper, we have shown how to reconfigure any structure into another in sublinear time. It is still open whether a polylogarithmic time universal reconfiguration algorithm is possible. One way to achieve this could be an algorithm that reconfigures a structure of Arbitrary into a structure of Bounded(), which would reduce the runtime of our universal reconfiguration algorithm to polylogarithmic time. Another way would be an algorithm that reconfigures a structure of Arbitrary into a structure of Rhombical for which we already know how to reconfigure it to any other structure of Rhombical in logarithmic time [5, 15]. We have also presented an algorithm that reconfigures a spiral into a line segment in constant time. It would be interesting to investigate which other classes of structures can be reconfigured into a line segment in constant time.
Furthermore, we left the design of distributed algorithms for future work. Recall that local communication between amoebots leads to a natural lower bound of , where is the diameter of the structure. Therefore, other ways of communication are required, e.g., the reconfigurable circuit extension [11] which enables fast global communication between amoebots. Previous work has shown that reconfigurable circuits enable polylogarithmic-time solutions to various stationary problems [6, 11, 16, 17]. Almalki et al. [1] were the first to leverage them for rapid, distributed transformations in the growth model. It is open whether they can also prove of use in the amoebot model with joint movements.
References
- [1] Nada Almalki, Siddharth Gupta, Othon Michail, and Andreas Padalkin. Efficient distributed algorithms for shape reduction via reconfigurable circuits. In SSS, volume 16350 of Lecture Notes in Computer Science, pages 40–55. Springer, 2025. doi:10.1007/978-3-032-11127-2_5.
- [2] Nada Almalki and Othon Michail. On geometric shape construction via growth operations. Theor. Comput. Sci., 984:114324, 2024. doi:10.1016/J.TCS.2023.114324.
- [3] Abdullah Almethen, Othon Michail, and Igor Potapov. Pushing lines helps: Efficient universal centralised transformations for programmable matter. Theor. Comput. Sci., 830-831:43–59, 2020. doi:10.1016/J.TCS.2020.04.026.
- [4] Greg Aloupis, Sébastien Collette, Mirela Damian, Erik D. Demaine, Robin Y. Flatland, Stefan Langerman, Joseph O’Rourke, Suneeta Ramaswami, Vera Sacristán Adinolfi, and Stefanie Wuhrer. Linear reconfiguration of cube-style modular robots. Comput. Geom., 42(6-7):652–663, 2009. doi:10.1016/J.COMGEO.2008.11.003.
- [5] Greg Aloupis, Sébastien Collette, Erik D. Demaine, Stefan Langerman, Vera Sacristán Adinolfi, and Stefanie Wuhrer. Reconfiguration of cube-style modular robots using parallel moves. In ISAAC, volume 5369 of Lecture Notes in Computer Science, pages 342–353. Springer, 2008. doi:10.1007/978-3-540-92182-0_32.
- [6] Matthias Artmann, Andreas Padalkin, and Christian Scheideler. On the shape containment problem within the amoebot model with reconfigurable circuits. In DISC, volume 356 of LIPIcs, pages 7:1–7:22. Schloss Dagstuhl – Leibniz-Zentrum für Informatik, 2025. doi:10.4230/LIPIcs.DISC.2025.7.
- [7] Joshua J. Daymude, Kristian Hinnenthal, Andréa W. Richa, and Christian Scheideler. Computing by programmable particles. In Distributed Computing by Mobile Entities, volume 11340 of Lecture Notes in Computer Science, pages 615–681. Springer, 2019. doi:10.1007/978-3-030-11072-7_22.
- [8] Joshua J. Daymude, Andréa W. Richa, and Christian Scheideler. The canonical amoebot model: algorithms and concurrency control. Distributed Comput., 36(2):159–192, 2023. doi:10.1007/S00446-023-00443-3.
- [9] Zahra Derakhshandeh, Shlomi Dolev, Robert Gmyr, Andréa W. Richa, Christian Scheideler, and Thim Strothmann. Brief announcement: amoebot - a new model for programmable matter. In SPAA, pages 220–222. ACM, 2014. doi:10.1145/2612669.2612712.
- [10] Zahra Derakhshandeh, Robert Gmyr, Thim Strothmann, Rida A. Bazzi, Andréa W. Richa, and Christian Scheideler. Leader election and shape formation with self-organizing programmable matter. In DNA, volume 9211 of Lecture Notes in Computer Science, pages 117–132. Springer, 2015. doi:10.1007/978-3-319-21999-8_8.
- [11] Michael Feldmann, Andreas Padalkin, Christian Scheideler, and Shlomi Dolev. Coordinating amoebots via reconfigurable circuits. J. Comput. Biol., 29(4):317–343, 2022. doi:10.1089/CMB.2021.0363.
- [12] Ferran Hurtado, Enrique Molina, Suneeta Ramaswami, and Vera Sacristán Adinolfi. Distributed reconfiguration of 2d lattice-based modular robotic systems. Auton. Robots, 38(4):383–413, 2015. doi:10.1007/S10514-015-9421-8.
- [13] Irina Kostitsyna, Cai Wood, and Damien Woods. Turning machines: a simple algorithmic model for molecular robotics. Natural Computing, 23(2):407–430, 2024. doi:10.1007/S11047-022-09880-8.
- [14] Manish Kumar, Othon Michail, Andreas Padalkin, and Christian Scheideler. Sublinear-time reconfiguration of programmable matter with joint movements. CoRR, abs/2603.10720, 2026. doi:10.48550/arXiv.2603.10720.
- [15] Andreas Padalkin, Manish Kumar, and Christian Scheideler. Reconfiguration and locomotion with joint movements in the amoebot model. Auton. Robots, 49(3):22, 2025. doi:10.1007/S10514-025-10204-9.
- [16] Andreas Padalkin and Christian Scheideler. Polylogarithmic time algorithms for shortest path forests in programmable matter. In PODC, pages 65–75. ACM, 2024. doi:10.1145/3662158.3662776.
- [17] Andreas Padalkin, Christian Scheideler, and Daniel Warner. The structural power of reconfigurable circuits in the amoebot model. Nat. Comput., 23(4):603–625, 2024. doi:10.1007/S11047-024-09981-6.
- [18] Daniela Rus and Marsette Vona. Crystalline robots: Self-reconfiguration with compressible unit modules. Auton. Robots, 10(1):107–124, 2001. doi:10.1023/A:1026504804984.
- [19] Tommaso Toffoli and Norman Margolus. Programmable matter: Concepts and realization. Int. J. High Speed Comput., 5(2):155–170, 1993. doi:10.1142/S0129053393000086.
- [20] Damien Woods, Ho-Lin Chen, Scott Goodfriend, Nadine Dabby, Erik Winfree, and Peng Yin. Active self-assembly of algorithmic shapes and patterns in polylogarithmic time. In ITCS, pages 353–354. ACM, 2013. doi:10.1145/2422436.2422476.
