Friday, December 29, 2006

Norman L. Johnson: Remember his Name (Fame!)


  • Agent: one entity in a collective group of entities that are doing something together. Agent-based models attempt to simulate how entities with (maybe) unique characteristics (like individuals in a crowd) move and make decisions together to produce unexpected collective results (like rioting).
  • Resilience or Robustness: the ability of a system to spring back from external disturbances (e.g. a city design is robust if the city can continue to function even after a bomb destroys 15% of the central streets and buildings).
  • System: A group of components working together in an organically-organized way (maybe) to operate as a collective entity with its own unique nature. Examples: the body of a bird, or a public school. This is a larger topic which I’ll address in a future post.

Ok, this is really disturbing. Lots of people do not seem to know about Norman L. Johnson. Even my friend who arguably knows way more than me about social systems has, reportedly, not heard of him.

Inconceivable! Norman L. Johnson produces fantastic stuff. He’s a researcher at the Los Alamos National Laboratory. Even intermediate-level readers can get usable fundamental conceptual building blocks r.e. systems theory and collective intelligence from his papers.

Here, for example is a reference to his work on the uses of diversity in social systems. (The following explanation refers to an article that I’m pulling out of my memory, not specifically to what’s in that link, so there may be some incongruencies.) Johnson shows that systems move through three lifestyle phases, where they show varying degrees of productivity and robustness.

When I reference these concepts in conversation (which I do a lot); I typically use the example of a social system of house builders. Here is how that system might evolve:

  1. Formative (infant) stage:

You pluck 30 house builders out of the ether, throw them together in the woods, and tell them to start building 2-bedroom, 1-story houses.

These individuals (or "agents") haven’t worked together before. Their roles aren’t defined (What are my duties?), their relationships aren’t defined (Who do I like? Who do I take orders from?), and the process itself isn’t defined (What materials? What layout?). This system of people will build fairly mediocre houses (poor productivity), but will be highly creative (everything is experimentation until something works), and very robust (change the circumstances, change the goals, and they can easily switch gears).

  1. Mature stage:

The same builders have been working together for six months.

They’ve done this enough that they’ve established some processes that work. Joe mans the nailgun. Mary monitors the resources. Barry lifts the heavy stuff. Alice and Bill don’t work together or they bicker. However, not all of the combinations of roles, relationships, and system processes have been tried yet, so experimentation is still taking place. Thus, this system of agents is now fairly productive (but not maximally productive), but still pretty robust. If you suddenly swap out 30% of the workers with new people, the group can still shuffle itself around and adapt.

  1. Senescent (geriatric) stage:

The same builders have been working together on the same project, in the same environment, for ten years.

This group is incredibly efficient. They have tried everything, and they now know the optimal, maximally-productive way of producing 2-bedroom, 1-story houses in the woods. They know exactly what their roles are when they show up to work without thinking about it at all; they haven’t had to experiment in years. The tradeoff for this productivity is a sore deficiency in robustness. If you up and airlift this crew to New Mexico and tell them "Now build me 4-bedroom, 2-story houses in the desert," they will just plain fail. The system will break.

You can use these simple concepts to extraordinary effect in interpreting the behavior of, for example, neural nets, agent-based models, or your local PTA meetings.

Here are lots of Norman L. Johnson's publications. His credentials are scary-impressive, but his writing is sublimely intelligible and accessible to Even Normal People Like You. I’ll probably be cracking some of his articles back open and overviewing them here (eventually).

So that's who Norman L. Johnson is. All right? All right.

Thursday, December 7, 2006

Metacognition: Helping People be Stupid in Public Forums

As of this entry, I’ll be kicking off posts by summarizing any new vocab words up front for newbies; other folks can scan past them.
  • Newbie (or n00b): a newcomer to a field. Internet lingo term used sometimes amiably, sometimes as a pejorative. : )
  • Meta: a tricky concept. A “meta” idea is, roughly, an idea that is about a subset of itself. For example, “How Joe writes blogs” is meta to its subset, which is “how Joe’s Dec 11, 2006 blog entry is written.” The first sentence in this entry (about putting term definitions in blog entries) is meta to this list.
  • Metacognition: the study of how we think (i.e. thinking about how you think about things). When you take classes on how to study, or meditate to observe and silence your thoughts, that’s a metacognitive process.

Metacognition is particularly interesting to social systems folks, because we treat crowds as a kind of semi-thinking organism which may be influenced and eventually trained. When an individual learns how to learn (i.e. gets meta to learning), he greatly magnifies his operational intelligence. When an individual learns how people learn, or how they reason or make decisions, she becomes able to create very influential (even Machiavellian) political policy, for example, or social software.

I recently stumbled on an excellent, highly intelligible blog called Creating Passionate Users. It focuses on metacognition, with an emphasis on using metacognitive tools to achieve goals in various computer/network applications.

Last week (Dec 3) featured an interesting post is called How to Build a User Community (pt 1) by Kathy Sierra. Sierra proposes a way to encourage participants to stay active, learn, and feel needed in online user forums as those people move slowly up the ranks of expertise. It could, though, just as easily be applied in a number of other organizational situations.

Her suggestions focus around encouraging late-beginner-to-intermediate users to try to answer (the inevitable flood of) newbie questions in public forums, without fear of being looked at as foolish if their answers are wrong. I like this: it’s an approach that encourages smooth and circular information flow, while capitalizing on some inherent human drives (to not look stupid or be irritating, to participate, to be useful.)

Here are her main points; see the blog for a full explanation. There’s also a lengthy scroll of reader discussion at the bottom.

  1. Encourage newer users–especially those who’ve been active askers–to start trying to answer questions
  2. Give tips on how to answer questions
  3. Tell them it’s OK to guess a little, as long as they ADMIT they’re guessing
  4. Adopt a near-zero-tolerance “Be Nice” policy when people answer questions
  5. Teach and encourage the more advanced users (including moderators) how to correct a wrong answer while maintaining the original answerer’s dignity.
  6. Re-examine your reward/levels strategy for your community