The nature of the Extended Analog Computer

https://doi.org/10.1016/j.physd.2008.03.041Get rights and content

Abstract

This paper defines the relationship between Rubel’s Extended Analog Computer (EAC) model and Indiana University’s implementation of it, a fundamental distinction that is necessary to understand the design, implementation, operation, and applications of the EAC. Beginning with the detailed structure of the current EAC, its method of computing is illustrated with diagrams and three applications. Next, the Δ-digraph, a labeled directed graph, is introduced to show how unconventional and conventional computers relate nature, mathematics and computer architecture. The Δ-digraph defines the paradigms of analogy and algorithm, illustrates how applications for the EAC are analogies developed by choosing the semantics for a machine configuration, and suggests how partial differential equations might be compiled to EAC configurations (a difficult problem compared to compiling a digital computer program, and one that is still not solved). The Δ-digraph also distinguishes between the EAC’s explicit functions (whose operation is defined in the structure of its components) and implicit functions (whose operation is inherent in the properties of matter and energy). Brief case studies show how industry and academia are adopting the EAC. The paper closes with topics and open questions for future research.

Introduction

Rubel’s view of the Extended Analog Computer. The Extended Analog Computer (EAC) originated in Bush’s differential analyzer and Shannon’s General-Purpose Analog Computer (GPAC). The EAC was developed by Rubel to support his idea that the brain is an analog computer by addressing the problem that many functions of the brain could not be modeled with a GPAC [37].1 Rubel also believed that no single device could implement the EAC in its entirety. Rather, he envisioned many problem-specific devices, each implementing a specific analogy: “Since the EAC is so broad, [we can never implement it] in practice, but one can build up a large array of devices that handle many cases…heat-conduction devices for dealing with Laplace’s equation…devices that form soap films for solving the minimal-surface equation…the wave equation will be dealt with via vibrating strings and membranes” [23].

Rubel repeatedly emphasized that the EAC was a conceptual machine. While the components derived from the GPAC had physical implementations, as did some of the added functions (the “inversion black box” and the “boundary-value problem black box”), Rubel did not define analog implementations for the rest of the EAC’s black boxes, including the “differential boxes”, the “restricted limit box” and the “analytic continuation” box. The “extremely well-posed” (EWP) property was not a component, but a requirement to ensure that the EAC was a deterministic machine in the presence of small errors. To deal with the question of implementation, Rubel wrote: “…this problem can perhaps be avoided by imagining digital devices that simulate the EAC’s different black boxes, but this raises problems that we will not go into here”. Thus, Rubel believed that the EAC was “an ideal paradigm, more to be striven after than to be fully achieved” [23]. Nowhere did Rubel explain how a specific device, such as a soap film computing a minimal-surface problem, could be built using realizations of the black boxes of the EAC model. Rubel was a mathematician, not an engineer. Most computer scientists regarded the EAC as a machine that was theoretically impossible (or at least unlikely) to be built until the author’s work became more widely known. Rubel himself was the first person to encourage the author to design and build an EAC.2

The EAC is a new computing paradigm. Experience has led the author to believe that the EAC is a new paradigm, but not one necessitating a paradigm shift according to Kuhn [41]. For example, logic programming was a new paradigm for digital computers that implemented programs as Horn clauses. Interestingly, the programming language Prolog has similarities to the EAC because its operational semantics are “invisible”. The Prolog programmer must learn that the unification and depth-first left–right search govern how the Horn clauses are executed. This proves confusing when reading one’s first Prolog program. The confusion is greater when the EAC is encountered for the first time. Potential users wonder how and why it works, how applications are created (and why no compilers have been developed for it) and, recently, what we might learn from the EAC about the nature of computation. These questions are of general interest because people in many fields are finding naturally-occurring information processes that are not digital.

The EAC implementation versus the EAC model. It is important to distinguish between implementations of the EAC, and Rubel’s mathematical model of the EAC. An EAC implementation is physical, tangible, and, as implemented at Indiana University, includes some components that do not appear to perform any computation at all. The EAC model contains functions–“black boxes”–that do not directly map to the EAC implementation. In fact, the EAC implementation appears to have omitted many of them. Relating the model and the implementation is a major goal of this paper. To avoid confusing the two, in the rest of this paper any EAC implementation will be called an “EAC” or “EAC implementation”, while Rubel’s description of the EAC will be referred to as “the EAC model”. The two are not identical, nor does any EAC, including the one in this paper, explicitly implement all functions (“black boxes”) of the EAC model.

The structure of this paper. This paper is divided into sections that the author believes best explain the EAC implementation and its relationship to the EAC model. Section 2 gives more detail on what the EAC is and is not, briefly discussing several models that students and colleagues initially used until they fully understood it. Sections 3 An electronic implementation of Rubel’s EAC model, 4 The visible components of the EAC present Indiana University’s electronic implementation of the EAC model, and its components as a first-time user would see them. Section 5 gives a summary of the Lukasiewicz logic arrays (LLAs), shows how an LLA retina was the precursor to the conductive sheet and defines the 27 Lukasiewicz logic functions that are complete over the truth values {0,1/2,1}. Section 6 shows how control and data values are routed through the EAC to configure it, and once configured, how a physical computation is performed. Section 7 presents three applications, and explains how an EAC computation is a combination of a configuration and a semantics chosen by the user. Sections 8 Motivation for and derivation of the, 9 Describing analogy with the, 10 Comparing the paradigms of algorithm and analogy introduce the Δ-digraph, a diagrammatic tool to understand the relationship between nature, the EAC model and the EAC implementation. The Δ-digraph illustrates how the computing paradigms of analogy and algorithm differ, and why an EAC computation viewed only as a physical process is incomplete–meaningless–in the absence of a specific analogy. Sections 11 Implicit and explicit functions, 12 Explicit functions of the EAC model and their EAC implementations, 13 Implicit functions of the EAC model and their EAC implementations introduce the concepts of implicit and explicit functions in the EAC implementation, illustrating the relationship of the EAC to the EAC model. Section 14 gives an overview of data encodings, their precision, the computational complexity and the performance of the EAC implementation, and introduces the concept of the semantic barrier. Finally, Sections 15 The EAC and the diffusion of innovation, 16 The future of the EAC discuss the current state of adoption of the EAC in academia and industry, and suggest directions for future research.

Section snippets

What the EAC implementation is, and is not

What the EAC is. In general, the EAC is a family of devices that compute specific functions by analogy: heat-conduction devices, soap films, vibrating strings and membranes, etc., to which unconventional computing researchers have added plasmas, slime mold, neural tissue, DNA and so forth [30]. All of these connect a user’s problem to a natural object that solves it by means of a specific analogy. The EAC model defines a group of components, but not all can be directly implemented. It took

An electronic implementation of Rubel’s EAC model

The current implementation of Rubel’s Extended Analog Computer model (EAC) is the result of over a decade’s research [1], [2], [3], [9], [34]. Note that the EAC model will be related to the EAC implementation in Sections 11 Implicit and explicit functions, 12 Explicit functions of the EAC model and their EAC implementations, 13 Implicit functions of the EAC model and their EAC implementations after presenting some important concepts; however, the reader may wish to review these sections before

The visible components of the EAC

(Note that the EAC inFig. 2, Fig. 3, Fig. 7, Fig. 8is oriented so that the host computer would be on its right as shown inFig. 1(a). The upperside of the board is on the right. The underside is to the left of it, as if the board was flipped over along a vertical axis on its left edge.)

The present EAC (a research prototype, version R002) is constructed with a two-sided motherboard protected by Plexiglas sheets. When the protective sheets are removed (Fig. 2(b)), the five-by-five input/output

Lukasiewicz logic arrays

Lukasiewicz logic arrays (LLAs) were the precursors to the conductive sheet, and are also used in the EAC to provide GPAC computability. They were originally implemented as analog circuits, although the present EAC emulates the basis set of twenty-seven Lukasiewicz logic functions digitally.

Lukasiewicz logic was originally defined as a logic of possibility. It is a member of a family (or gaggle) of sub-structural logics explored by Dunn [57], which includes Zadeh’s original fuzzy logic as a

The operation of the visible components of the EAC

The EAC is configured, not programmed. A series of commands are sent to the EAC to establish a configuration, which consists of the data inputs (current sources and sinks that are applied to the conductive foam) and data outputs (all of the output points attached to the conductive foam are measured constantly, but some outputs may be processed through a Lukasiewicz logic function; if so, these points must be assigned the desired function during the configuration process). The EAC begins

Three EAC applications

The previous section revealed that the EAC contains no program memory in which an algorithm is stored to perform general computations. The onboard microprocessor stores the configuration data, not a program, although in the present research prototype the Lukasiewicz logic functions are emulated by the microprocessor. This choice was made to see if other, more useful functions ought to be provided. So far, none have been discovered, although this could change as more applications are explored.

Motivation for and derivation of the Δ-digraph

The Δ-digraph illustrates the connection between nature, mathematics and computer architectures. It explains how computation by analogy using the EAC and other natural computers differs from the algorithmic computations of conventional digital computers.

The Δ-digraph originated in a difficult question, “How are partial differential equations compiled to the Extended Analog Computer?” The first application of the EAC, butterfly wing pattern morphogenesis, was designed by manually translating

Describing analogy with the Δ-digraph

The computing paradigm analogy defines a specific relationship binding a computer architecture directly to nature, as shown in this Δ-digraph (Fig. 16).

The example illustrates the relationships between the butterfly wing, the partial differential equations, and the EAC, as shown earlier in Fig. 11 without the Δ-digraph. The explicit parts of the analogy are drawn with a heavy black line, the implicit relationships in gray. The Δ-digraph has an equational form, which, for the example in Fig. 16,

Comparing the paradigms of algorithm and analogy

The paradigm algorithm for butterfly wing pattern morphogenesis is expressed using the Δ-digraph shown in Fig. 19. The explicit relationships in this example are shown in heavy black, the implicit relationships in gray.

The paradigms of algorithm differs from analogy because once an algorithm is programmed, it can ignore the structure, properties and materials of the digital computer on which it runs. However, an algorithmic computing device must be explicitly “instructed” to perform each

Implicit and explicit functions

As we have seen, the only visible form of a specific analogy is a configuration of the EAC, that is, a set of inputs, outputs and Lukasiewicz logic functions assigned to a topology of the conductive sheet (more complex analogies may need multiple EACs to discretize a system too complex to “fit” onto a single sheet). Many of the operations and “black boxes” of Rubel’s EAC model appear to be missing from the EAC. Some operations may be ascribed easily to a visible component, such as the

Explicit functions of the EAC model and their EAC implementations

The general structure of the EAC is based on Rubel’s EAC model [23] (Fig. 25).

Levels and 1/2 levels. The EAC model is composed of levels (and within each level a 1/2 level) that implement increasingly complex Cω functions. Where, and if so at what level, the EAC implementation loses analyticity and stops producing Cω functions is an open question; however, without such a bound the EAC would, in principle, be able to take unrestricted limits and thus according to Rubel, be “no ‘computer’ at all” 

Implicit functions of the EAC model and their EAC implementations

The remaining functions of the EAC model are implicit functions of the EAC implementation. The Δ-digraph, particularly its ability to represent semantic levels (which are not the same as the levels in the EAC model) was developed to understand how the implicit functions contributed to the computation of a specific analogy, how they could be increased or diminished in the course of a computation, and how they are related to the processes and materials of nature. In this paper, the functions of

Encoding, precision, computational complexity and the semantic barrier

Since the EAC computes using the paradigm analogy, with its operation based on the laws of physics constrained by its configuration, and a meaning ascribed to it that completes the specific analogy, several questions arise:

  • 1.

    Is there additional computation “hidden” that occurs when the EAC configuration is encoded in the machine?

  • 2.

    What is the precision of an EAC computation, as opposed to a single input or output value?

  • 3.

    Do the semantics of the configuration lead to a different concept of

The EAC and the diffusion of innovation

Everett Rogers defined the stages by which an innovation “diffuses” into society [50]. According to his model, the EAC is now in “early adoption”. Five examples illustrate applications for which the EAC was considered, adopted, or is currently being evaluated. To preserve privacy and intellectual property rights, the specific details of the applications and the identity of the adopters are not given.

Spall detector for ceramic impeller (1992). A military agency needed a replacement for a spall

The future of the EAC

The EAC model was related to the EAC implementation, a basis for understanding lacking for many years. This was motivated by questions about how the EAC works, and how to create applications for it. As we have seen, the components are simple, as is its operation. However, the EAC uses a fundamentally different paradigm of computation, which is foreign to users of today’s familiar digital computers. The Δ-digraph simplifies understanding of the EAC’s operation, and the semantics of its

Acknowledgements

This work was supported by a grant from the Leverhulme Trust, and a sabbatical from Indiana University. The University of the West of England and Indiana University–Bloomington are deeply thanked for all of their support.

Many people have contributed to this research since 1989. My thanks go to Andrew Adamatzky for his friendship and the Leverhulme Trust grant nomination, Bryce Himebaugh for designing and building the EAC, Christof Teuscher for the invitation to UC’07 in Santa Fe and his

References (60)

  • J. Tucker et al.

    Computability of analog networks

    Theoret. Comput. Sci.

    (2007)
  • L.A. Rubel

    The Extended Analog Computer

    Adv. Appl. Math.

    (1993)
  • A. Vergis et al.

    The complexity of analog computation

    Math. Comput. Simul.

    (1986)
  • J. Mills, Kirchhoff–Lukasiewicz Machines, Internal Research Note, Indiana University, 1995. (This note is available...
  • J.W. Mills et al.

    Lukasiewicz Logic Arrays

  • J. Mills et al.

    CMOS VLSI Lukasiewicz Logic Arrays

  • J.W. Mills

    Area-Efficient Implication Circuits for Very Dense Lukasiewicz Logic Arrays

  • B. Himebaugh, Design of EAC, 2005....
  • R. Varick, Building tools for the analog researcher: An interaction design challenge, Senior Research Project Report,...
  • R. Feynman

    The Character of Physical Law

    (1967)
  • D. Bohm

    Causality and Chance in Modern Physics

    (1957)
  • J. Mills, Polymer Processors, in: 2nd Int. Symp. Non-Silicon Computation,...
  • A. Adamatzky, From reaction-diffusion to Physarum computing, Physica D (2007) (submitted for...
  • J. Mills, B. Himebaugh, et al., Empty space computes: The evolution of an unconventional supercomputer, in: Proc. ACM...
  • G. Kirchhoff

    Flow of electric current through a plane, particularly through a circular disk

    Ann. Phys. Chem.

    (1845)
  • W. Karplus

    Analog Simulation

    (1958)
  • R. Abbott

    If a tree casts a shadow is it telling the time?

  • R. Feynman

    Simulating Physics with Computers

    Int. J. Theoret. Phys.

    (1982)
  • B. MacLennan, Field Computation: A theoretical framework for massively parallel analog computation, Parts I–IV,...
  • S. Harding, J. Miller, E. Reitman, Evolution in materio: Exploiting the physics of materials for computation, 2006....
  • G. Bekey et al.

    Hybrid Computation

    (1968)
  • J.F. Costa, J. Mycka, What lies beyond the mountains? Computational systems beyond the Turing limit, Technical report,...
  • F. Nijhout

    Development and Evolution of Butterfly Wing Patterns

    (1991)
  • A. Turing

    Morphogenesis

    (1992)
  • H. Siegelmann, E. Sontag, On the computational power of neural nets, in: Proc. Fifth ACM Workshop on Computational...
  • R. Landauer

    Wheeler’s meaning circuit?

    Foundations Phys.

    (1986)
  • R. McNaughton

    A theorem about infinite-valued sentential logic

    J. Symbolic Logic

    (1950)
  • R. Eberhart, 2007, personal...
  • J. Mills, The continuous retina: Image processing with a single-sensor artificial neural field network, in: Proc. IEEE...
  • R. Pierret

    Semiconductor Fundamentals

    (1988)
  • Cited by (47)

    • Machines that perform measurements

      2022, Theoretical Computer Science
      Citation Excerpt :

      How can we connect the digital computer (modeled as a Turing machine) and the analogue device or the oracle (e.g., modeled as a scatter machine)? Indeed, a lot has been written on this subject (see, for example, [20], [34] and [41]). The arguments so far developed do not differ substantially from the classical analogue-digital protocol that we can find in Hybrid Computation.

    • Towards plant wires

      2014, BioSystems
      Citation Excerpt :

      Since its inception in 1980s the field of unconventional computation (Calude et al., 1998) became dominated by theoretical research, including quantum computation, membrane computing and dynamical-systems computing. Just a few experimental laboratory prototypes are designed so far (Adamatzky and Teuscher, 2006), (Teuscher and Adamatzky, 2005), e.g. chemical reaction–diffusion processors (Adamatzky et al., 2005), extended analogue computers (Mills, 2008), micro-fluidic circuits (Fuerstman et al., 2003), gas-discharge systems (Reyes et al., 2002), chemo-tactic droplets (Lagzi et al., 2010), enzyme-based logical circuits (Katz and Privman, 2010; Privman et al., 2009), crystallisation computers (Adamatzky, 2009), geometrically constrained chemical computers (Sielewiesiuk and Gorecki, 2001; Motoike and Yoshikawa, 2003; Gorecki et al., 2009; Yoshikawa et al., 2009; Górecki and Górecka, 2006), molecular logical gates and circuits (Stojanovic et al., 2002; Macdonald et al., 2006). In contrast, there are hundreds if not thousands of papers published on quantum computation, membrane computing and artificial immune systems.

    • Designing complex dynamics in cellular automata with memory

      2013, International Journal of Bifurcation and Chaos
    • The Nature of Physical Computation

      2022, The Nature of Physical Computation
    • Reservoir Computing in Material Substrates

      2021, Natural Computing Series
    View all citing articles on Scopus
    View full text