Log on:
Powered by Elgg

TNDY 402I Networks, Discourse, and the Growth of Knowledge :: Blog :: A great example of population thinking

September 04, 2008

A great example of population thinking
  • Currently /5

Avg rating: 5.0 - based on 2 ratings

5 Stars 2
4 Stars 0
3 Stars 0
2 Stars 0
1 Star 0
   * Includes your rating
--(Log in to rate this blog post!)--

Jackie Elam asked me to provide some background information on population thinking.  I will pass on some more analytical material later but I wanted to note a terrific example that just fell into my lap today. This example takes a bit of explanation, but stay with me, we end up looking at some cool movies (not of Clay Shirky, either).  If you want all the background and details, look at this article, more extensively documented with this technical paper and videos

Stanford University has been working on robotic helicopters for many years.  (They also have a great research program in robotic cars.)   Flying a helicopter is a hard problem because as expert pilot Garett Oku says "The helicopter doesn't want to fly. It always wants to just tip over and crash".  The Stanford team created robot helicopters that solved that problem -- they could fly reliably.  However the team couldn't program their robots to do the complex acrobatics that human pilots can -- manuvers with names like  traveling flips, rolls, loops with pirouettes, stall-turns with pirouettes, knife-edges, Immelmanns, slappers, inverted tail slides, hurricanes and tic tocs.  

Further the team "realized that even defining their goal was difficult." There's no formal definition of "flying well" -- it is "whatever an expert... pilot does at an airshow."  This is the same as complex gymnastic manuvers, diving moves, etc. -- good performance can only be defined by the judgments of expert practitioners -- until now.  Like many real categories, even the experts can't describe a perfect tic toc, but they know it when they see it, and they pretty much agree.  

So the Stanford team realized their robot had to learn its complex manuvers by "watching" the expert pilot put a helicopter through the manuvers.  The pilot (Oku) flew a manuver multiple times and the researchers recorded each time.  The learning software found the similarities between the multiple instances of the manuver and developed an "ideal" version of the manuver.  Then it could try to perform the "ideal", but due to wind, control variations, etc. its actual performances would always be imperfect.  

Now as promised, some cool pictures:

So here we see a clear example of population based concept learning.  We start out with a bunch of named concepts.  Each concept has a clear definition in the minds of an experts, but the expert can only give us a "population" of examples to explicate the concept.  Then our robot takes that "population" and finds the "ideal type", but once again when the robot wants to explicate its ideal type, it ends up generating a variety of imperfect examples due to its inherent performance limitations.  

If we tested multiple experts, they probably would each have somewhat different but similar "ideal" definitions.  Similarly if multiple robots learn the definitions from lots of examples they will probably end up with slightly different "ideals" but will usually agree in practice, for example when judging a competition.  

Update:  Here's the basic idea again, this time in "tech speak" extracted from the paper.  This is partly for amusement value and partly an illustration of a very different way to encode the concept:

...one can... have the expert demonstrate the desired [behavior]. .... Unfortunately, perfect demonstrations can be hard (if not impossible) to obtain. However, repeated expert demonstrations are often suboptimal in different ways, suggesting that a large number of suboptimal expert demonstrations could implicitly encode the ideal trajectory the suboptimal expert is trying to demonstrate.

Note that this slightly misses the key point of population thinking.  The writers assume that there is an optimal demonstration -- which would imply that there's an ideal version of the manuver out there somewhere.  But actually the population of examples is fundamental, and the "ideals" are constructed as summaries of those populations.  

Posted by TNDY 402I Networks, Discourse, and the Growth of Knowledge - Jed Harris


Comments

  1. I really enjoyed reading your post. You explain concept of population based learning interestingly. Somehow when I read about skills of experts, it reminds me of tacit knowledge. Sometimes we can't explain this knowledge because it's inside and come out with individual skills.

    Sumonta KasemvilasSumonta Kasemvilas on Sunday, 07 September 2008, 20:05 Pacific Daylight Time # |

  2. Excellent point, Sumonta.  I agree that in a human this would be tacit knowledge.  Human language has no way to represent the trajectories the system has recorded, its "ideal" trajectory, or the control strategy that is generated to keep the helicopter near the ideal trajectory. 

    This gives a pretty good feeling for why so much human knowledge is tacit.  When apprentices learn complex skills their internal representations are essentially impossible to code into natural language.  

    Jed HarrisJed Harris on Sunday, 07 September 2008, 21:01 Pacific Daylight Time # |

You must be logged in to post a comment.