John Koza's Publications: Year Index:
Koza, John R., Keane, Martin A., Streeter, Matthew J., Mydlowec, William, Yu, Jessen, and Lanza, Guido. 2003. Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Kluwer Academic Publishers. ISBN 1-4020-7446-8.
Genetic programming (GP) is method for automatically creating computer programs. It starts from a high-level statement of what needs to be done and uses the Darwinian principle of natural selection to breed a population of improving programs over many generations. Genetic Programming IV: Routine Human-Competitive Machine Intelligence presents the application of GP to a wide variety of problems involving automated synthesis of controllers, circuits, antennas, genetic networks, and metabolic pathways. The books describes 15 instances where GP has created an entity that either infringes or duplicates the functionality of a previously patented 20th-century invention, 6 instances where it has done the same with respect to post-2000 patented inventions, 2 instances where GP has created a patentable new invention, and 13 other human-competitive results. A 42-minute video overview of the book is contained in a DVD that comes with the book. The book additionally establishes:
· GP now delivers routine human-competitive machine intelligence.
· GP is an automated invention machine.
· GP can create general solutions to problems in the form of parameterized topologies.
has delivered qualitatively more substantial results in synchrony with the
relentless iteration of
For information about the 2003 book Genetic Programming IV: Routine Human-Competitive Machine Intelligence.
Koza, John R., Keane, Martin A., Streeter, Matthew J., Mydlowec, William, Yu, Jessen, Lanza, Guido, and Fletcher, David. 2003. Genetic Programming IV Video: Routine Human-Competitive Machine Intelligence. Kluwer Academic Publishers.
This 42-minute DVD video is bound into copies of the 2003 book Genetic Programming IV: Routine Human-Competitive Machine Intelligence.
Koza, John R., 2003a. Human-competitive applications of genetic programming.
In Ghosh Ashish and Tsutsui, Shigeyeoshi (editors). Advances in Evolutionary
Computing: Theory and Applications.
Genetic programming is an automatic technique for producing a computer program that solves, or approximately solves, a problem. This chapter reviews several recent examples of human-competitive results produced by genetic programming. The examples all involve the automatic synthesis of a complex structure from a high-level statement of the requirements for the structure. The illustrative results include examples of automatic synthesis of both the topology and sizing (component values) for analog electrical circuits, automatic synthesis of placement and routing (as well as topology and sizing) for circuits, and automatic synthesis of both the topology and tuning (parameter values) of controllers.
Click here for PDF version of this chapter in book edited by Ghosh and Tsutsui
Koza, John R. 2003b. Automatic synthesis of topologies and numerical
parameters. In Glover, Fred and Kochenberger, Gary A. (editors). Handbook of
Many mathematical algorithms are capable of solving problems by producing optimal (or near-optimal) numerical values for a prespecified set of parameters. However, for many practical problems, one cannot begin a search for the set of numerical values until one first ascertains the number of numerical values that one is seeking. In fact, many practical problems of design and optimization entail first discovering an entire graphical structure (that is, a topology). After the topology is identified, optimal (or near-optimal) numerical values can be sought for the elements of the structure. In this chapter, we will demonstrate that a biologically motivated algorithm (genetic programming) can automatically synthesize both a graphical structure (the topology) and a set of optimal or near-optimal numerical values for each element of analog electrical circuits, controllers, antennas, and networks of chemical reactions (metabolic pathways).
Click here for PDF version of this chapter in Glover-Kochenberger edited book.
Koza, John R. (editor). 2003. Genetic Algorithms and Genetic Programming
at Stanford 2003.
This volume contains 27 papers
written by students describing their term projects for the course "Genetic
Algorithms and Genetic Programming" (Medical Information Sciences 226 /
Computer Science 426) at
Click here for information on obtaining a copy of Book of Student Papers for 2003.
Almost all of the student papers for 2003 are also available on-line.
Koza, John R., Keane, Martin A., and Streeter, Matthew J. 2003a. Evolving inventions. Scientific American. February 2003. 288(2) 52 – 59.
Visit the web site of Scientific American for a copy of this February 2003 article.
Koza, John R., Keane, Martin A., and Streeter, Matthew J. 2003b. The
importance of reuse and development in evolvable hardware. In Lohn, Jason,
Zebulum, Ricardo, Steincamp, James, Keymeulen, Didier, Stoica,
Reuse will become increasingly important as larger digital and analog circuits are created by the techniques of the field of evolvable hardware. This paper discusses the ways by which genetic programming can facilitate reuse and the associated advantages of using a developmental process.
Click here for PDF version of this EH-2003 paper.
Koza, John R., Keane, Martin A., and Streeter, Matthew J. 2003c. What’s AI done for me lately? Genetic programming’s human-competitive results. IEEE Intelligent Systems. Volume 18. Number 3. May/June 2003. Pages 25 – 31.
The automated problem-solving technique of genetic programming has generated at least 36 human-competitive results (21 involving previously patented inventions). Because patents represent current research and development efforts of the engineering and scientific communities, this article focuses on six cases where genetic programming automatically duplicated the functionality of inventions patented after 1 January 2000. It also covers two automatically synthesized controllers for which the authors have applied for a patent and includes examples of an automatically synthesized antenna, classifier program, and mathematical algorithm. As computer time becomes ever more inexpensive, researchers will start to routinely use genetic programming to produce useful new designs, generate patentable new inventions, and engineer around existing patents.
Koza, John R. and Poli, Riccardo. 2003. A genetic programming tutorial. In Burke, Edmund (editor). Introductory Tutorials in Optimization, Search and Decision Support. 40 pages.
Genetic programming is a technique to automatically discover computer programs using principles of Darwinian evolution. This chapter introduces the basics of genetic programming. To make the material more suitable for beginners, these are illustrated with an extensive example. In addition, the chapter touches upon some of the more advanced variants of genetic programming as well as its theoretical foundations. Numerous pointers to further reading, software tools and Web sites are also provided.
Click here for PDF version of this chapter in Burke tutorial collection.
Koza, John R., Streeter, Matthew J., and Keane, Martin A. 2003a. Automated synthesis by means of genetic programming of human-competitive designs employing reuse, hierarchies, modularities, development, and parameterized topologies. In Lipson, Hod, Antonsson, Erik K., and Koza, John R. (editors). Computational Synthesis: From Basic Building Blocks to High Level Functionality: Papers from the 2003 AAAI Spring Symposium. AAAI technical report SS-03-02. Pages 138–145.
Genetic programming can be used as an automated invention machine to create designs. Genetic programming has automatically created designs that infringe, improve upon, or duplicate the functionality (in a novel way) of 16 previously patented inventions involving circuits, controllers, and mathematical algorithms. Genetic programming has also generated two patentable new inventions for which patent applications have been filed. Genetic programming has also generated numerous other human-competitive results, including the design of quantum computing circuits that are superior to those designed by human designers. Genetic programming has also designed antennae, networks of chemical reactions (metabolic pathways), and genetic networks. Genetic programming can automatically create hierarchies, automatically identify and reuse modularities, automatically determine program architecture, and automatically create parameterized topologies. When genetic programming is used to design complex structures, it is often advantageous to use a developmental process that enables syntactic validity and locality to be preserved under crossover.
Click here for PDF version of this AAAI Spring Symposium paper.
Koza, John R., Streeter, Matthew J., and Keane, Martin A. 2003b. Routine
high-return human-competitive machine learning. In Wani, M. Arif, Cois, K., and
Hafeez, K. (editors) Proceedings of the International Conference on Machine
Learning and Applications.
Genetic programming is a systematic method for getting
computers to automatically solve a problem. Genetic programming starts from a
high-level statement of what needs to be done and automatically creates a
computer program to solve the problem. The paper
Click here for PDF version of this ICMLA-2003 invited paper and talk.
Koza, John R., Streeter, Matthew J., and Keane, Martin A. 2003c. Routine
human-competitive machine intelligence by means of genetic programming. SPIE
conference. In Bosacchi, Bruno Fogel, David B., and Bezdek, James C. (editors).
Applications and Science of Neural
Networks, Fuzzy Systems, and Evolutionary Computation VI. Proceedings of SPIE.
Genetic programming is a systematic method for getting computers to automatically solve a problem. Genetic programming starts from a high-level statement of what needs to be done and automatically creates a computer program to solve the problem. The paper demonstrates that genetic programming (1) now routinely delivers high-return human-competitive machine intelligence; (2) is an automated invention machine; (3) can automatically create a general solution to a problem in the form of a parameterized topology; and (4) has delivered a progression of qualitatively more substantial results in synchrony with five approximately order-of-magnitude increases in the expenditure of computer time. Recent results involving the automatic synthesis of the topology and sizing of analog electrical circuits and controllers demonstrate these points.
Click here for PDF version of this SPIE-2003 invited paper and talk.
Koza, John R., Streeter, Matthew J., and Keane, Martin A. 2003d. Automated
synthesis by means of genetic programming of complex structures incorporating
reuse, parameterized reuse, hierarchies, and development. In Riolo, Rich and
Worzel, William. 2003. Genetic Programming: Theory and Practice.
Genetic programming can be used as an automated invention machine to synthesize designs for complex structures. In particular, genetic programming has automatically synthesized complex structures that infringe, improve upon, or duplicate the functionality of 21 previously patented inventions (including analog electrical circuits, controllers, and mathematical algorithms). Genetic programming has also generated two patentable new inventions (involving controllers). Genetic programming has also generated numerous additional human-competitive results involving the design of quantum computing circuits as well as other substantial results involving antennae, networks of chemical reactions (metabolic pathways), and genetic networks. We believe that these results are the direct consequence of a group of techniques—many unique to genetic programming—that facilitate the automatic synthesis of complex structures. These techniques include automatic reuse, parameterized reuse, parameterized topologies, and developmental genetic programming. The paper describes these techniques and how they contribute to automated design.
Click here for PDF version of this chapter in GPTP edited book.
Streeter, Matthew J., Keane, Martin A., and Koza, John R. 2003a. Use of
genetic programming for automatic synthesis of post-2000 patented analog
electrical circuits and patentable controllers. In Hernandez, S., Brebbia, C.
A., and El-Sayed, M. E. M. (editors). Computer Aided Optimum Design of
This paper describes how we used genetic programming to automatically create the design of both the structure (topology) and sizing (component values) of analog electrical circuits that duplicate the functionality of five post-2000 patented inventions. The paper also describes how we used genetic programming to automatically create the design of both the structure (topology) and tuning (parameter values) of a general-purpose controller that outperforms conventional controllers for industrially representative plants.
Click here for PDF version of this OPTI-2003 conference paper
Streeter, Matthew J., Keane, Martin A., and Koza, John R. 2003b. Automatic
Synthesis using genetic programming of both the topology and sizing for five
post-2000 patented analog and mixed analog-digital circuits. In Proceedings
of the 2003 Southwest Symposium on Mixed-Signal Design.
Recent work has demonstrated that genetic programming can automatically create both the topology (graphical structure) and sizing (numerical component values) for analog electrical circuits merely by specifying the circuit's high level behavior (e.g., its desired or observed output, given its input). This automatic synthesis of analog circuits is accomplished using only tools for the analysis of circuits (e.g., a circuit simulator) and without relying on any human know-how concerning the synthesis of circuits. This paper applies genetic programming to the automatic synthesis of five analog and mixed analog-digital circuits that duplicate the functionality of circuits patented after January 1, 2000. The five automatically created circuits read on some (but not all) of the elements of various claims of the patents involved (and therefore do not infringe). The described method can be used as an automated invention machine either to produce potentially patentable new circuits or to “engineer around” existing patents.
Click here for PDF version of this SSMSD-2003 conference paper
Streeter, Matthew J., Keane, Martin A., and Koza, John R. 2003c. Automatic synthesis using genetic programming of improved PID tuning rules. In Ruano, A. E. (editor). Preprints of the 2003 Intelligent Control Systems and Signal Processing Conference. Pages 494 – 499.
Astrom and Hagglund developed tuning rules in 1995 for PID controllers that outperform the 1942 Ziegler-Nichols rules on an industrially representative set of plants. In this paper, we use genetic programming to automatically discover tuning rules for PID controllers that outperform the Astrom-Hagglund rules for the industrially representative set of plants specified by Astrom and Hagglund.
Click here for PDF version of this ICONS-2003 conference paper
· The home page of Genetic Programming Inc. at www.genetic-programming.com.
· For information about the field of genetic programming and the field of genetic and evolutionary computation, visit www.genetic-programming.org
· For information about John Koza’s course on genetic algorithms and genetic programming at Stanford University
· Information about the 1992 book Genetic Programming: On the Programming of Computers by Means of Natural Selection, the 1994 book Genetic Programming II: Automatic Discovery of Reusable Programs, the 1999 book Genetic Programming III: Darwinian Invention and Problem Solving, and the 2003 book Genetic Programming IV: Routine Human-Competitive Machine Intelligence. Click here to read chapter 1 of Genetic Programming IV book in PDF format.
· 3,440 published papers on genetic programming (as of November 28, 2003) in a searchable bibliography (with many on-line versions of papers) by over 880 authors maintained by William Langdon’s and Steven M. Gustafson.
· For information on the Genetic Programming and Evolvable Machines journal published by Kluwer Academic Publishers
· For information on the Genetic Programming book series from Kluwer Academic Publishers, see the Call For Book Proposals
· For information about the
annual 2005 Genetic and Evolutionary
Computation (GECCO) conference (which includes the annual GP
conference) to be held on June 25–29, 2005 (Saturday – Wednesday) in
Last updated on August 21, 2004