Particle Computation: Permute an array of particles with 4 global moves

Given 2 rectangular permutations of n^2 particles, arranges obstacles to permute in 4 moves
ダウンロード: 399
更新 2014/2/18

ライセンスの表示

Program that permutes arranges obstacles on the plane to permute any given (ar*ac) matrix A into the (br*bc) matrix B. [ensure (ar*ac == br*bc)], where each element of A is assigned a destination in B.
Note that this is both a permutation (changing the order of pixels) and a reshaping of the matrix dimensions. There are (n!) permutations and (n) reshapes possible. You can reapply the permutation and (permutation power to get the identity.
This code also shows the history of each block by drawing a trace behind them.

Author: Aaron Becker, Summer 2013

ICRA video: http://youtu.be/mJWl-Pgfos0

Video output:
http://youtu.be/eExZO0HrWRQ

hardware version: http://youtu.be/3tJdRrNShXM

Companion to ICRA 2014 paper:
"Particle Computation: Designing Worlds to Control Robot Swarms with only Global Signals" by Aaron Becker, Erik D. Demaine, Sándor P. Fekete, James McLurkin

Paper Abstract—Micro- and nanorobots are often controlled by global input signals, such as an electromagnetic or gravitational field. These fields move each robot maximally until it hits a stationary obstacle or another stationary robot. This paper investigates 2D motion-planning complexity for large swarms of simple mobile robots (such as bacteria, sensors, or smart building material).
In previous work we proved it is NP-hard to decide whether a given initial configuration can be transformed into a desired target configuration; in this paper we prove a stronger result: the problem of finding an optimal control sequence is PSPACE-complete. On the positive side, we show we can build useful systems by designing obstacles. We present a reconfigurable hardware platform and demonstrate how to form arbitrary permutations and build a compact absolute encoder. We then take the same platform and use dual-rail logic to build a universal logic gate that concurrently evaluates AND, NAND, NOR and OR operations. Using many of these gates and appropriate interconnects we can evaluate any logical expression.

引用

Aaron T. Becker's Robot Swarm Lab (2024). Particle Computation: Permute an array of particles with 4 global moves (https://www.mathworks.com/matlabcentral/fileexchange/45538-particle-computation-permute-an-array-of-particles-with-4-global-moves), MATLAB Central File Exchange. 取得済み .

MATLAB リリースの互換性
作成: R2013a
すべてのリリースと互換性あり
プラットフォームの互換性
Windows macOS Linux
カテゴリ
Help Center および MATLAB AnswersParticle Swarm についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
バージョン 公開済み リリース ノート
1.1.0.0

Added commenting to m-file, made plot larger

1.0.0.0