CS 420/594: Advanced Topics in Machine Intelligence

Fall 2009: Biologically-Inspired Computation


Bruce MacLennan
Phone: 974-5067
Office: 217 Claxton Complex
Office Hours: 3:45–5:00 Thurs., or make an appointment
Email: maclennan AT eecs.utk.edu


Kristy Van Hornweder  
Phone: 974-6433
Office:  Claxton 122C
Office Hours: TR 4:00–5:00 and W 3:30–4:30 or make an appointment 
Email: kvanhorn AT eecs.utk.edu

Classes: 11:10–12:25 TR in Claxton 205

Directory of Handouts, Labs, etc.

This page: http://www.cs.utk.edu/~mclennan/Classes/420



CS 420 covers advanced topics in machine intelligence with an emphasis on faculty research; CS 594 is similarly focused on faculty research. In the Fall semester of 2009 the topic for my CS 420/594 will be biologically-inspired computation, including recent developments in computational methods inspired by nature, such as neural networks, genetic algorithms and other evolutionary computation systems, ant swarm optimization, artificial immune systems, swarm intelligence, cellular automata, and multi-agent systems.

Fundamental to the understanding and implementation of massively parallel, distributed computational systems is an investigation of the behavior and self-organization of a variety of systems in which useful work emerges from the interaction of many simple agents.  The question we address is: How should a multitude of independent computational (or robotic) agents cooperate in order to process information and achieve their goals, in a way that is efficient, self-optimizing, adaptive, and robust in the face of changing needs, damage, and attack? 

Fortunately, nature provides many models from which we can learn.  In this course we will discuss natural computational systems that solve some of the same problems that we want to solve, including adaptive path minimization by ants, wasp and termite nest building, army ant raiding, fish schooling and bird flocking, pattern formation in animal coats, coordinated cooperation in slime molds, synchronized firefly flashing, soft constraint satisfaction in spin glasses, evolution by natural selection, game theory and the evolution of cooperation, computation at the edge of chaos, and information processing in the brain.

You will learn about specific computational applications of these ideas, including artificial neural networks, simulated annealing, cellular automata, ant colony optimization, artificial immune systems, particle swarm optimization, and genetic algorithms and other evolutionary computation systems.  These techniques are also used in computer games and computer animation.
Since the goal of this goal of this course is for you to gain an intuitive understanding of adaptive and self-organizing computational systems, the lectures make extensive use of videos, simulations, and other computer demonstrations.  Your grade will be based on three or four moderate-sized projects, and I will consider group projects (but you will have to do more!).  There are no other assignments or tests.  (In the past, students who did all the work received A or B+ in this course.)

CS 594 “Biologically-Inspired Computation” is approved for the Interdisciplinary Graduate Minor in Computational Science (IGMCS).


This is a project-oriented course and therefore all students will be expected to have basic programming skills.  However, for non-EECS students (e.g., those in biology, ecology, psychology, etc.) I will provide alternate non-programming assignments.  If you have any questions about whether you should take this course, please send me mail.


Your grade will be based on about six projects, in which you will conduct and write up experiments using the software  associated with Flake’s book, as well as conducting experiments with software that you program yourself.  (Non-EECS students can do alternative, non-programming assignments.)

There will be no exams or other homework.

Students taking CS 594 (i.e. the course for graduate credit) will be expected to do specified additional work.

In the past, most students have earned A or B+ in this course.  If you meet all the requirements of a project, you will generally get a B on it.  Higher grades (B+, A–, A) are awarded for exemplary work.  If you do not meet the project requirements, or your project is late, you will get a grade lower than B on that project,


CS 420 & 594:  Flake, Gary William.  The Computational Beauty of Nature.  MIT Press, 1998.  See also the book’s online webpage (including software).

Evolving List of Topics

Chapter numbers refer to Flake unless otherwise specified.  Slides for each lecture will be posted in the course of the semester.  (Slides from the Fall 2008, Fall 2007, Fall 2004 and  Fall 2003 versions of the course are still available on their websites.)  Note: An “*” indicates that the slides were revised after class.
  1. Overview: course description, definition of biologically-inspired computing, why it is important
    Part 1 slides “Introduction” and “Ants”: pdf (6 per page, 5 MB) / pdf (1 per page, 5 MB) / ppt (5.6 MB)

  2. Spatial Models: Wolfram’s classification, Langton’s lambda, CA models in nature, excitable media (ch. 15)
    Part 2A slides “Cellular Automata”: pdf (6pp, 1.5MB) / pdf (1pp, 1.8MB) / ppt (2.8MB).
    Part 2B slides “Pattern Formation”: pdf (6pp, 7.6 MB) / pdf (1pp, 7.9 MB) / ppt (7.8 MB).
    **Part 2C slides “Slime Mold”: pdf (6pp, 6.5 MB) / pdf (1pp, 7.1 MB) / ppt (5.9 MB)
    *Part 2D slides “Excitable Media”: pdf (6pp, 1.5 MB) / pdf (1pp, 1.6 MB) / ppt (1.7 MB)

  3. Natural and Analog Computation: artificial neural nets, associative memory, Hebbian learning, Hopfield networks (ch. 18)
    *Part 3A slides “Hopfield Network”: pdf (6pp, 6.2 MB) / pdf (1pp, 6.3 MB) / ppt (5.9 MB)
    Part 3B slides “Stochastic Neural Networks”: pdf (6pp, 1.4 MB) / pdf (1pp, 1.5 MB) / ppt (1.4 MB)
  4. Neural Networks and Learning: pattern classification & linear separability, single- and multilayer perceptrons, backpropagation, internal representation (ch. 22)
    *Part 4A slides “Neural Network Learning”: pdf (6pp, 1.8 MB) / pdf (1pp, 1.9 MB) / ppt (1.6 MB)
    Part 4B slides “Real Neurons and Real Brains”: pdf (6pp, 64 MB) / pdf (1pp, 65 MB) / ppt (63 MB)
  5. Evolutionary Programming: biological adaptation & evolution, genetic algorithms, schema theorem (ch. 20) 
    Part 5A slides “Genetic Algorithms”: pdf (6pp, 1.4 MB) / pdf (1pp, 1.4 MB) / ppt (1.6 MB)
    Part 5B slides “Thermodynamics, Life, and Evolution”: pdf (6pp, 1 MB) / pdf (1pp, 1 MB) / ppt (1.2 MB)

  6. Autonomous Agents and Self-Organization: termites, ants, flocks, herds, and schools (ch. 16) 
    Part 6A slides “Flocks, Herds, and Schools”: pdf (6pp, 3 MB) / pdf (1pp, 3.1 MB) / ppt (3.5 MB)
    Part 6B slides “Ants, Real and Artificial”: pdf (6pp, 360 KB) / pdf (1pp, 570 KB) / ppt (740 KB)
    Part 6C slides “Nest Building”: pdf (6pp, 12 MB) / pdf (1pp, 13 MB) / ppt (14 MB) 

  7. Competition and Cooperation: zero- and nonzero-sum games, iterated prisoner’s dilemma, stable strategies, ecological & spatial models (ch. 17) 
    Part 7 slides “Cooperation and Competition”: pdf (6pp, 3 MB) / pdf (1pp, 3 MB) / ppt (3.5 MB) - Updated!
  8. Review of Key Concepts
    Part 8 slides “Review of Key Concepts”: pdf (6pp, 50 KB) / pdf (1pp, 60 KB) / ppt (250 KB) - Updated!

We will do about one topic every week or so. 


Project 1 is due Sept 11; please see the Project Description [pdf]. 
Additional helpful information is available at Kristy’s website <www.cs.utk.edu/~kvanhorn/cs594_bio/project1/ca.html>.
If you want to use my Experimental Record, it is also available [doc file].

Project 2 extended due date: Sept. 29; please see the Project Description [pdf]. 
Additional helpful information is available at Kristy’s website <www.cs.utk.edu/~kvanhorn/cs594_bio/project2/aica.html>.

Project 3 is due Oct. 20; please see the Project Description [html]
Additional helpful information is available at Kristy’s website <www.cs.utk.edu/~kvanhorn/cs594_bio/project3/hopfieldnet.html>.

Project 4 is due Nov. 5; please see the Project Description [pdf]. 
Additional helpful information is available at Kristy’s website <www.cs.utk.edu/~kvanhorn/cs594_bio/project4/backprop.html>.

Project 5 is due Nov. 19; please see the Project Description [pdf]. 
Additional helpful information is available at Kristy’s website <www.cs.utk.edu/~kvanhorn/cs594_bio/project5/ga.html>.

Project 6 is due Dec. 3; please see the Project Description [pdf]. 
Additional helpful information is available at Kristy’s website <www.cs.utk.edu/~kvanhorn/cs594_bio/project6/pso.html>. 


    Online Resources

    Return to MacLennan’s home page
    Send mail to Bruce MacLennan / MacLennan@eecs.utk.edu

    Valid HTML 4.01!This page in web.eecs.utk.edu/~mclennan/Classes/420
    Last updated:  2009-11-30.