The tilt model, proposed by Becker et al. , has foundations in classical robot motion planning. This model consists of a 2D grid of open and blocked spaces, called the “board”, along with a set of unit square pieces/tiles place at open board locations. A sequence of “tilts” push all the board pieces maximally in a specified cardinal direction. A sequence of such tilts transforms the initial board configuration into a new configuration. Some natural computational problems related to this model are those of occupancy, relocation, and reconfiguration. Occupancy is the problem of determining if there exists a sequence of tilts such that a specific, initially empty, board location may be occupied by a particle on the board. Relocation is the problem of whether a sequence of tilts exists to relocate a specific tile from location to location . Reconfiguration asks if a sequence of tilts exists to transform board configuration to board configuration ( where each configuration specifies the location of all tiles on the board). These problems were recently all shown to be PSPACE-Complete (in 4-directions) .
Here, we discuss a variant of this model (introduced in ) in which particles only move 1 step per tilt in the specified direction, rather than maximally. Figure 1 shows a simple example. We further consider these problems with limited usable directions (e.g. only tilting down and right), as well as considering the effect of limiting the complexity of the geometry of the open spaces of the board. For example, one limited type of geometry is that in which the open spaces form an “-monotone” shape.
1.1 Previous Work
The problems of Occupancy, Relocation, and Reconfiguration were first studied in  in the full tilt model. In this work, the authors showed NP-hardness for the Occupancy Problem. Soon after, the authors of  showed that finding the minimum move sequence for reconfiguring one configuration to another is PSPACE-Complete. Additional algorithmic, complexity, and logic work was done in . All of these results used only pieces. Later work in  relaxed the constraint on tile size and showed the Relocation and Reconfiguration Problems were PSPACE-Complete when only a single polyomino is allowed. Recent work strengthened these results and showed PSPACE-Completeness for all three problems even when only allowing pieces . Additional work has focused on the application of the tilt model for the assembly of general shapes [8, 10, 11], including universal constructors [2, 3], and sorting polyominoes .
1.2 Our Contributions
We inverstigate some natural questions related to these problems and seek to find simple versions that are still computationally intractable. We remove the requirement for tiles to slide maximally and focus on unit movements as in . In this model, the occupancy problem is solvable in polynomial time (Theorem 3.1), so we focus on the Relocation and Reconfiguration problems. We show intractability based on restricted directions for both reconfiguration and relocation. We show that the Relocation problem is NP-Complete even when limited to monotone board geometry (Theorem 5.1) and the Reconfiguration Problem is NP-Complete when limited to Connected boards (Theorem 6.1). A summary of our results are shown in Table 1.
|Relocation||2, 3||Monotone||NP-Complete||Thm. 5.1|
Board. A board (or workspace) is a rectangular region of the 2D square lattice in which specific locations are marked as blocked. Formally, an board is a partition of where denotes a set of open locations, and denotes a set of blocked
locations- referred to as “concrete.” We classify the different board geometries according to the following hierarchy:
Connected: A board where the set of open spaces is a connected shape.
Simple: A connected board is simple if has genus-0.
Monotone: A simple board where is either horizontally or vertically monotone.
Convex: A monotone board where is both horizontally and vertically monotone.
Rectangular: A convex board where is a rectangle.
Configurations. A configuration is an arrangement of tiles placed on open locations of a given board. Formally, a tile is a labeled unit square centered on a non-blocked point on a given board. A configuration consists of a board and a set of non-overlapping tiles that each do not overlap with the blocked locations of board .
Step. A step is a way to turn one configuration into another by way of a global signal that moves all tiles in a configuration one unit in a direction when possible without causing an overlap with a blocked position or another tile. Formally, for a configuration , consider the translation of all tiles in by 1 unit in direction . If no overlap with blocked board spaces occurs, then the new configuration is derived by first performing this translation. On the other hand, for each tile for which the translation causes an overlap with a blocked space, temporarily add these tiles to the set of blocked spaces and repeat. Once the translation induces no overlap with blocked spaces, execute the translation of the remaining non-blocked tiles to arrive at the new configuration. If all tiles are eventually marked as blocked spaces, then the step transition does not change the initial configuration.
We say that a configuration can be directly reconfigured into configuration (denoted ) if applying one step in some direction to results in . We define the relation to be the transitive closure of and say that can be reconfigured into if and only if , i.e., may be reconfigured into by way of a sequence of step transformations.
Step Sequence. A step sequence is a sequence of steps which can be inferred from a sequence of directions ; each implies a step in that direction. For simplicity,we often just refer to the sequence of directions from which that sequence was derived. Given a starting configuration, a step sequence corresponds to a sequence of configurations based on the step transformation. An example is shown in Fig. 1.
2.1 Problem Definitions
In this paper we consider the following three problems under the step transformation. In subsequent theorem statements we will state the complexity of these problems ”under the step transformation” to help compare these results with work done ”under the tilt transformation”.
Occupancy. The occupancy problem asks whether or not a given location can be occupied by any tile on the board. Formally, given a configuration and a coordinate , does there exist a such that where and that contains a tile with coordinate ?
Relocation. The relocation problem asks whether a specified tile can be relocated to a particular position. That is, given a configuration, a specific tile within that configuration, and a translation of that tile, does there exist a sequence of steps which moves the original tile to its translation?
Reconfiguration. The reconfiguration problem asks whether a configuration can be reconfigured into another. Formally, given two configurations and , does ?.
The occupancy problem under the step transformation is in P when using only tiles regardless of direction limitations. In particular, the problem is solvable in time, where denotes the number of positions on the input board .
Perform a breadth-first-search from the goal location to determine if any position containing a tile is reachable by way of a sequence of unit distance steps between north/south or east/west connected open locations. If no tiled position is reachable, the goal position is clearly not occupiable. If there is a reachable tile, consider the closet such tile. The shortest path connecting this tile to the goal location yields a tilt sequence that is guaranteed to place the tile at the goal, as the only way for it to be blocked would require another tile to move into position ahead of it along the shortest path, contradicting the claim that the first tile was the closest to the goal position. Thus, the occupancy problem can be solved in time. ∎
4 NP-Membership with Limited Directions
In this section we prove NP membership for the relocation and reconfiguration problems when restricting steps to two orthogonal directions. The directions we consider, south and east, can be defined as the set . Therefore, tiles can only move to a position that is south, east or southeast of the starting spot. We consider these directions since the case when the directions are opposite each other is solvable in polynomial time. For three directions we use west, south, and east, which can be represented by the set . The following will consider a configuration with tiles and a board of size .
Membership comes from the polynomial upper-bound on the length of a move sequence using limited directions.
For any two configurations and , if through a sequence of south and east steps, there exists a step sequence of length using only those two directions such that applying to results in .
Consider a tile at location in and at in , the maximum distance between and is . Any step that moves brings it closer to since must be to the south east of it’s starting location , if a step moves further away from than that step is not in since it would have moved to a location such that it can never reach . Now notice that each step must move at least one tile, and any step that moves a tile must move it closer to it’s position in . Since each tile can move at most and each step must move at least one tile, if can be reconfigured to then it will be able to do so in steps. ∎
For any two configurations and , if can be reconfigured to using only west, south, and east steps, there exists a step sequence of length using only those two directions such that applying to results in .
First let us consider the maximum number of south movements that can be made. Similar to above each south step moves at least tile further south so the maximum number of south steps that can be made is . Now considering the directions east and west, the maximum number of consecutive steps that can be made in one directions is . Any step can be undone by making a step in the opposite direction unless the first step changed the position of tiles relative to each other. However this only brings the maximum move sequence for east and west to be . Since the maximum move sequence before having to make a south step is and the maximum number of south steps is the maximum move sequence length is . ∎
When restricted to 2 or 3 directions, the Relocation and Reconfiguration problems under the step transformation are in NP.
5 Relocation with Limited Directions
In this section we detail a reduction from 3SAT to relocation in monotone boards using limited directions. We refer to the position the tile destined for relocation is initialized as location and the goal position as location . W.l.o.g, the directions used in the reduction are limited to and .
5.1 Relocation Preliminaries
We first describe the gadgets used for this reduction, as well as present some notation that we use throughout the section.
All of the gadgets discussed in this section are show in Figure 2. We will later describe how to construct a board by attaching gadgets together via their north (head) and south (foot) binding locations (depicted in blue). The relocation tile is located at position inside of the start gadget. The Assignment gadget is where tilts will correspond to variable assignments for our reduction. Every literal of a 3SAT formula has a corresponding Positive or Negative gadget, along with an associated tile that represents that literal. Location resides inside the Goal gadget, a gadget whose structure grows with respect to the number of variables . The area within the Goal gadget that grows based on is outlined in Figure 2. The Buffer and Notch gadget are utility gadgets discussed when needed.
Here we present the notation for describing the construction of a tilt board with the gadgets described above. We define as gadget ’s foot binding with gadget ’s head. A chain is defined as a sequence of gadgets , s.t. , , . It follows that a chain also has binding locations that allows it to bond with other chains or gadgets. We define as a sequence of chains s.t. , , . Similarly, we say the binding of two sequences of chains and yields another sequence of chains s.t .
The board consists of three sections: the assignment, formula, and validation section. The tile initialized at location within the assignment section is referred to as the relocation tile, the tiles inside the formula section are referred to as the literal tiles, and the tiles within the validation section are called the validation tiles. These board sections are all chains of the gadgets shown in Fig. 2.
The validation section is the sequence of gadgets where:
and , = with a validation tile allocated inbetween the head of every gadget.
For the set of clauses and set of variables , the clause chain of clause is the sequence where:
where if the literal is the variable , then if is a positive literal or if is a negative literal. The literal tile for literal is allocated inbetween the head of .
where if the literal is the variable , then if is a positive literal or if is a negative literal. The literal tile for literal is allocated inbetween the head of .
where if the literal is the variable , then if is a positive literal or if is a negative literal. The literal tile for literal is allocated inbetween the head of .
where , , and .
where , .
The formula section is therefore the sequence where every is a clause chain and , , ,
The assignment section is a sequence of chains where:
where and , . The relocation tile is initialized within the Start gadget, as depicted in Figure 2.
where , .
where and s.t , .
where = , and , .
The board is therefore the combination of the three sections where and .
The reduction can be understood as a two phase process. In the first phase variables are given a truth value one-by-one in ascending order for the set of variables . The second phase consists of verifying if the variable assignments from the first phase satisfied the clauses of the formula. Every clause chain is checked for any unconfined literal tiles, where if a clause chain confines at least one literal tile it is said to be satisfied, and unsatisfied otherwise. A satisfied clause chain can have up to two remaining unconfined literal tiles, where an unsatisfied clause will have three unconfined literal tiles. In order to identify satisfied and unsatisfied clauses, the remaining literal tiles are ‘counted’ by attempting to occupy two open spaces using the literal tiles in each of their respective clause chains. Attempting to occupy the two spaces with three literal tiles (e.g, an unsatisfied clause chain) will leave one literal tile unconfined which will be used to prevent relocation.
Starting with the board configuration described above, each variable in ascending order can be assigned some truth value by executing the step sequences depicted in Figure 3. During this phase, the relocation tile will visit every gadget inside the first chain of the assignment section if either one of the sequences depicted is executed for every variable truth assignment.
To ensure the step sequences depicted are the only ones executable during this phase, the validation tiles in the validation section will enter the Goal gadget one-by-one for every assignment in order to risk the unwanted occupancy of location with one of the validation tiles. The validation tiles must solely experience the step sequences depicted above, unless the validation tiles will enter the notch hallway towards location inexorably, as depicted in Figure 4. This relation between the relocation and validation tiles ensures that the two sequences depicted are the only ones performed during this phase.
All literal tiles visit every gadget of the chain it resides in for every clause chain (one of which is a Positive or Negative gadget) as the step sequence depicted above is performed. By design, the literal tiles reach a Positive or Negative gadget when its corresponding variable is next in the truth assignment procedure (Figure 5). After the last variable is assigned some truth value, every clause chain will confine at least one literal tile if the corresponding clause was satisfied, and zero literal tiles if it was not.
Immediately after the first phase the relocation tile will reside inside the second chain of the assignment section, whose structure consists of only Notch gadgets. The Notch gadget serves two functions in this phase, one of which is to forbid the movement in the direction when the relocation tile traverses through it. The first step in this phase is therefore to execute the step sequence until the relocation tile reaches the third chain, which simultaneously moves any unconfined literal tiles to the fourth chain of their respective clause chains.
Afterwards, the relocation and any unconfine literal tiles will reside inside the third and fourth chain, respectively, of their corresponding section/chain, as depicted in Figure 6. The last gadget of the fourth chain of every clause chain consists of a Notch gadget, whose function in this case is to provide two open spaces for the unconfined literal tiles from the clause chains. Moving the relocation tile through the third chain of the assignment section, each remaining literal tile will reach the last Notch gadget of their corresponding clause chain and fit in one of the two open spaces made by the Notch gadget, provided that the clause chain was satisfied. If a clause chain was unsatisfied, then the third literal like will not fit within the two open spaces provided by the Notch gadget, leaving it free to continue through the board. At this point, the relocation tile would have reached the fourth chain of the assignment section, which is composed entirely of Notch gadgets and whose length is equal to that of the length of the formula section plus the length of the validation section. Traversing the tile through the fourth chain will move any free literal tiles towards the validation section, blocking location . Therefore, if there exist at least one unsatisfied clause chain, there exists at least one unconfined literal tile inexorably pushed to occupy location whilst the relocation tile traverses through the architecture of the fourth chain of the assignment section. If there are no unsatisfied clause chains, it follows that there will be a direct path from the relocation tile to location on the board allowing its relocation there.
The relocation problem under the step transformation is NP-Complete on a monotone board when limited to two directions.
Membership in NP is described in Section 4. To show NP-Completeness, a reduction from 3SAT is detailed such to show relocation in monotone boards solves 3SAT. For a given 3SAT instance, a monotone board is designed such that the elements of the 3SAT instance are represented by corresponding elements of the monotone board. The elements of a given 3SAT instance consist of the set of clauses along with the literals that make up each individual clause. The literals of each clause are represented by individual tiles, which inhabit their pertaining clause chain. As stated above, the literals can be assigned some truth value by either confining the associated tile within its pertaining clause chain (e.g, assigning ) or keeping it unconfined (e.g, assigning ). The reduction can be understood as a two phase process:
Phase one. Starting with an initial board described in the previous section, the first phase consists of making variable truth assignments in ascending order for the set of boolean variables . Each variable can be given some truth value by performing either step sequence illustrated in Figure 3. Simultaneously, each individual literal tile in the clause chains will reach a corresponding Positive or Negative gadget exactly when the variable it equals is assigned some truth value. When assigning a variable to , the positive literals that equal that variable will become confined, whereas the negative literals that equal that variable will remain unconfined. Likewise, assigning a variable to keeps the positive literals unconfined and the negative ones confined. During this phase, the design of the validation section along with the inhabitant validation tiles restrict the available step sequences to that of the two previously mentioned. Given that the Goal gadget resides within the validation section, along with location of the board, the validation tiles risk occupying location unless either of the step sequences are performed during this phase. The restrictive nature of the validation section ensures that phase one of the reduction consists only of valid variable truth assignments.
Phase two. Afterwards, every clause chain assumes some satisfiability status by the quantity of confined literal tiles residing within them. During this phase, the number of unconfined literal tiles of each clause chain are ‘counted’ by the attempt to occupy two open spaces inside their corresponding clause chains with these literal tiles. A satisfied clause chain will confine at least one literal tile and leave at most two literal tiles unconfined. These two unconfined literal tiles are able to occupy the two open spaces, essentially removing them from the path to location from location . On the other hand, an unsatisfied clause yields one too many unconfined literal tiles for the two corresponding open spaces, causing one of the literal tile to remain within the path to location from location .
Following this two phase process, the tile initialized at location is relocatable to location on the board if every clause chain yielded at most two unconfined literal tiles after the first phase. During the second phase, these two unconfined literal tiles can be removed from the path from location to location , allowing access for the relocation tile to the targeted location on the board. Similarly, relocation becomes impossible when a clause chain produces three unconfined literal tiles after phase one since the attempt to relocate after the second phase will inexorably occupy location with one of the unconfined literal tiles. It follows that the relocation of the relocation tile initialized at location is possible if all clause chains were satisfied, which is possible only with a satisfying truth assignment to the set of variables. Moreover, if the boolean formula is not satisfiable, then some clause chains will always yield three unconfined literal tiles. The forward-progressing nature of the construction, along with the inability to store tiles in improper notches, means that the relocation tile can never be relocated to its goal position (because it is blocked). Therefore, for a given 3SAT instance relocation is possible if and only if the boolean formula is satisfiable. ∎
The relocation problem under the step transformation is NP-Complete on a monotone board when limited to three directions.
The inclusion of the third direction does not change the phases of the reduction though it allows for cycling between different board configurations reachable by and movements. During phase one, the validation section is used to restrict the step sequences available when assigning truth values to variables where the inclusion of the direction only adds the cycling between the choices of the step sequences (assigning or assigning ). Thus, adding the direction does not change the way variable truth assignments are performed. Moreover, the manner in which tiles traverse through the board remains functional since the movement in the direction simply reverts the board back to the configuration that was previously visited when a direction was performed. Thus, the phases of the reduction persist even with the third direction. ∎
6 Reconfiguration with Limited Directions
We now will take a look at the problem of reconfiguration on a connected board when limited to two orthogonal directions. We show that with these constraints the problem is NP-Complete under the step transformation. Without loss of generality we will be limiting the directions to south and east. In this section, we prove hardness with a reduction from 3SAT. The following subsections describe the gadgets used when constructing a tilt configuration from a 3SAT formula with variables and clauses.
6.1 Gadget Construction
In this subsection, we describe how to construct an instance of the reconfiguration problem from an instance of the 3SAT problem. We discuss this construction in terms of gadgets.
Each clause of the 3SAT formula will be represented by a clause gadget (depicted in Figure 7). This gadget consists of a top chamber in which variable tiles will be placed and a 1-wide gap that connects that chamber to a second bottom chamber. There will be a staircase that connects the lower chamber to a final reconfiguration zone, which contains the goal locations for the three variable tiles in the clause. The number of steps of the staircase will be a function of the current clause; so, the clause in the formula will have a staircase with steps.
For every variable , in every clause that it appears, we will place a corresponding variable tile in the top chamber of its respective clause gadget at position for every positive variable and for every negated variable. The goal locations of the tiles will be one in each of the notches. Without loss of generality, the goal locations will be in the reverse order from west to east that they start at in the top chamber. Figure 7 shows an example tile placement for a clause gadget.
South Limiter Gadget
Every instance of the reconfiguration problem obtained through this reduction will contain a single south limiter gadget (show in Figure 8). The purpose of this gadget is to limit the number of south steps that can be made in the reconfiguration step sequence. The height and width of this gadget will scale linearly to the number of variables in the 3SAT formula.
In the South Limiter gadget we place a tile at the northwest corner, and the goal location is the notch at the other end of the gadget. Figure 9 depicts tile and goal placement for this gadget.
South Forcer Gadget
Each instance will also have one south forcer gadget (shown in Figure 8). The purpose of this gadget is to enforce the proper timing of any south step made in the reconfiguration step sequence. The height and width of this gadget also scales linearly to the number of variables.
In the South Forcer gadget we place 2 tiles in a row for every distinct variable in the 3SAT formula on the west side of the gadget. The goal location of row is the eastmost side of the gap 8, in the same position relative to each other that they started in. Figure 9 depicts tile and goal placement for this gadget.
6.2 Gadget Functionality
Here, we discuss the relationship between our tilt reconfiguration and the 3SAT variable assignment, as well as the functionality of each of the gadgets presented in the previous subsection.
This reduction works by utilizing the uniform global signals to assign all variables a truth value simultaneously. To start the process of reconfiguration we will begin stepping east, uniformly shifting all variable tiles along the top chamber of the clause gadgets. When the eastmost variable tile is located above the assignment chamber, the choice of assigning that variable true can be made by performing step sequence , or false with the step sequence . A variable tile evaluates to true if it enters the assignment chamber. Since all variable tiles representing a particular variable share the same x-coordinate, all of these tiles will receive the same assignment.
South Forcer/Limiter Gadgets
The reconfiguration requirement of the south forcer gadget ensures that every variable must receive an assignment. The only way to place each tile-pair in their respective goal positions is to “assign” each of the variables a value of either true of false. The south limiter gadget ensures that only n assignments can be made, since doing more would position the gadget’s tile along the bottom edge of the gadget with no way of reaching its goal position. The combination of these gadgets prevents the possibility of assigning both a positive and negated variable tile, i.e. and , values of “true”. Once every variable tile has been assigned, the south limiter gadget’s tile will be in the post assignment zone (see Figure 9). In order to achieve the configuration goal inside that gadget, only east steps can be made until the tile is directly above its goal location. With global signals this causes all variables tiles to be pushed maximally to the east side of the top chamber of their respective clause gadget. Once the south limiter’s tile is above its goal location, a south step must be performed, since we are limited to only south and east, and an east step would make the south limiter’s tile pass its goal position.
A clause gadget is in its goal configuration when each of its variable tiles are in their goal locations at the bottom right of the gadget. A clause gadget will be unable to reach its goal configuration if no variable tiles make it through the assignment chamber (this is the equivalent to every literal of a 3SAT clause evaluating to false). If there are three variable tiles still in the top chamber of a clause gadget, a south step will place the west-most variable tile into the tile trap. This leaves the board unreconfigurable (see Figure 10). If at least 1 variable tile is passed into the assignment chamber, then the clause gadget will always be reconfigurable. From there the tiles can be moved to their respective staircase, where the varied number of steps allow for each tile to moved to its goal location individually.
6.3 Formal Proof
The reconfiguration problem under the step transformation is NP-Complete on a connected board when limited to two directions.
To show hardness for the reconfiguration problem under the step transformation, we reduce from 3SAT. Given a 3SAT formula consisting of variables and clauses, we construct a tilt configuration using the gadgets described in Section 6.1. We create a clause gadget for every clause in the 3SAT formula, as well as a single South Forcer Gadget and a single South Limiter Gadget. To make this a connected board these gadgets can be attached at their northwest corner without affecting their functionality.
First, we argue that the instance of the reconfiguration problem obtained through this reduction is solvable if the respective 3SAT formula is solvable. This follows from the variable assignment paragraph in Section 6.2. Given a certificate containing the truth values that satisfy the 3SAT formula, start the reconfiguration by stepping east. When variable tile is up for assignment, i.e., the positive variable tile representing is above the assignment chamber, a step sequence can be input if the variable is being set true, and a step sequence if the variable is to be assigned false. Since the certificate contains a valid solution to the 3SAT formula, then at least one tile in every clause will evaluate to true (following the functionality section), meaning all clause tiles can be placed in their goal locations. Furthermore, the tiles in the south limiter gadget and the south forcer gadget will reach their goal positions via the standard variable assignment.
Next, we argue that the respective 3SAT problem is solvable if the obtained instance of the reconfiguration problem has a solution. This direction relies on the functionality of the South Limiter and South Forcer gadgets, as well as the clause verification discussed in Section 6.2. We define as the distance between the westmost variable tile ( or if it exists) and the assignment chamber. We observe the distance from the tile in the south limiter gadget to its goal location is greater than . Only n south steps can be input before the south limiter gadget’s tile is above its goal location. Every variable tile assignment requires a south step, and once the south limiters gadget’s tile is above its goal location, all variable tiles are no longer assignable. Thus, we can only give an assignment to n variable tiles. The issue remains that we can assign both a positive and negated variable tile, i.e. and , and skip the assignment of some other variable tile . The south forcer gadget ensures this can not happen by requiring south steps to be made at certain times in order to satisfy the reconfiguration requirements. This restriction ensures that each variable must receive a a true or false assignment.
Thus, the generated instance of the reconfiguration problem is solvable if and only if the given 3SAT formula is solvable. Along with Thm. 4.3, it follows that the problem is NP-Complete when limited to two directions. ∎
7 Conclusion and Future Work
In this paper we investigated the Occupancy, Relocation, and Reconfiguration problems in an extremely limited variation of the tilt model. We discovered that even with these limitations, the problems of Relocation and Reconfiguration were still NP-Complete under the step transformation. Future work may focus on pushing the limitations even further; possibly considering relocation and/or reconfiguration of a rectangular board.
-  (2019) Relocation with uniform external control in limited directions. In The Japan Conference on Discrete and Computational Geometry, Graphs, and Games, JCDCGGG, pp. 39–40. Cited by: §7.
-  (2020) Hierarchical shape construction and complexity for slidable polyominoes under uniform external forces. In Proceedings of the 2020 ACM-SIAM Symposium on Discrete Algorithms, SODA 2020, Salt Lake City, UT, USA, January 5-8, 2020, pp. 2625–2641. External Links: Cited by: §1.1, §1.
-  Full tilt: universal constructors for general shapes with uniform external forces. In Proceedings of the Thirtieth Annual ACM-SIAM Symposium on Discrete Algorithms, pp. 2689–2708. External Links: Cited by: §1.1.
-  (2013-11) Massive uniform manipulation: controlling large populations of simple robots with a common input signal. In 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vol. , pp. 520–527. External Links: Cited by: §1.2, §1.
-  (2014) Reconfiguring massive particle swarms with limited, global control. In Algorithms for Sensor Systems, Berlin, Heidelberg, pp. 51–66. External Links: Cited by: §1.1, §1.
-  (2014-05) Particle computation: designing worlds to control robot swarms with only global signals. In Proceedings of the IEEE International Conference on Robotics and Automation, ICRA’14, pp. 6751–6756. External Links: Cited by: §1.1.
-  (2019-12) Particle computation: complexity, algorithms, and logic. Natural Computing 18, pp. 181–201. Cited by: §1.1.
-  (2018-08-03) Tilt assembly: algorithms for micro-factories that build objects with uniform external forces. Algorithmica. External Links: Cited by: §1.1.
-  (2018-10) On designing 2d discrete workspaces to sort or classify polynminoes. In 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Vol. , pp. 1–9. External Links: Cited by: §1.1.
-  (2017-10) Parallel self-assembly of polyominoes under uniform control inputs. IEEE Robotics and Automation Letters 2 (4), pp. 2040–2047. External Links: Cited by: §1.1.
-  (2018) Efficient parallel self-assembly under uniform control inputs. IEEE Robotics and Automation Letters 3, pp. 3521–3528. Cited by: §1.1.