From: szabo@techbook.com (Nick Szabo)
Newsgroups: sci.nanotech
Subject: AI & Nanotech
Date: 21 Nov 92 02:28:39 GMT


In _Engines of Creation_, Drexler spent quite a bit of
time on the importance of AI, but since then his work
has focused mostly on the mechanical aspects of
nanosystems.  AI, or more broadly a-life and computer
science in general, remains an important part of bringing
about a future of abundance, both in its own right and
in helping make nanosystems a reality.

We all must prune our search trees somewhere.  Drexler
is now concentrating on the mechanical aspects of nanotech.  
A number of important topics are up to the rest of us to 
solve, to wit:

* Intermediate advances in biotech, lithography, etc.
* The actual design for a self-replicating universal 
  (or at least very flexible) constructor.  We want
  flexibility among a number of areas, including 
  shapes, materials, assemblies, etc. This is any 
  extremely tough problem, with few working on it.
* Control mechanisms and/or circuitry.  Once we get to
  the nanoscale our normal control circuitry becomes
  quite cumbersome.  The controllers for AFMs and STMs
  dominate the device.
* How to handle the complexity of a design with millions
  of moving parts.  Compilers are a good model for 
  mechanical design generation, but so are expert systems, 
  search/learning algorithms, etc.  There are also a wide
  variety of weird techniques used in silicon and software
  compilers themselves.

I like many went into computer science mainly for "AI", but I've
found having a wider scope in computer science, a-life, and
technology in general to be more productive than traditional AI.  
I see a large number of potential breakthrough apps:

* The application of search/learning techniques like genetic algorithms
  (see below), simulated annealing, neural nets, etc.  Layering of
  these techniques, eg subsumption architecture.
* Non-anthropomorphic robots.  It is doubtful that the human limbs
  are anywhere near optimal for most tasks.  Drexler gives the example 
  of the Stewart platform, and Hans Moravec the Christmas Bush.  Another 
  example, of which I wish I had more details, is an IBM electromagnetically 
  levitated "arm" that can do various kinds of circuit board assembly 
  and/or soldering operations with an accuracy of 500 nm.  I envision
  a future levitated tool performing operations in five or more 
  degrees of freedom with Mhz frequency.  Yet more examples: automatically 
  guided vehicles (AGVs) and CNC machinery in general: programmable lathes, 
  mills, presses, lasers, etc.

Most combinations of the above probably haven't been tried yet:
Stewart platforms and CAM machinery with subsumption architecture, 
e-mag floating tools with neural nets trained to minimize soldering
mistakes, etc.

In general, sensory-rich machines tied to adaptive architectures are 
just starting to be explored.  The biggest cost remaining in factories 
is the detection and correction of errors.  Adapative machines 
combined with massives numbers and varieties of microfabbed sensors 
could do wonders for automation.

My favorite area is the use of search/learning algorithms to assist 
in design work in new territories.  Engineer defines new territory
and search spaces within it.  Computer goes off and searches 
various important spaces in the new territory & brings back some 
interesting solutions.  The human designer tweeks the solutions & search 
parameters.  Repeat until design is ready to implement. 

Search/learning algorithms have already rediscovered various scientific 
laws, eg Kepler's third law, and various efficient algorithms.  They might 
not be able to discover major new techniques until we make them an integral 
part of the engineering process.  I am currently designing software
that will integrate learning algorithms with a simplified version
of process or metabolic design.  The target application is the design 
of optimally self-replicating and flexibly-manufacturing factories,
but the software may end up being more generally useful.  If anybody 
is interested in this, and experienced in computer science and/or 
manufacturing, I'd love to have somebody to bounce the ideas and
designs off of.

Final note: I've mentioned genetic programming, now you can buy the 
book!.  GP, a generalized form of simulated evolution (aka genetic
algorithms) is the technique of using the parse tree of a language 
(or S-expressions in LISP) as a genetic code and evolving an optimal 
program against a fitness function.

Date: Mon, 16 Nov 92 17:13:11 PST
From: John Koza <koza@CS.Stanford.EDU>
Subject: New Book and Videotape on genetic Programming

BOOK AND VIDEOTAPE ON GENETIC PROGRAMMING

A new book and a one-hour videotape (in VHS NTSC, PAL, and SECAM 
formats) on genetic programming are now available from the MIT 
Press.

NEW BOOK...

GENETIC PROGRAMMING: ON THE PROGRAMMING OF COMPUTERS BY 
MEANS OF NATURAL SELECTION

by John R. Koza, Stanford University

The recently developed genetic programming paradigm provides a 
way to genetically breed a computer program to solve a wide variety 
of problems.  Genetic programming starts with a population of 
randomly created computer programs and iteratively applies the 
Darwinian reproduction operation and the genetic crossover (sexual 
recombination) operation in order to breed better individual 
programs.  The book describes and illustrates genetic programming 
with 81 examples from various fields.

840 pages.  270 Illustrations.  ISBN 0-262-11170-5.

Contents...

1   Introduction and Overview
2   Pervasiveness of the Problem of Program Induction
3   Introduction to Genetic Algorithms
4   The Representation Problem for Genetic Algorithms
5   Overview of Genetic Programming
6   Detailed Description of Genetic Programming
7   Four Introductory Examples of Genetic Programming
8   Amount of Processing Required to Solve a Problem
9   Nonrandomness of Genetic Programming
10  Symbolic Regression - Error-Driven Evolution
11  Control - Cost-Driven Evolution
12  Evolution of Emergent Behavior
13  Evolution of Subsumption
14  Entropy-Driven Evolution
15  Evolution of Strategy
16  Co-Evolution
17  Evolution of Classification
18  Iteration, Recursion, and Setting
19  Evolution of Constrained Syntactic Structures
20  Evolution of Building Blocks
21  Evolution of Hierarchies of Building Blocks
22  Parallelization of Genetic Programming
23  Ruggedness of Genetic Programming
24  Extraneous Variables and Functions
25  Operational Issues
26  Review of Genetic Programming
27  Comparison with Other Paradigms
28  Spontaneous Emergence of Self-Replicating and Self-Improving 
    Computer Programs
29  Conclusions

Appendices contain simple software in Common LISP for 
implementing experiments in genetic programming.

ONE-HOUR VIDEOTAPE...

GENETIC PROGRAMMING: THE MOVIE

by John R. Koza and James P. Rice, Stanford University

The one-hour videotape (in VHS NTSC, PAL, and SECAM formats) 
provides a general introduction to genetic programming and a 
visualization of actual computer runs for 22 of the problems 
discussed in the book GENETIC PROGRAMMING: ON THE PROGRAMMING 
OF COMPUTER BY MEANS OF NATURAL SELECTION.  The problems 
include symbolic regression, the intertwined spirals, the artificial 
ant, the truck backer upper, broom balancing, wall following, box 
moving, the discrete pursuer-evader game, the differential pursuer-
evader game, inverse kinematics for controlling a robot arm, 
emergent collecting behavior, emergent central place foraging, the 
integer randomizer, the one-dimensional cellular automaton 
randomizer, the two-dimensional cellular automaton randomizer, 
task prioritization (Pac Man), programmatic image compression, 
solving numeric equations for a numeric root, optimization of lizard 
foraging, Boolean function learning for the 11-multiplexer, co-
evolution of game-playing strategies, and hierarchical automatic 
function definition as applied to learning the Boolean even-11-
parity function.

---------------------------ORDER FORM----------------------

PHONE: 800-326-4471 TOLL-FREE or 617-625-8569
MAIL:  The MIT Press, 55 Hayward Street, Cambridge, MA 02142
FAX:  617-625-9080

Please send
____ copies of the book GENETIC PROGRAMMING: ON THE 
PROGRAMMING OF COMPUTERS BY MEANS OF NATURAL SELECTION by 
John R. Koza (KOZGII) (ISBN 0-262-11170-5) @ $55.00.
____ copies of the one-hour videotape GENETIC PROGRAMMING: THE 
MOVIE by John R. Koza and James P. Rice  in VHS NTSC format 
(KOZGVV) (ISBN 0-262-61084-1) @$34.95  
____ copies of the videotape in PAL format (KOZGPV) (ISBN 0-262-
61087-6) @$44.95
____ copies of the videotape in SECAM format (KOZGSV) (ISBN 0-
262-61088-4) @44.95.

Name __________________________________

Address_________________________________

City____________________________________

State_________________Zip________________

Country_________________________________

Phone Number ___________________________

$ _______ Total
$ _______ Shipping and Handling ($3 per item. Outside U.S. and 
Canada, add $6 per item for surface rate or $22 per item for airmail)
$ _______ Canada - Add 7% GST
$ _______ Total due MIT Press

__ Payment attached (check payable to The MIT Press in U.S. funds)
__ Please charge to my VISA or MASTERCARD credit card

Number ________________________________
Credit Card Expires _________________________________
Signature  ________________________________

------------------------------

*******************

Nick Szabo				szabo@techbook.com

[Don't forget Genetic Algorithms, D. Goldberg, Addison-Wesley, 1989,
 and of course Adaptation in Natural and Artificial Systems, 
 J. Holland, 1975 (2nd. ed. MIT Press 1992).
 --JoSH]