In this paper we investigate control of a large swarm of mobile particles
(such as robots, sensors, or building material) that move in a 2D workspace
using a global input signal, e.g., provided by gravity or a magnetic field.
Upon activation, each robot moves in the same direction, maximally until it
hits a stationary obstacle or another stationary robot. In a workspace with
only simple exterior boundaries, this system model is of limited use because
it has only two controllable degrees of freedom—all robots receive the same
inputs and move uniformly. We show that adding a maze of obstacles to the
environment can make the system drastically more complex and more useful.

We prove that it is NP-hard to decide whether a given initial configuration
can be transformed into a desired target configuration, if we are given a
fixed set of stationary obstacles. On the positive side, we provide
constructive algorithms to design workspaces that efficiently implement
arbitrary permutations between different configurations.