Home Page of John R. Koza

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\jkphogobeowulf2940.jpg

John Koza with 1,000-Pentium parallel computer in Mountain View, California. Picture by Eric Slomanson

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\johncofesspeaking.jpg

Keynote speech at Congress On the Future of Engineering Software (COFES) conference in Phoenix on April 2, 2004


Most recent published article: Human-competitive results produced by genetic programming in March 2010 special 10th Anniversary issue of Genetic Programming and Evolvable Machines journal 


Skip Down this Page Directly to ...

Go to Biography

Go to Scientific books and papers

Go to Scientific research Interests

Go to Courses at Stanford University

Go to Recent Invited Talks and Tutorials on Genetic Programming

Go to Addresses and Contact Information

Go to Electoral College

Go to Miscellaneous

More pictures


Biography—John R. Koza

Degrees

  • B.A., Computer Science, University of Michigan, 1964.
  • M.A. Mathematics, University of Michigan, 1966.
  • M.S., Computer Science, University of Michigan, 1966.
  • PhD., Computer Science, University of Michigan, 1972. Thesis entitled On Inducing a Non-Trivial, Parsimonious Grammar for a Given Sample of Sentences.

Stanford University

  • Taught Computer Science 426 (Genetic Algorithms and Genetic Programming) at Stanford University in Fall 1988, Spring 1989, Fall 1989, Spring 1990, Spring 1991,Spring 1992, Spring 1993, Fall 1994, Fall 1995, Fall 1996, Winter 1997, Winter 1998; Winter 1999, Winter 2000, Spring 2002, and Fall 2003 quarters. Click here for information about MIS 226 / CS 426 / EE392K course on genetic algorithms and genetic programming at Stanford University.
  • Taught Computer Science 425 (Artificial Life) at Stanford University in Winter 1993 and Spring 1994 quarter.
  • Co-taught, with Russ Altman, Medical Information Science 214 in Spring 1995 (when the course was first designed) and also co-taught this course in Spring 1996, Spring l997, spring 1998, spring 1999, and spring 2000.
  • Lecturer, Computer Science Department, School of Engineering, 1988-1991.
  • Consulting associate professor, Computer Science Department, 1991–1992
  • Consulting professor, Computer Science Department, School of Engineering, 1992 – 1998
  • Consulting professor, Stanford BioMedical Informatics, Department of Medicine, School of Medicine, 1998 – 2005
  • Consulting professor, Department of Electrical Engineering, School of Engineering, 1999 – April 2010. 
  • In the Business Week survey of information technology by 800 international researchers (June 12, 1997), Stanford placed first in two categories (Computer Science and Artificial Intelligence) and second in Telecommunications. In the remaining category in the survey ("BIOLOGICALLY INSPIRED: ARTIFICIAL LIFE, GENETIC ALGORITHMS"), the Santa Fe Institute placed first, Stanford placed second, and Swiss Federal Institute of Technology (EPFL, Lausanne) placed third. The ranking of SFI and EPFL arises from the continuing active work of numerous individual researchers.

Other Academic Activities

  • Member of Board of Trustees, Santa Fe Institute (1999 – 2002)
  • Member of Science Board, Santa Fe Institute (1995 – 1998)
  • Chair, 1996, 1997, and 1998 Genetic Programming Conference
  • Consulting editor, book series on genetic programming with Kluwer Academic Publishers
  • Member of Advisory Board of the Genetic Programming and Evolvable Machines journal published by Kluwer Academic Publishers
  • Member of editorial board of Evolutionary Computation, Artificial Life, and Evolutionary Optimization journals
  • Associate editor of IEEE Transactions on Evolutionary Computation (1997 – 2000)
  • Member (since 1999) of Executive Board of International Society for Genetic and Evolutionary Computation (ISGEC)
  • Member, Business Committee of Genetic and Evolutionary Computation Conference (GECCO) for 1999 – 2005 and also Program Policy Committee for Genetic Programming for 1999 – 2005

Industry

  • Chairman, Chief Executive Officer, and co-founder (1973-1987) of Scientific Games Inc . of Atlanta, Georgia (NYSE company, now ASE company)

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\jksg20party.jpg

20th anniversary party of Scientific Games Inc. in Atlanta in 1993. From left to right, John R. Koza (former Chairman and CEO of Scientific Games Inc. from 1973 to 1987) and Daniel W. Bower (former president of Scientific Games Inc.).

  • Co-inventor of the rub-off instant lottery game ticket used by state lotteries since 1974

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\johnkozamass2004.jpg

30th anniversary party held at the Massachusetts State Lottery headquarters on May 24, 2004 celebrating the launch of the first rub-off instant lottery game in May 1974. From left to right, Daniel W. Bower (former president of Scientific Games Inc.), Joseph C. Sullivan (current Executive Director of the Massachusetts State Lottery), Dr. William E. Perrault (former Executive Director of the Massachusetts State Lottery in 1974 and during the 1970s and early 1980s), and John R. Koza (former Chairman and CEO of Scientific Games Inc. from 1973 to 1987). Photo courtesy of Public Gaming magazine (July 2004 issue).

Electoral College

  • Inventor 1966 board game Consensus concerning the electoral college, featured on CBS Early Show TV on November 21, 2000

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\early2.jpg

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\JKkgoTVchair.jpg

From interview on KGO TV on March 31, 2006 concerning “An Idea To Make Your Vote Count In 2008


Scientific Books and Papers—John R. Koza

· Virtually all problems in artificial intelligence, machine learning, adaptive systems, and automated learning can be recast as a search for a computer program.

· Genetic programming provides a way to successfully conduct the search for a computer program in the space of computer programs.

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\gp1coverfront.jpg

· Scalability is essential for solving non-trivial problems in artificial intelligence, machine learning, adaptive systems, and automated learning.

· Scalability can be achieved by reuse.

· Genetic programming provides a way to automatically discover and reuse subprograms in the course of automatically creating computer programs to solve problems.

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\gp2coverfront.jpg

· Genetic programming possesses the attributes that can reasonably be expected of a system for automatically creating computer programs.

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\GIF1558605436GP3.gif

  • 2003 book Genetic Programming IV: Routine Human-Competitive Machine Intelligence from Kluwer Academic Publishers (by John R. Koza, Martin A. Keane, Matthew J. Streeter, William Mydlowec, Jessen Yu, and Guido Lanza ) (ISBN 1-4020-7446-8) Kluwer Academic Publisher also publishes a DVD disk Genetic Programming IV: Video: Routine Human-Competitive Machine Intelligence (by John R. Koza, Martin A. Keane, Matthew J. Streeter, William Mydlowec, Jessen Yu, Guido Lanza, and David Fletcher) that is bound into this 2003 book. The 4 main points of the 2003 book are

· Genetic programming now routinely delivers high-return human-competitive machine intelligence.

· Genetic programming is an automated invention machine.

· Genetic programming can automatically create a general solution to a problem in the form of a parameterized topology.

· Genetic programming has delivered a progression of qualitatively more substantial results in synchrony with five approximately order-of-magnitude increases in the expenditure of computer time.

Description: Description: Description: Description: C:\Users\John Koza\Documents\7-Web pages-Domain-Hosting\GP-COM-Pages\gp4cover.gif

  • Stanford University technical reports from the Computer Science Department and Stanford BioMedical Informatics program in the Department of Medicine of which I am author or co-author can be obtained on the web, including
    • STAN-TR-CS 1314 (1990) entitled Genetic Programming: A Paradigm for Genetically Breeding Populations of Computer Programs to Solve Problems
    • STAN-TR-CS 1528 (1994) entitled Architecture-Altering Operations for Evolving the Architecture of a Multi-Part Program in Genetic Programming
    • STAN-TR-CS 1542 (1995) entitled Parallel Genetic Programming on a Network of Transputers
    • SMI-95-0586 (1995) entitled A Programming Course in Bioinformatics for Computer and Information Science Students
    • SMI-2000-0851 (2000) entitled Reverse Engineering and Automatic Synthesis of Metabolic Pathways from Observed Data Using Genetic Programming
  • Author (first or sole) on about 200 papers and co-author of numerous other papers. Most of these papers available PDF format.
  • Click here for list of patents.
  • Collaborators on various published papers, books, or videos:

Al-Sakran, Sameer H.

Andre, David

Bennett, Forrest H.

Bade, Stephen L.

Brave, Scott

Comisky, William

Dunlap, Frank

Fletcher, David

Hutchings, Jeffrey L.

Jones, Lee William

Keane, Martin A.

Lanza, Guido

Lohn, Jason

Mydlowec, William

Poli, Riccardo

Rice, James P.

Roughgarden, Jonathan

Shipman, James

Stiffelman, Oscar

Streeter, Matthew J.

Tackett, Walter Alden

Yu, Jessen


Scientific Research Interests—John R. Koza

Our main research interest is automatic programming (also called program synthesis or program induction)—that is, getting computers to solve problems without explicitly programming them.

This goal can be accomplished using the technique of genetic programming (of which I am considered the inventor). Genetic programming is an automated method for creating a working computer program from a high-level problem statement of a problem. Genetic programming performs automatic program synthesis using Darwinian natural selection and biologically inspired operations such as recombination, mutation, inversion, gene duplication, and gene deletion. Old Chinese saying says "animated gif is worth one megaword," so
click here for short tutorial of "What is GP?" For information about the rapidly growing field of genetic programming, visit www.genetic-programming.org and www.genetic-programming.com

While proof of principle ("toy") problems are occasionally useful for tutorial or introductory purposes, we believe that it is time for fields of artificial intelligence and machine learning to start delivering non-trivial results that satisfy the test of being competitive with human performance. Accordingly, our criterion for undertaking new research is that, if the anticipated outcome of the research effort is achieved, it can be argued (on some reasonable basis) that the result created by genetic programming is competitive with human-produced results. Competitiveness with human performance can be established in a variety of ways. For example, genetic programming may produce a result that is slightly better, equal, or slightly worse than that produced by a succession of human researchers working on an well-defined problem over a period of years. Or, genetic programming may produce a result that is equivalent to an invention that was patented in the past or that is patentable today as a new invention. Or, genetic programming may produce a result that is publishable in its own right (i.e., independent of the fact that the result was mechanically generated). Or, genetic programming may produce a result that wins or ranks highly in a judged competition involving human contestants. There are examples using genetic programming in all four categories and we have been produced at least one example in three of the four categories. Fourteen are described in detail in the Genetic Programming III: Darwinian Invention and Problem Solving
book and Human-Competitive Machine Intelligence videotape For additional discussion, see human-competitive machine intelligence.

Specifically, our recent research work involving genetic programming currently emphasizes

  • automated synthesis of analog electrical circuits,
  • automated synthesis of controllers,
  • automated synthesis (reverse engineering) of metabolic pathways (networks of chemical reactions),
  • automated synthesis of antennas,
  • automated synthesis of genetic networks,
  • problems in computational molecular biology,
  • various other problems involving cellular automata, multi-agent systems, mathematical algorithms, and other areas of design, and
  • using genetic programming as an automated "invention machine" (for creating new and useful patentable new inventions).

There are now a number of instances where genetic programming has automatically produced a computer program that is competitive with human performance. (See our criteria for human-competitive results and a list of human-competitive results by clicking on human-competitive machine intelligence). The fact that genetic programming can evolve entities that are competitive with human-produced results suggests that genetic programming may possibly be used as an "invention machine" to create new and useful patentable inventions. In this connection, evolutionary methods, such as genetic programming, have the advantage of not being encumbered by preconceptions that limit human problem-solving to well-traveled paths.

In late July 1999, Genetic Programming Inc. started operating a new 1,000-node Beowulf-style parallel cluster computer consisting of 1,000 Pentium II 350 MHz processors and a host computer. Genetic Programming Inc. has also operated (starting in early 1999) a 70-node Beowulf-style parallel cluster computer consisting of 533 MHz DEC Alpha microprocessors and a host computer. The new 1,000-Pentium system is called the Tera-COTS computer (since it has capacity of about a teraflops and is a beowulf-style customer computer made of "commodity off-the-shelf" [COTS] parts). Click here for technical discussion of parallel genetic programming and building the 1,000-Pentium Beowulf-style parallel cluster computer.

All of the above-mentioned 21 human-competitive results were obtained using computers that were substantially smaller than the new 1000-Pentium computer mentioned above. Fifteen of these 21 human-competitive results were obtained on a 1995-vintage parallel computer system composed of 64 PowerPC 80 MHz processors with a spec95fp rating that is 1/60 of that of the new 1000-Pentium machine. Five of these results were obtained on a 70-Alpha machine (whose spec95fp rating is 1/9 of that of the 1000-Pentium machine). One of these human competitive results were obtained with a 1994-vintage machine (whose spec95fp rating is 1/1,320 of that of the 1000-Pentium machine). Because of its increased computational power of the new 1000-Pentium machine, we expect that it will produce additional human-competitive results.

Genetic programming has 16 important attributes that one would reasonably expect of a system for automatic programming (also called program synthesis or program induction). Genetic programming has seven important differences from other approaches to machine learning and artificial intelligence.

My other research interests include artificial life (particularly spontaneous emergence of self-replicating and self-improving entities) and cellular automata.


Courses at Stanford University—John R. Koza

  • Genetic Algorithms and Genetic Programming Course: BMI 226 / CS 426 / EE392K course on genetic algorithms and genetic programming  is co-listed in the Department of Computer Science in the School of Engineering, Department of Electrical Engineering in the School of Engineering, and BioMedical Informatics in the School of Medicine. Click here for additional information about the course. This course is televised by Stanford Instructional Television Network (SITN) operated by the Stanford Center for Professional Development and is available on the WWW via Stanford On-Line. Taught in Fall 1988, Spring 1989, Fall 1989, Spring 1990, Spring 1991,Spring 1992, Spring 1993, Fall 1994, Fall 1995, Spring 1997, Winter 1998, Winter 1998, Winter 1999, Winter 2000, Spring 2002, and Fall 2003 quarters. This course has been recorded on videotape starting in the Spring 1997 quarter.
  • Representations and Algorithms for Computational Molecular Biology: This course is now currently and regularly taught by Russ Altman, M.D., Ph.D as BioMedical Information Science 214 (BMI 214) in the School of Medicine (and co-listed as Computer Science 274 in the School of Engineering). This course's home page can be seen by clicking here: Course on Computational Molecular Biology. This course was originally taught by Russ Altman and John Koza, starting in 1995. Additional information about this course (primarily intended for instructors of similar courses at other universities) was presented in a paper by Russ Altman and John Koza at the 1996 Pacific Symposium on Biocomputing and in Stanford Medical Informatics technical report SMI-95-0586 (1995) entitled A Programming Course in Bioinformatics for Computer and Information Science Students. This course has been recorded on videotape starting in the spring 1997 quarter, is televised, and is available on the web via Stanford On-Line. For information, contact Stanford Center for Professional Development. The Representations and Algorithms for Computational Molecular Biology is part of a three-course sequence at Stanford University that leads to a certificate in Bioinformatics.
  • Artificial Life Course - Computer Science 425. This course was taught at Stanford University in Winter 1993 and Spring 1994. There are no plans to offer this course again in the foreseeable future. Much of the subject matter of this course has been incorporated into the course on computational molecular biology (described above) and the course on genetic algorithms and genetic programming (described above).

Compilations of the Student Papers from 1994 to 2003 written by students in Computer Science 426 and by students in Computer Science 425 are available at the Mathematics Library in the Main Quad at Stanford University and for purchase from the Custom Publishing Department of the Stanford Bookstore.

Also, certain course readers from John Koza's courses at Stanford on Genetic Algorithms and Genetic Programming and course on Artificial Life may be available from the Custom Publishing Department of the Stanford Bookstore.


Recent Invited Talks and Tutorials—John R. Koza

· Click here for PDF file of AAAI-2004 tutorial on automated invention using genetic programming at American Association for Artificial Intelligence conference (AAAI-2004) in San Jose on July 25, 2004. This is John Koza’s portion (but not Lee Spector’s portion) of this 4-hour tutorial.

· Click here for PDF file of GECCO-2004 tutorial on genetic programming presented at the Genetic and Evolutionary Computation Conference (GECCO) in Seattle in June 2004.

· Click here for PDF file of EH-2004 invited talk on industrial-strength analog circuit synthesis by means of genetic programming presented at the NASA/DoD Conference on Evolvable Hardware (EH-2004) in Seattle in June 2004.

· Click here for PDF file of GPTP-2004 talk on industrial-strength analog circuit synthesis by means of genetic programming presented at the Genetic Programming Theory and Practice (GPTP) conference in Ann Arbor on May 14, 2004 organized by the University of Michigan Center

 for the Study of Complex Systems.

 

  

 

Electoral College

 

 

 

Addresses and Contact Information—John R. Koza

Best Address for Physical Mail:

John R. Koza
Post Office Box 1441
Los Altos Hills, California 94023-1411 USA

FAX: 650-941-9430

E-Mail:  john at johnkoza dot com


Miscellaneous

· Click here for Awards for human-competitive results.

· For information about the field of genetic programming and the field of genetic and evolutionary computation, visit www.genetic-programming.org

· The home page of Genetic Programming Inc. at www.genetic-programming.com.

· The home page of John R. Koza (including online versions of most published papers)

· 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.

· 4,000+ 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


 

Last updated  September 19, 2010