Dr. Strangestuff Or - Computer Science

advertisement
Dr. Strangestuff
Or: How I learned to stop programming and love carbon foam
Research Fellow and 2007
Leverhulme Trust Professor
University of the West of England
Bristol BS16 1QY
United Kingdom
Jonathan W. Mills
Associate Professor
Computer Science
Indiana University
Bloomington, IN 47405
United States of America
Visiting Researcher
The Courant Institute
New York University
New York, NY 20002
United States of America
Organization of This Talk
• The People
• Digital vs. Analog Computers
• The Extended Analog Computer (EAC)
• Implementations of the EAC
• A Few Applications
• Protein Structure Prediction
• Embedding Deutsch’s Problem in the EAC
• New Kinds of Computers!
The People
Lee A. Rubel
Rubel first described the
extended analog computer
(EAC) in 1993 to overcome
limitations of Shannon’s
general purpose analog
computer (GPAC). Aside
from some correspondence
with Mills, it was his only
publication about the EAC.
Lee A. Rubel (1928-1995)
Primary EAC Research Team
Bryce Himebaugh (left) designs the EACs that Mills (right)
uses to conduct real and gedanken computing experiments.
“Second String” EAC Research Team
This team performs “acoustic experiments” at Arcosanti, AZ.
Digital vs. Analog Computers
What Is a Computer?
A computer is any physical object that can be reconfigured to solve
multiple problems, that is, to answer many different questions.
(If it cannot be reconfigured, and can answer only one question, it is not
a computer according to this definition, but it may be an experiment.)
Algorithm (digital) compared to Analogy (analog)
From Mills, The Nature of the EAC, Physica D (2008)
Another View of the EAC Paradigm Analogy
Mills, The Nature of the EAC, Physica D (2008)
Feynman questioned an apparent limit
of digital computers (Algorithm):
“It always bothers me that, according to the laws
[of physics] as we understand them today, it takes a
[digital] computing machine an infinite number of
logical operations to figure out what goes on in no
matter how tiny a volume of space, and no matter
how tiny a region of time.”
He also said, “There’s a lot of room at the bottom.”
Feynman was using the paradigm algorithm
But by following the paradigm analogy to its logical conclusion, the laws
of physics as we understand them comprise the “instruction set” of an EAC.
Bulk and minimally structured matter form its computational components.
The EAC takes advantage of Feynman’s “… room at the bottom.”
Computational Paths of algorithm and analogy
The Extended Analog
Computer (EAC)
Basic EAC Model
An extended analog computer implements an analogy, explicitly
using physical laws and implicitly using mathematical principles to
compute. It is implemented as a continuous-valued, inherently
parallel, reconfigurable processor with two “instruction” classes:
solve-partial-differential-equation, and
compute-piecewise-linear-function.
Operating Principles
Physics
Mathematics
Conservation Laws
Abstract Objects
mass, energy, charge, time, information
Symmetries in Physical Law
translation in space, translation in time,
rotation in space, velocity (relativity),
replacement of atoms and charge carriers
variables, constants, metric spaces
Operators
arithmetic, inversion, ordinary and
partial differentiation, substitution
Pauli Exclusion Principle
Principles
“pruning” principle prevents exponential
growth in number of states to be computed
limits, analytic continuation, extremely
well-posed determinism (EWP),
quantum non-determinism (Q-box)
Dualities
• Turing machine
• Extended Analog Computer
• Algorithms
• Analogies
• 1D von Neumann bottleneck
• Inherently sequential
• Fixed internal precision
that increases temporally
• Explicit pseudo-randomness
• 2D/3D Non-von bottleneck
• Inherently parallel
• Fixed external precision
that increases spatially
• Implicit randomness
• Silicon, GaAs
• Transistors
• Increasingly error prone
as devices get smaller
• Anything conductive
• Diodes, surfaces, solids
• Implicitly error tolerant
via structure and matter
Liberation from von Neumann, Moore and Backus
• No von Neumann bottleneck (no CPU-cache-memory path)
• No “memory wall” (no computational memory)
• Single EACs are inherently parallel (no internal CPU pipelines)
• Moore’s Law irrelevant (computational “devices” in sheet are atoms)
• EAC “CPU” is robust (no logic gates, transistors or memory cells)
• Multiple EACs are composed functionally (no side-effects)
• Scalable parallelism (may be multi-unit pipelines, MIMD, or mixed)
• “Software” is reusable (physical laws and given materials are invariant)
Digital 1D versus EAC 2D Bottlenecks
Digital multi-core processor
Extended Analog Computer
The Benefit of Noise
Electromagnetic interference in the EAC can create a noisy gradient
when small currents are input. It generates sequences of random
numbers, which digital computers cannot produce (they compute
pseudo-random numbers). Noise is useful in some applications
(Monte Carlo methods; simulated annealing, genetic algorithms).
Pauli Pruning
“Envelope” of
possible paths
Probable paths
An actual path
The Pauli Exclusion Principle means that natural computers do not have to
compute all possible states to obtain a result. The drawback is that the output,
although it may be completely accurate, is probabilistic and not certain. This
phenomenon has been observed in the output of Lukasiewicz logic arrays.
Inherent Fault Tolerance
The sheets are fault tolerant because current flows adaptively in
conductive materials, as this experiment demonstrates.
The LLAs are error-reducing, resisting errors due to their structure as binary trees.
(An Information-theoretic Analysis of Lukasiewicz Logic Arrays, Montante, 1994)
Implementations of the EAC
Early EACs
“Sponge Bob,” September 2004 to present
1995
(can be manipulated over the web at
http://cgi.cs.indiana.edu/~bhimebau/eac.cgi)
“Sponge Bob Marley,” a 3D Jell-O® EAC
Prototype for injection molded & laser-polymerized 3D processors
USB Carbon Foam EAC with Digital Host
October 2005 to present
EAC Architecture Block Diagram
Host Data Is Converted to Continuous EAC Inputs
Once “inside” the interface, computation is continuous
EAC Results Discretized and Sent Back to the Host
Recurrent computations “inside” the interface remain continuous
A Few Applications
Three Ways to Configure the EAC
• Design an EAC configuration by inspection, using
similar properties in each system to create an analogy
• Use an evolutionary algorithm, such as Particle
Swarm Optimization, to evolve the configuration in a
high-order dimensional space
• Use sensor feedback and simulated annealing to freeze
a minimal result out of an “energy space;” this may be
combined with either of the first two techniques
Silicon Retina: Alternative to Mead & Koch
conductive
sheet
sensor/processor
Lukasiew icz
logic arrays
(LLAs)
ring diode
analog
inputs
analog
outputs
digital LLA address bus
digital LLA configuration bus
Originally built in 1995, this design established structure for recent EACs
It also established a fundamental application technique: sense (or generate)
and recognize, which is useful for many problems other than vision
Nortel, Canada : Fast DDoS Detector
This simplified model learned an “alphabet” of router traffic patterns to spot DDoS attacks
Siemens, People’s Republic of China:
Ordinary Differential Equations
The intended application integrates an ODE to model a system that the
EAC retina “watches” to yield intelligent and adaptive feedback control.
Protein Structure Prediction
Too Complicated!
Ricin, a simple toxic lectin
Back to Organic Chem 101
Valine (hydrophobic)
Asparagine (hydrophilic)
Start by Modeling Coarse Spatial Structure
Valine (hydrophobic)
Rotation Models are “Slices”
Each pair is a spatial
slice of the “shape”
along the backbone of a
protein. How do their
sidechains interact to
model the protein’s
folded structure?
Add Another EAC Level to Model van der Waals Forces
Two levels interact through Lukasiewicz logic functions to reach an
energy minimum between parts of protein. Scalability of EAC allows it
to “zoom” in or out to model atoms, molecular groups or side chains.
Behavior Can Be Observed As 2D Map of Slice
Attract
Attract
Repel
Structure Prediction Needs More Layers
This EAC architecture was named “The Torte” after the rich European layer cake,
due its alternating layers of conductive sheets and Lukasiewicz logic functions.
Particle Swarm Using EAC Outputs Evolves Low-Energy Structure
Particle Swarm Optimization Process
1. Initialize population in hyperspace.
2. Evaluate fitness of individual particles.
3. Modify velocities based on previous best and
global (or neighborhood) best.
4. Terminate on some condition.
5. Go to step 2.
Features of Particle Swarm Optimization
• Population initialized by assigning random positions and velocities;
potential solutions are then flown through hyperspace (think of a swarm
of bees whose center of mass seeks the global optimum, although all bees
contribute to it, no one “bee” may be at the optimal point).
• Each particle (“bee”) keeps track of its best (highest fitness) position in
hyperspace.
– This is called “pbest” for an individual particle
– It is called “gbest” for the best in the population
– It is called “lbest” for the best in a defined neighborhood
• At each time step, each particle (“bee”) stochastically accelerates toward
its pbest and gbest (or lbest—good for protein folding).
• When the center of mass does not vary within some epsilon over a predetermined number of iterations, a set of particle properties (“the bee
swarm”) has been found that defines the potential global optimum.
PSO Velocity Update Equations
• Global version:
vid  wi vid  c1rand () pid  xid   c2 Rand () pgd  xid 
xid  xid  vid
Where d is the dimension, c1 and c2 are positive constants,
rand and Rand are random functions, and w is the inertia
weight. For neighborhood version, change pgd to pld.
PSO has been found to work very well with the EAC
Manual Demonstration of PSO
Final Native Conformation of Artificial Protein
Embedding Deutsch’s Problem
in the EAC
Joint work with Cristian Calude, University of Auckland, NZ
Deutsch’s Problem
Quantum Solution
Classical Solution in Complex Plane
The “black box” for f(x) is never seen by the user. Instead one of the
four “embedding function boxes” is provided, upon which only a
single measurement may be made. Do classical functions exist that
emulate Deutsch’s solution with quantum superposition? Yes.
Classical Solution with Lukasiewicz Logic
f(x) balanced
f(x) constant
f(x) balanced
Classical Solution with Conductive Sheet
f(x) constant
f(x) constant
Classical Solution with Conductive Sheet
f(x) balanced
f(x) balanced
New Kinds of Computers!
Model of Hybrid Classical-Quantum Computer
This computer might be able to crack codes faster than a digital
computer, although it would be slower than a quantum computer.
Graphenes have potential to build
hybrid classical-quantum computers
• Easily integrated with silicon substrates
• Continuous and multi-valued (no ADCs at low precision)
• Sheet resistance easily adjusted
• Other sheet properties can be varied locally
• Quantum properties (hybrid quantum-classical architectures)
• Optical, mechanical and chemical sensor inputs
• Large-scale structures fabricated suited to EACs
• 3D layered devices already demonstrated
Example Graphene Hybrid Classical-Quantum EAC
Thank you!
Download