Table of Contents
Fetching ...

Building a Nest by an Automaton

Jurek Czyzowicz, Dariusz Dereniowski, Andrzej Pelc

TL;DR

The paper studies constructing a nest from bricks on an unknown, infinite grid using a robot modeled as a deterministic finite automaton. It introduces the concepts of a rough disc and a marker to maintain connectivity while bricks are moved, and defines a sequence of procedures—sweeping, search walks, backtracking, and disc extension—to iteratively grow a compact structure containing all bricks. The main contribution is a universal automaton that builds a nest from any initial connected field of size $z$ and span $s$ in time $O(sz)$, with a proven $\,\Omega(sz)\,$ lower bound, establishing optimality. This work demonstrates that finite automata can perform optimal structure-building tasks in unknown environments and opens avenues for understanding parallelization and the classes of target structures achievable by a single automaton.

Abstract

A robot modeled as a deterministic finite automaton has to build a structure from material available to it. The robot navigates in the infinite oriented grid $\mathbb{Z} \times \mathbb{Z}$. Some cells of the grid are full (contain a brick) and others are empty. The subgraph of the grid induced by full cells, called the field, is initially connected. The (Manhattan) distance between the farthest cells of the field is called its span. The robot starts at a full cell. It can carry at most one brick at a time. At each step it can pick a brick from a full cell, move to an adjacent cell and drop a brick at an empty cell. The aim of the robot is to construct the most compact possible structure composed of all bricks, i.e., a nest. That is, the robot has to move all bricks in such a way that the span of the resulting field be the smallest. Our main result is the design of a deterministic finite automaton that accomplishes this task and subsequently stops, for every initially connected field, in time $O(sz)$, where $s$ is the span of the initial field and $z$ is the number of bricks. We show that this complexity is optimal.

Building a Nest by an Automaton

TL;DR

The paper studies constructing a nest from bricks on an unknown, infinite grid using a robot modeled as a deterministic finite automaton. It introduces the concepts of a rough disc and a marker to maintain connectivity while bricks are moved, and defines a sequence of procedures—sweeping, search walks, backtracking, and disc extension—to iteratively grow a compact structure containing all bricks. The main contribution is a universal automaton that builds a nest from any initial connected field of size and span in time , with a proven lower bound, establishing optimality. This work demonstrates that finite automata can perform optimal structure-building tasks in unknown environments and opens avenues for understanding parallelization and the classes of target structures achievable by a single automaton.

Abstract

A robot modeled as a deterministic finite automaton has to build a structure from material available to it. The robot navigates in the infinite oriented grid . Some cells of the grid are full (contain a brick) and others are empty. The subgraph of the grid induced by full cells, called the field, is initially connected. The (Manhattan) distance between the farthest cells of the field is called its span. The robot starts at a full cell. It can carry at most one brick at a time. At each step it can pick a brick from a full cell, move to an adjacent cell and drop a brick at an empty cell. The aim of the robot is to construct the most compact possible structure composed of all bricks, i.e., a nest. That is, the robot has to move all bricks in such a way that the span of the resulting field be the smallest. Our main result is the design of a deterministic finite automaton that accomplishes this task and subsequently stops, for every initially connected field, in time , where is the span of the initial field and is the number of bricks. We show that this complexity is optimal.

Paper Structure

This paper contains 15 sections, 11 theorems, 10 figures, 5 algorithms.

Key Result

Proposition 2.1

Any rough disc is a nest.

Figures (10)

  • Figure 1: (a) disc of size $z_r$ for $r=3$; (b) a rough disc of size $z_r+7$ and span $2r+1$, $r=3$; (c) a rough disc of size $z_r+11$ and span $2r+2$, $r=3$
  • Figure 2: An example of a search walk $\mathcal{W}=(w_1,\ldots,w_{20})$ that is constructed by the robot initially located at $w_1$ and facing North. This search walk is left-oriented, and has three left-free segments $S_1=(w_1,w_2,w_3)$, $S_3=(w_8,w_9,w_{10})$, $S_5=(w_{11},w_{12})$ and three right-free segments $S_2=(w_3,\ldots,w_8)$, $S_4=(w_{10},w_{11})$, $S_6=(w_{12},\ldots,w_{20})$.
  • Figure 3: The field from Figure \ref{['fig:search-walk']} after switch-traversal of the search walk from Figure \ref{['fig:search-walk']}. The cells $w_6,w_7,w_9,w_{13},w_{15}$ and $w_{16}$ are the break points at which the robot moves a brick from a cell $f_i$ to $e_i$ for $i\in\{1,\dots,6\}$. Note that a brick is moved from $f_2$ to $e_2$ while traversing the second segment and then the same brick is moved to $e_3$ while traversing the third segment.
  • Figure 4: The field from Fig. \ref{['fig:switch-traversal']} at the end of shifting. The shifting ends with a right-free segment, at the cell $w_{16}$ because it has a full neighbor, the cell $e_6$. There is one fewer brick than in Fig. \ref{['fig:switch-traversal']} and this is the free brick obtained and carried by the robot.
  • Figure 5: (a)-(c) illustrates the case when the cell $c'$ in Lemma \ref{['lem:shifting']}\ref{['it:shifting:shift-component']} is empty: (a) shows the robot traversing the penultimate segment after which, in (b), a switch-traversal of the last segment $(s_1,\ldots,s_8)$ is completed, and (c) depicts the field at the end of shifting. Note that in this case $c'=c_l=c_5'$. (d)-(f) illustrates the case when $c'$ is full: (d) and (e) again depict the switch-traversal of the last two segments, and (f) shows the field at the end of shifting. In this case $c'=c_l=c_6'$ and this cell belongs to the penultimate segment of the search walk. During the traversal of the last segment no switch occurred. As we will prove, the two latter properties are always satisfied together.
  • ...and 5 more figures

Theorems & Definitions (22)

  • Proposition 2.1
  • proof
  • Proposition 2.2
  • proof
  • Theorem 3.1
  • Lemma 4.1
  • proof
  • Lemma 4.2
  • proof
  • Lemma 4.3
  • ...and 12 more