Seth Copen Goldstein

Seth Copen Goldstein
Carnegie Mellon University | CMU · Computer Science Department

Ph.D.

About

179
Publications
15,758
Reads
How we measure 'reads'
A 'read' is counted each time someone views a publication summary (such as the title, abstract, and list of authors), clicks on a figure, or views or downloads the full-text. Learn more
8,504
Citations
Introduction
Skills and Expertise
Additional affiliations
September 1996 - present
Carnegie Mellon University
Position
  • Professor (Associate)

Publications

Publications (179)
Conference Paper
Full-text available
Among the diversity of the existing modular robotic systems, we consider in this paper the subset of distributed modular robotic ensembles composed of resource-constrained identical modules that are organized in a lattice structure and which can only communicate with neighboring modules. These modular robotic ensembles form asynchronous distributed...
Chapter
Modular robots form autonomous distributed systems in which modules use communications to coordinate their activities in order to achieve common goals. The complexity of distributed algorithms is generally expressed as a function of network properties, e.g., the number of nodes, the number of links and the radius/diameter of the system. In this pap...
Article
Full-text available
In this paper, we propose the Modular Robot Time Protocol (MRTP), a network-wide time synchronization protocol for modular robots (a class of distributed embedded systems) with neighbor-to-neighbor communications and potentially low-precision clocks. Our protocol achieves its performance by combining several mechanisms: central time master election...
Conference Paper
Full-text available
Modular robots form autonomous distributed systems in which modules use communications to coordinate their activities in order to achieve common goals. The complexity of distributed algorithms is generally expressed as a function of network properties, e.g., the number of nodes, the number of links and the radius/diameter of the system. In this pap...
Conference Paper
Full-text available
Modular self-reconfigurable robots are composed of independent connected modules which can self-rearrange their connectivity using processing, communication and motion capabilities, in order to change the overall robot structure. In this paper, we consider rolling cylindrical modules arranged in a two-dimensional vertical hexagonal lattice. We prop...
Conference Paper
Many distributed algorithms require a specific role to be played by a leader, a single node in the system. The choice of this node often has a direct impact on the performance. In particular, selecting a central node as the leader can significantly improve algorithm efficiency. Classical distributed algorithms require global information about the c...
Article
Declarative programming has been hailed as a promising approach to parallel programming since it makes it easier to reason about programs while hiding the implementation details of parallelism from the programmer. However, its advantage is also its disadvantage as it leaves the programmer with no straightforward way to optimize programs for perform...
Conference Paper
Declarative programming has been hailed as a promising approach to parallel programming since it makes it easier to reason about programs while hiding the implementation details of parallelism from the programmer. However, its advantage is also its disadvantage as it leaves the programmer with no straightforward way to optimize programs for perform...
Conference Paper
Full-text available
In this paper, we propose the Modular Robot Time Protocol (MRTP), a network-wide time synchronization protocol for modular robots. Our protocol achieves its performance by combining several mechanisms: central time master election, low-level time-stamping and clock skew compensation using linear regression. We evaluate our protocol on the Blinky Bl...
Article
The analysis, simulation and experimental fabrication of three-dimensional (3D) cylindrical tubes formed from 2D aluminium/silicon dioxide (Al/SiO2) substrates are presented. The photolithographically fabricated planar Al/SiO2 substrates bend under residual mechanical stress after release, self-assembling into 3D cylindrical tubes. They present an...
Conference Paper
Full-text available
Modular robots are composed of many independent connected modules which are able to achieve common goals through communications. Many distributed algorithms have better performance if the modules that have to communicate with all the others, are placed at the center of the system. In this paper, we propose ABC-Center, an iterative algorithm for ele...
Article
Microelectromechanical systems (MEMS) research has, until recently, focused mainly on the engineering process, resulting in interesting products and a growing market. To fully realize the promise of MEMS, the next step is to add embedded intelligence. With embedded intelligence, the scalability of manufacturing will enable distributed intelligent M...
Technical Report
Full-text available
The following report describes our work on clock synchronization protocol for embedded systems in the project COordination and COmputation in Distributed Intelligent MEMS (CO 2 Dim) [2] led by the Optimization, Mobility, NetworkIng (OMNI) team at Femto-ST. CO 2 Dim is a partnership project with the Institute for Research in IT and Random Systems (I...
Article
MEMS microrobots are miniaturized electro-mechanical elements, made using the techniques of micro-fabrication. They have limited energy capacity and low memory space. Self-reconfiguration is required for MEMS microrobots to complete their mission and/or to optimize their communication. In this paper, we present a self-reconfiguration protocol from...
Conference Paper
Linear Meld is a concurrent forward-chaining linear logic programming language where logical facts can be asserted and retracted in a structured way. In Linear Meld, a program is seen as a database of logical facts and a set of derivation rules. The database of facts is partitioned by the nodes of a graph structure which leads to parallelism when n...
Article
Full-text available
We have designed a new logic programming language called LM (Linear Meld) for programming graph-based algorithms in a declarative fashion. Our language is based on linear logic, an expressive logical system where logical facts can be consumed. Because LM integrates both classical and linear logic, LM tends to be more expressive than other logic pro...
Article
As externally powered microsystems become more common, designers need better tools to understand power delivery systems such as non-resonant capacitive coupling. In this paper we present the first general method which allows a designer to easily model power delivery through capacitive coupling. The method uses a power iteration technique which allo...
Conference Paper
Full-text available
Microelectromechanical systems (MEMS) research has, until recently, focused mainly on the engineering process, resulting in interesting products and a growing market. To fully realize the promise of MEMS, the next step is to add embedded intelligence. With embedded intelligence, the scalability of manufacturing will enable distributed intelligent M...
Article
Full-text available
In this paper, we formalize locally distributed predicates, a concept previously introduced to ad- dress specific challenges associated with modular robotics and distributed debugging. A locally distributed predicate (LDP) is a novel construction for representing and detecting distributed prop- erties in sparse-topology systems. Previous work on LD...
Conference Paper
In this paper we present an energy efficient control and power conversion circuit in a 1 μm HV SOI CMOS for a sub-millimeter robot known as a catom. The circuit provides power delivery through capacitive coupling and generates an internal high voltage that is then used to charge electrostatic actuation electrodes that move the robot. The architectu...
Article
We are on the verge of realizing a new class of material that need not be machined or molded in order to make things. Rather, the material forms and re-forms itself according to software programmed into its component elements. These self-reconfiguring materials are composed of robotic modules that coordinate with each other locally to produce globa...
Conference Paper
A major impediment to understanding programmable matter is the lack of an existing system with sufficiently many modules of sufficient capabilities. In this paper we describe the requirements of physically distributed ensembles and discuss the use of the distributed programming language Meld to program ensembles of these units. We demonstrate a new...
Conference Paper
The prismatic cube style of modular robot is a promising design for realizing self-reconfigurable 3D lattices. Cubic lattices with prismatic transitions simplify many aspects of the hardware and planning control needed for reconfiguration. Despite much research on how cubic modules can coordinate to reconfigure, until now these transitions have not...
Conference Paper
Full-text available
LDP (Locally Distributed Predicates) is a distributed, high-level language for programming modular reconfigurable robot systems (MRRs). In this paper we present the implementation of two motion-planning algorithms in LDP, and analyze both their performance and ease of implementation. We present multiple variations of one planner, including a novel...
Conference Paper
As the size of the modules in a self-reconfiguring modular robotic system shrinks and the number of modules increases, the flexibility of the system as a whole increases. In this paper, we describe the manufacturing methods and mechanisms for a 1 millimeter diameter module which can be manufactured en masse. The module is the first step towards rea...
Article
Full-text available
Wireless power transfer via magnetic resonant coupling is experimentally demonstrated in a system with a large source coil and either one or two small receivers. Resonance between source and load coils is achieved with lumped capacitors terminating the coils. A circuit model is developed to describe the system with a single receiver, and extended t...
Article
Full-text available
Internal localization, the problem of estimat- ing relative pose for each module (part) of a modular robot is a prerequisite for many shape control, locomotion, and actuation algorithms. In this paper, we propose a robust hierarchical approach that uses normalized cut to identify dense subregions with small mutual localization error, then progressi...
Conference Paper
Full-text available
We address how to write programs for distributed computing systems in which the network topology can change dynamically. Examples of such sys- tems, which we call ensembles, include programmable sensor networks (where the network topology can change due to failures in the nodes or links) and modu- lar robotics systems (whose physical configuration...
Article
In this article, we describe the hardware and software challenges involved in realizing claytronics, a form of programmable matter made out of very large numbers-potentially millions-of submillimeter-sized spherical robots. The goal of the Claytronics Project is to create ensembles of cooperating submillimeter robots, which work together to form dy...
Article
Register allocation is a fundamental part of any optimiz-ing compiler. Effectively managing the limited register re-sources of the constrained architectures commonly found in embedded systems is essential in order to maximize code quality. In this paper we deconstruct the register allocation problem into distinct components: coalescing, spilling, m...
Conference Paper
Full-text available
In this paper we develop a theory of metamodules and an associated distributed asynchronous planner which generalizes previous work on metamodules for lattice-based modular robotic systems. All extant modular robotic systems have some form of non-holonomic motion constraints. This has prompted many researchers to look to metamodules, i.e., groups o...
Conference Paper
This paper describes our experience in using modern Web 2.0 architecture, lightweight Python frameworks, and rapid prototyping to create an AI rostering and workforce management system to help prepare for the 2008 Beijing Olympic Equestrian Events, which ...
Conference Paper
Full-text available
We present a technique to automatically synthesize heterogeneous asynchronous pipelines by combining two different latching styles: normally open D-latches for high performance and self-resetting D-latches for low power. Theformer is fast but results in high power consumption due to data glitches that leak through the latch when it is open. The lat...
Conference Paper
Full-text available
We present a high-level language for programming modular robotic systems, based on locally distributed predicates (LDP), which are distributed conditions that hold for a connected subensemble of the robotic system. An LDP program is a collection of LDPs with associated actions which are triggered on any subensemble that matches the predicate. The r...
Article
Full-text available
Distributed systems frequently exhibit properties of interest which span multiple entities. These properties cannot easily be recognized from any single entity, but can be readily detected by combining the knowledge of multiple entities. Testing for distributed properties is especially important in debugging or verifying software for modular robots...
Conference Paper
Instruction selection is a key component of code generation. High quality instruction selection is of particular importance in the em- bedded space where complex instruction sets are common and code size is a prime concern. Although instruction selection on tree ex- pressions is a well understood and easily solved problem, instruc- tion selection o...
Conference Paper
Full-text available
ABSTRACT We present a system-level technique to analyze the impact of de- sign optimizations on system-level timing dependencies. This tech- nique enables us to speed up the design cycle by substituting, in the design the loop, the time-consuming simulation step with a fast timing update routine. As a result, we can significantly reduce the design...
Conference Paper
We define operation chaining (op-chaining) as an optimization problem to determine the optimal pipeline depth for balancing performance against energy demands in pipelined asynchronous designs. Since there are no clock period requirements, asynchronous pipeline stages can have non-uniform latencies. We exploit this fact to coalesce several stages t...
Conference Paper
A simple and robust inter-module latch is possibly the most important component of a modular robotic system. This paper describes a latch based on electric fields and capacitive coupling. Our design provides not only significant adhesion forces, but can also be used for inter-module power transmission and communication. The key insight presented in...
Conference Paper
Distributed reconfiguration is an important problem in multi-robot systems such as mobile sensor nets and metamorphic robot systems. In this work, we present a scalable distributed reconfiguration algorithm, hierarchical median decomposition, to achieve arbitrary target configurations. Our algorithm is built on top of a novel distributed median con...
Conference Paper
Full-text available
This paper presents Meld, a programming language for modular robots, i.e., for independently executing robots where inter-robot communication is limited to immediate neighbors. Meld is a declarative language, based on P2, a logic- programming language originally designed for programming overlay networks. By using logic programming, the code for an...
Conference Paper
Full-text available
One of the primary impediments to building ensembles of modular robots is the complexity and number of mechanical mechanisms used to construct the individual modules. As part of the Claytronics project - which aims to build very large ensembles of modular robots - we investigate how to simplify each module by eliminating moving parts and reducing t...
Conference Paper
Spatial computing (SC) offers the potential for large improvements in performance and energy efficiency. Many proposed architectures have harnessed these benefits for small kernels. The Tartan architecture attempts to harness these advantages for entire general-purpose applications executing spatially. Previous work on Tartan had a configure-once m...
Conference Paper
Full-text available
Tightly-coupled multi-agent systems such as modular robots frequently exhibit properties of interest that span multiple modules. These properties cannot easily be detected from any single module, though they might readily be detected by combining the knowledge of multiple modules. Testing for distributed conditions is especially important in debugg...
Conference Paper
Future deep sub-micron technologies will be characterized by large parametric variations, which could make asynchronous design an attractive solution for use on large scale. However, the investment in asynchronous CAD tools does not approach that in synchronous ones. Even when asynchronous tools leverage existing synchronous tool flows, they introd...
Conference Paper
An effective method for focusing optimization effort on the most important parts of a design is to examine those elements on the critical path. Traditionally, the critical path is defined at the RTL level, as the longest path in the combinational logic between clocked registers. In this paper, we present a system-level timing analysis technique to...
Conference Paper
Full-text available
Asynchronous circuits are increasingly attractive as low power or high-performance replacements tosynchronous designs. Akey part of these circuits are asynchronous micropipelines; unfortunatelly, the existing micropipeline styles either improve performance or de- crease power consumption, but not both. Very often, the pipeline register plays a cruc...
Article
Electronic Design Automation (EDA) in the nano era faces a fresh set of challenges. Designs are getting larger and more complex, and design metrics are evolving from area and performance in the past to power and reliability in the future. In this changing landscape, the ITRS roadmap notes that it is imperative that we raise the level of abstraction...
Conference Paper
Full-text available
Spatial Computing (SC) has been shown to be an energy-efficient model for implementing program kernels. In this paper we explore the feasibility of using SC for more than small kernels. To this end, we evaluate the performance and energy efficiency of entire appli- cations on Tartan, a general-purpose architecture which integrates a reconfigurable...
Conference Paper
Stalls, due to mis-matches in communication rates, are a major performance obstacle in pipelined circuits. If the rate of data production is faster than the rate of consumption, the resulting design performs slower than when the communication rate is matched. This can be remedied by inserting pipeline buffers (to temporarily hold data), allowing th...
Article
Spatial Computing (SC) has been shown to be an energy-efficient model for implementing program kernels. In this paper we explore the feasibility of using SC for more than small kernels. To this end, we evaluate the performance and energy efficiency of entire applications on Tartan, a general-purpose architecture which integrates a reconfigurable fa...
Article
Spatial Computing (SC) has been shown to be an energy-efficient model for implementing program kernels. In this paper we explore the feasibility of using SC for more than small kernels. To this end, we evaluate the performance and energy efficiency of entire applications on Tartan, a general-purpose architecture which integrates a reconfigurable fa...
Conference Paper
Full-text available
Abstract, Motion planning for a self-reconfigurable robot involves coordinating the movement and connectivity of each of its homogeneous modules. Reconfiguration occurs when the shape of the robot changes from some initial configuration to a target configuration. Finding an optimal solution to reconfiguration problems involves searching the space o...
Article
We show how the global critical path can be used as a practical tool for understand-ing, optimizing and summarizing the behavior of highly concurrent self-timed circuits. Traditionally, critical path analysis has been applied to DAGs, and thus was constrained to combinatorial sub-circuits. We formally define the global critical path (GCP) and show...
Conference Paper
This paper describes a global progressive register allocator, a register allocator that uses an expressive model of the register allocation problem to quickly find a good allocation and then progressively find better allocations until a provably optimal solution is found or a preset time limit is reached. The key contributions of this paper are an...
Article
A major obstacle to successful high-level synthesis (HLS) of large-scale application-specified integrated circuit systems is the presence of memory accesses to a shared-memory subsystem. The latency to access memory is often not statically predictable, which creates problems for scheduling operations dependent on memory reads. More fundamental is t...
Conference Paper
Full-text available
We describe a novel shape formation algorithm for ensembles of 2-dimensional lattice-arrayed modular robots, based on the manipulation of regularly shaped voids within the lattice ("holes"). The algorithm is massively parallel and fully distributed. Constructing a goal shape requires time proportional only to the complexity of the desired target ge...
Conference Paper
Stalls, due to mis-matches in communication rates, are a major per- formance obstacle in pipelined circuits. If the rate of data production is faster than the rate of consumption, the resulting design performs slower than when the communication rate is matched. This can be remedied by inserting pipeline buffers (to temporarily hold data), al- lowin...
Article
Full-text available
Abstract—We,describe a debugging,tool for modular,robotics that introduces,the concept,of distributed,watchpoint,triggers. This technique can initiate debugging actions (system halt, global snapshot, logging, etc.) in an ensemble of robots based on temporal, physical, and logical conditions distributed over multiple,robots. Our technique,is specifi...
Conference Paper
Arbitrary memory dependencies and variable latency memory systems are major obstacles to the synthesis of large-scale ASIC systems in high-level synthesis. This paper presents SOMA, a synthesis framework for constructing Memory Access Network (MAN) architectures that inherently enforce memory consistency in the presence of dynamic memory access dep...
Conference Paper
This paper describes a novel approach to powering a radical type of microrobot. Our long-term aim is to enable the construction of ensembles of millions of coordinated near-spherical, submillimeter microrobots. Both the large number of potential simultaneous neighbors of each robot (12) and the difficulty of fine actuation at such small scales prec...
Conference Paper
Full-text available
In this paper we explore the relationship between power and area. By exploiting parallelism (and thus using more area) one can reduce the switching frequency allowing a reduction in V<sub>DD</sub> which results in a reduction in power. Under a scaling regime which allows threshold voltage to increase as V<sub>DD</sub> decreases we find that dynamic...
Article
In the past 50 years, computers have shrunk from room-size mainframes to lightweight handhelds. This fantastic miniaturization is primarily the result of high-volume nanoscale manufacturing. While this technology has predominantly been applied to logic and memory, it's now being used to create advanced microelectromechanical systems using both top-...
Article
Full-text available
Technologies are now emerging to construct molecular-scale electronic wires and switches using bottom-up self-assembly. This opens the possibility of constructing nanoscale circuits and memories where active devices are just a few nanometers square and wire pitches may be on the order of ten nanometers. The features can be defined at this scale wit...
Article
Full-text available
Researchers are using nanoscale technology to create microrobot ensembles for modeling 3D scenes.
Conference Paper
Register allocation is one of the most important optimizations a compiler performs. Conventional graph-coloring based register allocators are fast and do well on regular, RISC-like, architectures, but perform poorly on irregular, CISC-like, architectures with few registers and non-orthogonal instruction sets. At the other extreme, optimal register...