NKS Summer School

Blog Post

We've just finished the intense first week of our fifth NKS Summer School. Every year I get to spend three weeks playing professor. It's not the same experience that most academics get, not least because our CEO, Stephen Wolfram is part of it, pushing to get science done, and to get the students to do great projects based on A New Kind of Science.
We get applicants for the summer school from all over the world, from all fields and all academic levels. Students are selected on their abilities, interests, and enthusiasm. The center of the distribution is graduate students, but we always have some younger people, and some much more experienced people--both from academia and industry.
Here is a photo of this year's class outside of the University of Vermont, our venue for this year's summer school:

We' ve developed a pretty good system for the summer school.There' s a background of lectures, but the core of the summer school experience is for each student to do an original research project.Of course, it helps that NKS is a young and very energetic field, full of exciting problems to be solved.But the most critical part is that Stephen is a great project generator.This last week he met with every student, defining a project for each of them to do.It was quite a process, jumping between linguistics, ecology, mathematics, computer systems, architecture, and much more.In each meeting, Stephen tries to understand what the students are interested in and what their bigger goals are.Then he tries to define a project that meets their interests and goals.I am always amazed at how he manages to find interesting questions in each area so quickly.More often than not, these questions lead to whole research programs which go well beyond the three weeks of the program and can last years.These meetings are best described as brainstorming between the students and Stephen, which makes for an unique educational experience.The projects sometimes seem to arise out of the blue, and they quickly get developed into new, original research directions with spontaneously generated momentum.It is the main idea of the summer school to get people started doing NKS research.For young students, this is often their first research experience.The more experienced students are often looking for a new direction in their research careers.

Most students are surprised at how down-to-earth Stephen is, and I like to think they are all encouraged by him to do top-tier science. Sometimes the project meetings go on for longer than planned, with lots of different possibilities being investigated. Since I try to keep the schedule on track, that can sometimes be nerve-wracking.
The summer school is a public service done by Stephen and Wolfram Research. He donates his time and the company provides instructors (this year there are eight instructors). The tuition is free, which helps us attract students from all over the world.
This past week, Stephen did three "live experiments" for the summer school. A live experiment is just that--an experiment done in real time, in front of an audience, with no preparation and no guarantees that things will work out as expected.
It is worth pointing out our modern tools are what make live experiments possible--in particular, Mathematica 6. A "pure NKS" experiment usually starts with a particular class of simple programs to explore---a corner of the computational universe. One quickly writes code to run these programs, perhaps using Mathematica functions like CellularAutomaton and TuringMachine. Next one needs visualization tools, which often involves only one line of code (say with ArrayPlot). There are many ways to go, but the dynamic visualizations available in Mathematica 6 let us write one-line functions to dynamically perform the live experiment (in particular with Manipulate). 
It is worth pointing out that once a Manipulate is written, we are only a few more steps away from online publication in The Wolfram Demonstrations Project. By the time Stephen is done, we have basically gone from concept to publication.
In a sense, it is meta-education--a way to see someone like Stephen figure out things in real time, mistakes and all.
The summer school lasts for three weeks. In the first week, we had lectures covering the foundations and practical issues.
Now, in the second week, students turn in their homework and start work on their projects. This year the homework is to find their favorite three-color outer totalistic cellular automata. During the second week the lectures become slightly more specialized while students work on their projects. In the third week, their projects are completed, made into posters (also using Mathematica 6 technology), and presented at the end.
This year, using Demonstrations, there is a new way to supplement the normal publishing of results. So expect to see a sequence of Demonstrations from the summer school arriving soon... as well as some exciting final results

Talk

The summer school has been our big experiment with NKS education.  How do we take NKS, a new science
whose methods have not really been defined over time the same way as traditional science, and whose methods
have been used for the purposes have been for pushing the boundaries of research, how do we take
NKS and present it in a relatively static educational setting?

We do the usual thing, and just do what we know.  The main point of our summer school is to get people
involved in doing NKS research, and so at the summer school, the main focus is on individual
research projects.  We also have the advantage of having Stephen Wolfram as the meta-advisor.

It's one of my favorite times of year.  We have held it for three years now, going on a fourth.  So far,
it has been a three week program held at Brown University.

Here are the group pictures from the previous years.

Grid[2002+{{1,2},{3,4}},Dividers->All]

GraphicsGrid[Partition[Import/@{"C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\GroupPhoto2003.jpg","C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\GroupPhoto2004.jpg","C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\GroupPhoto2005.jpg","C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\NKSSSclass07.gif"},2]]

As you can see, the students range quite a bit in age and backgrounds.

It is an intense period of NKS activity. 
We get together a good group of instructors and students. 
The students work on research projects.  
The instructors help out and give lectures.
Stephen Wolfram helps pick the student projects and also gives some lectures.

I want to talk about what we do at the summer school, who the students are, and how things
get organized.

There are three things that go on.  As I have already mentioned, the main thing is that every student does an individual
research project related to their field or interests.  The second thing is that we have
lectures.  The third thing is that we assign a homework.

The idea of the homework is for each student to pick their favorite rule.  
We pick the rule space they are to search in, making sure the space is large enough so that
each student's rule can be unique.

For instance, in the second year we looked at the space of cellular automata with radius 2 rules and 2 colors which contains approximately 4 billion rules (2^(2^(2r+1)) )≃4294967296 .

Here are a few samples, chosen at random, from the student's favorite choices.

This year the students explored the space of outer-totalistic 3 color cellular automata.

We encourage the notion of private ownership, and that is one way to get people engaged in their research.
The homework also encourages the students to go out and look for solutions be just searching.  That is
what we teach is the right way to begin a project, and could even be most of the project.

Spin-offs include learning how to filter out things like cyclic or nested behavior, or even just filter out 
things that they have seen already.

Moving onto the lectures.

Even though we want the students to do great projects, we take the opportunity
to transform what we know into a lecture series.  At the beginning the lectures concentrate on what students
need to know, and then become more eclectic, until eventually they are about the instructors research interests.

This is the schedule from this year.

Personally, I find it interesting to hear the other instructors take on basic NKS issues.  For some concepts,
they are very well-defined in the NKS book, and the instructors just have to put them in their own words.

But other concepts are really part of the boundary of what is known, and that is also interesting.

Before I get too distracted, let me show you some highlights of past lectures.

Grid[Partition[Text/@{"JasonCawley-SocialSciences","MattFrank-Perception","OyvindTafjord-Randomness","SethChandlerMathematica"},2],Dividers->All]

GraphicsGrid[Partition[Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\"<>#<>".jpg"]&/@{"JasonCawley-SocialSciences","MattFrank-Perception","OyvindTafjord-Randomness","SethChandlerMathematica"},2],ImageSize->500]

These are from notebooks that can be found online at

http://www.wolframscience.com/summerschool/materials/

The main focus is on the research projects, and these go through three phases, corresponding
to the three separate weeks in the program.

The first week each student is assigned to an instructor who serves the role of advisor. Our
expertise has a limited range, so all we expect is that the advisor will help with the 
ideas and methods from NKS, while having some passing, generic knowledge of the field in
question.

The choice of project is one of the most important parts of the program.  We are lucky to
have a great problem generator in the form of Stephen Wolfram himself.  Together with the
student and advisor, he is usually able to quickly find a suitable project.  The project 
should be something interesting, something do-able and something connected to the students
interests.  We have found that it is easier for us to simply assign projects, but the 
projects are more successful when it is related to the students interests.

By the end of the first week, each student has started on their project.  Each of these 
projects involves computer experiments, and these all get done using Mathematica.

By the end of the third week, each student has gotten some concrete results and put together a poster presentation.

You will be able to see some of these tonight in the poster presentation.

Here are a sample of the project descriptions from the website.

Speaking of the website, for more information you can go to wolframscience.com and click on the summer school.

code

Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\GroupPhoto2005.jpg"]

Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\GroupPhoto2004.jpg"]

Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\GroupPhoto2003.jpg"]

StringDrop[#,64]&/@FileNames["*.gif","C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\"]

calist={#,Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\"<>#<>".gif"]}&/@{"AtilimCA","LetourneauCA","MeierCA","NochellaCA","ZawidzkiCA","ZenilCA"};

StringDrop[#,64]&/@FileNames["*.jpg","C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\"]

lecturelist={#,Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\"<>#<>".jpg"]}&/@{"JasonCawley-SocialSciences","MattFrank-Perception","OyvindTafjord-Randomness","SethChandlerMathematica"};

Grid[Partition[Underscript[#[[2]],Style[Text[#[[1]]],20]]&/@calist,3]]

Grid[Partition[Underscript[#[[2]]/.(ImageSize->_)->(ImageSize->{400,200}),Style[Text[#[[1]]],20]]&/@lecturelist,2]]

ls@@Rest[lecturelist[[4,2]]]

materials=Import["C:\\Documents and Settings\\Todd Rowland\\My Documents\\My Pictures\\EducationalMaterials.jpg"]

Row[{Column[{%50,%49}],%48}]