This work represents a continuing effort to make parallel-distributed processing models accessible and available to all who are interested in exploring them. The initial inspiration for the handbook and accompanying software came from the students who took the first version of what I called “the PDP class” which I taught at Carnegie Mellon from about 1986 to 1995. Dave Rumelhart contributed extensively to the first edition (McClelland and Rumelhart1988), and of course the book incorporated many of the insights and exercises that David contributed to the original PDP Books (Rumelhart et al.1986McClelland et al.1986).

In the mid-1990’s, I moved on to other teaching commitments and turned teaching of the course over to David Plaut. Dave used the PDP handbook and software initially, but, due to some limitations in coverage, shifted over to using the LENS simulation environment (Rohde1999). Rohde’s simulator is very fast and is highly recommended for full strengh, large-training-set, neural network simulations. My lab is now maintaining a version of LENS, available by clicking ‘Source Code’ at this link.

Upon my move to Stanford in the fall of 2006 I found myself teaching the PDP class again, and at that point I decided to update the original handbook. The key decisions were to keep the core ideas of the basic models as they were originally described; re-implement everything in MATLAB; update the book by adding models that had become core parts of the framework as I know it in the interim; and make both the handbook and the software available on line.

The current version of the handbook is a work in progress. As of Fall, 2011, a new version of the software is under development. The present version of the handbook is consistent with the current version of the software, version 2.06, released in April, 2011. Information on installation of the software is provided in Appendix A. Appendix B presents a step-by-step example showing how a user can create a simple back-propagation network, and Appendix C offers a User’s Guide, approximating an actual reference manual for the software itself. The hope is that, once the framework is in place, we can make it easy for others to add new models and exercises to the framework. If you have one you’d like us to incorporate, please let me know and I’ll be glad to work with you on setting it up. Reports of software bugs or installation difficulties should be sent to

Before we start, I’d like to acknowledge the people who have made the new version of the PDP software a reality. Most important are Sindy John, a programmer who has been working with me for nearly 5 years, and Brenden Lake, a former Stanford Symbolic Systems major. Sindy had done the vast majority of the coding in the current version of the pdptool software, and wrote the User’s Guide. Brenden helped convert several chapters, and added the material on Kohonen networks in Chapter 6. He has also helped tremendously with the implementation of the on-line version of the handbook. Two other Symbolic Systems undergraduates also contributed quite a bit: David Ho wrote the MATLAB tutorial in Chapter 1, and Anna Schapiro did the initial conversion of Chapter 3.

It is tragic that David Rumelhart is no longer able to contribute, leaving me in the position as sole author of this work. I have been blessed and honored, however, to work with many wonderful collaborators, post-docs, and students over the years, and to have benefited from the insights of many others. All these people are the authors of the ideas presented here, and their names will be found in references cited throughout this handbook.

Jay McClelland  
Stanford, CA  
September, 2011