Code Yourself!

My friend, Areti Manataki, is one of the co-organisers of this excellent MOOC on Coursera, entitled “Code Yourself! An Introduction to Programming“. As the blurb on Coursera says, “Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.”

I like the emphasis on basics, and the desire to reach the broad audience of pre-college children. Many MOOCs I encounter are just college courses recycled. Instead, if MOOCs are to matter, and if they are to matter in the ways MOOCs are ambitiously advertised – i.e., in the developing world and in pursuit of helping new students who would not be otherwise served by existing formal programmes, this is the kind of entry point from which I’d expect to see progress.

I  made a small contribution to this course, by giving a guest interview about our work with the RoboCup project – as a case study. If you go to this course, you’ll find this under Unit 3 as “(Optional Video) Interview on football-playing robots [08:41]“.

Les Nouvelles

It has been a while since my last post – been busy with a slew of personal and professional obligations. In any case, mieux vaut tard que jamais. I thought I should start the year’s blogging with a summary of what is going on – things that will keep me busy in the coming months.

The year began well with notification that we have three papers at ICRA 2010. There are also a few more papers currently under review and in prep. All of this is shaping up to address a couple of major themes – how can an autonomous agent concisely summarize its understanding of a continually changing world, involving potentially infinite variability, with a view towards solving interesting decision making tasks? Moreover, given that information is limited and expensive, how can partial views be assimilated into a coherent whole and how can action be decentralized? We’re looking at these questions in two quite different contexts – humanoid robotics (dexterous manipulation, robust full body motion/locomotion) and quantitative finance (handling regime shifts, combining flexible data-driven models with traditional analytical approaches). I am looking forward to finding out where all this takes us – us being a growing team of PhD/MSc students, a research visitor, a couple of Nao robots, etc.

This semester will also see the inauguration of my role as co-PI in an EPSRC project. Looking forward to seeing where we can take that. Projects like this make me think more carefully about how the conceptual ideas at the level of individual papers lead to the larger goal – tangibly intelligent autonomous robots. There is certainly a lot more to be done…

Meanwhile, one of my PhD students, Tom Larkworthy, is busy trying to commercialize some of his robotics ideas. Along with another collaborator, he is setting out to create a robotics company around the idea of modular robotics. He has already received a bit of seed funding (from iDEAlab and ERI) to support him while he scopes out the idea and then it will be time for the real plunge. I am involved in an advisory role on his funding applications, but this is really his baby (with all of us well wishers standing by at the launch)! Watch out for them – Spectral Robotics is the name of the enterprise.

Speaking of things outside the core research domain, we (Sethu Vijayakumar, Taku Komura and myself) will be giving a talk at the Edinburgh International Science Festival entitled ‘The Road to RoboCup‘ in which we will summarize a set of ideas/results involving data-driven learning from human motion capture, synthesizing humanoid robot behaviours and teaching teams of robots to make strategic decisions in a multi-agent setting. The title is intended to emphasize my aspiration to set up what may be (to the best of my knowledge) UK’s first entry in the RoboCup Standard Platform League, perhaps by the 2011 version of these competitions. Wish us luck, because we’re going to need lots of it!

On a different note, I will be organizing a conference in the summer – ACM-BCS Visions of Computer Science 2010. We have some very distinguished plenary speakers and I am sure the contributed talks will round out the programme very well.

By now, the observant reader should be wondering why I didn’t mention teaching yet. Well, it’s because that is the one area where I feel things are somewhat settled and predictable. I’ve structured my teaching into a 2-semester sequence involving sequential decision making: Reinforcement Learning in a first semester, followed by a more sophisticated look at optimal control and other related concepts in my course entitled Structure and Synthesis of Robot Motion. RL has been a lot easier to teach than SSRM, mainly because there is no single book that quite does the job for the latter (although I must say that Steve LaValle and Howie Choset et al. have done a very good job of summarizing a good chunk of the field). I’ve occasionally toyed with the idea of putting together my own lecture notes (more than just slides and assorted handouts), to fill the gaps and tell a coherent story. However, in the middle of all of the other things, that can quickly seem like a tall order 🙂

Two TED talks to watch

As a PhD student, I was very fortunate to have had an advisor who was not just very good at guiding me through the scientific work but also very good at helping me cope with the process itself – drawing on a lifetime’s experience to provide insightful advice on how science is done and why one might wish to venture along such arduous paths. I found this incredibly useful and I sometimes wonder whether my own students wouldn’t be shortchanged on this front while waiting for me to “grow up” and have wisdom to impart.

In the meantime, I can point them to excellent resources such as these TED talks that convey some of the essential messages:

(1) Alain de Botton: A kinder, gentler philosophy of success *

(2) Elizabeth Gilbert on nurturing creativity

* Thanks to Information Economy for pointing me to the first talk.

You think you’ve got a helpful thesis advisor?

I’m about 18 months into my job as a faculty member, with student supervision responsibilities. I don’t have many pretensions about my abilities and I suspect that my first few students clearly see that I am still very much learning how to teach (hopefully, lack of special skills in this area are compensated by more personal attention).

So, today when my friend and former lab-mate, Shilpa, sent this joke to our advisor and other colleagues, I found it especially funny and reassuring – even the best of them were sort of quirky:

In Munich in the days of the great theoretical physicist Arnold Sommerfeld, trolley cars were cooled in summer by two small fans set into their ceilings. When the trolley was in motion, air flowing over its top would spin the fans, pulling warm air out of the cars. One student noticed that although the motion of any given fan was fairly random — fans could turn either clockwise or counterclockwise — the two fans in a single car nearly always rotated in opposite directions. Why was this? Finally he brought the problem to Sommerfeld.

“That is easy to explain,” said Sommerfeld. “Air hits the fan at the front of the car first, giving it a random motion in one direction. But once the trolley begins to move, a vortex created by the first fan travels down the top of the car and sets the second fan moving in precisely the same direction.”

“But, Professor Sommerfeld,” the student protested, “what happens is in fact the opposite! The two fans nearly always rotate in different directions.”

“Ahhhh!” said Sommerfeld. “But of course that is even easier to explain.”

– from Absolute Zero Gravity

Why don’t we have more case studies in graduate science/technology education?

My wife is currently in the middle of her MBA studies and deeply immersed in case studies describing the strategic choices that were made in the recent past by big-name companies. As I understand it, once they got past basic courses that taught them the core language of business, much of their education comes from directly discussing what (un)successful businesses did, and what the people in charge were thinking as they did those things.

Which gets me thinking – why did I have no courses, as part of my electrical engineering and computer science education, that formally trained me in these skills?

Now, let me a bit more precise about what I am saying. Most good schools do have case studies in their standard curriculum – people study how famous compilers and operating systems are designed, people get a glimpse of architectural choices made by the big semiconductor companies, etc. However, these kinds of technical things are the “easy” bits. As a recently minted PhD and young faculty member, the most uncertain parts of my job involve choices about strategic directions – what problems should I go after? how should I sell my effort to raise funding? how should I pace myself? If you look closely, a lot of these questions have the same basic flavour as those faced by young entrepreneurs and business leaders. However, my PhD program had no formal mechanism for training me on this.

I was fortunate to get a good bit of informal training. My advisor, who had just completed a term as Chair of the department, helped me understand how the scientific process works behind the scenes. My department ran a special course (to be taken the year before graduation) aimed at informaing us of how the academic recruitment process really works, etc. Even so, for many of the hard decisions I am having to make, it would have helped to have more perspective.

To give a concrete example from the business domain – I was just reading the Christmas edition of The Economist (catching up on some readings while recovering from a bout of flu). They had articles on everything from the Florida property boom of the 1920s to the protectionist regulations during the ensuing depression – and lessons from those events for today’s economic climate. If you were a young business leader reading all this, it would provide invaluable perspective. And this is the sort of perspective that MBAs get from their case studies.

Scientists make many similar choices, and can learn from a reasoned understanding of history in similar ways. It can be nearly lethal for a young academic to bite off more than (s)he can chew in the first few years – resulting in a lack of immediate tangible results and unnecessary loss of credibility. At the same time, not being ambitious enough defeats the whole point of the job. Yet, I don’t remember a single formal mechanism by which I was told how scientists of previous generations had managed such choices. The only stories that trickle down are popular media articles about the ‘gods’, who can’t easily be emulated by mere mortals. Hearing about these unlikely stories does more to distort than clarify the issues I am raising.

The undesirable side effect of this state of affairs, as I see it, is that most people seem to end up emulating 1-3 professors who were most influential in their PhD education and just follow through on their vision during the early years. Wouldn’t things be much more interesting if young academics were trained on strategic thinking, and trained to take well informed risks, in the same way as young business leaders?

Flatland, The Movie

Through The Alcade, I came to know about this short film made by University of Texas at Austin alumni. It is based on a very nice book by Abbott – which is over a 100 years old and serves as inspiration for more recent books such as Weeks’ Shape of Space (mentioned in an earlier post). I wonder what it must have been like for the readers when the book was first released – this was well before things like relativity and 11-dimensional universes had entered cocktail party conversations (at least, in the geeky circles). For precisely this reason – that these experiences inform people about the process of broadening one’s horizons and developing some creative muscle – I hope that this movie succeeds. Currently, it is targeted directly at school students in the US.

Enough said, here is the trailer:

Do examples really help you learn more efficiently?

A recent study on the utility of concrete examples in mathematics education has been gaining significant attention. In a nutshell, the researchers arrived at the seemingly counterintuitive result that students who were taught a particular concept using specific examples (e.g., filling water in a jug) did worse than students who were taught in terms of abstract symbols (such as “meaningless” geometric shapes being used as labels) – when measured on a new problem that tests whether they understood the underlying idea (in this case, that of a group).

Personally, I am not very surprised. I have always felt that the mere use of examples do not achieve much unless the examples are really well chosen. It is nothing short of a fine art to pick a concrete story that actually delivers a nontrivial appreciation for a deep concept. Also, I think that I would have used a different measure of “successful learning” – I’ll come back to this point shortly.

Of course, some concepts just take time and effort to get across. For instance, I have been taught the concept of eigenvalue (and its use) in numerous courses – ranging from my second year undergraduate math course (at which time, I doubt that I understood the concept at all) to a nonlinear functional analysis course I audited during the last year of my PhD studies. And I still arrive at a new(er) appreciation for the concept as I continue to learn, e.g., when I try to read bits and pieces from works such as this.

I guess what I am trying to get at is this – if you teach a student the abstract version of a concept then she learns the rules and consciously thinks about the rules each time a new problem requires their use (as opposed to a slightly more naive version of pattern matching that happens when the same concept is explained using a few limited examples). Eventually, after numerous attempts, the student gains sufficient dexterity with the concept that she begins to ‘understand’. More often, as has been famously noted by Von Neumann, one may just come to terms with a tricky concept before (possibly, eventually and really) understanding. Sometimes, the specific examples are used to short circuit the hard work that it takes to arrive at this state – which is not a great idea. There are surely instances where the use of specific examples yield quicker learning in narrow domains but there must be a careful balance with the general idea if the student is to have any hope of eventually reaching a deeper understanding. In this sense, I would not measure success by speed of learning – but instead I’d like to see how far the student manages to “stretch” based on what she has been taught.

One excellent example of a successful attempt to convey a subject area primarily using concrete examples is a book by Jeff Weeks called The Shape of Space (perhaps this is a nice counterexample to the study mentioned above). It was an absolute pleasure to read Weeks’ explanations of concepts like orientability, curvature and the structure of three-manifolds. He does a careful job of picking examples that are actually proxies for the more abstract concepts – so that a student who first reads his book and then goes on to a more serious course will surely just say, “Oh yeah, that’s just like…”! One example that particularly stands out is his explanation of the difference between one-sidedness and orientability. I can easily imagine someone in graduate school using the same basic explanation, perhaps aided by more fancy symbols. In this sense, I think that Weeks has done a much better job than more glamorous popular science books that just replace the concepts with wishy-washy analogies.

I wonder whether the same study, repeated with Weeks’ examples and corresponding problems, would yield the same results…

Group Theory in the Bedroom

I work in an inter- (or perhaps multi-) disciplinary field, which means that people come to it from a variety of different backgrounds. So, the lowest common denominator in terms of mathematical techniques and methods that can be assumed of a “typical” audience is rather low indeed. This is particularly true in the classroom because a lot of students first get interested in robotics and AI due to the “gee whiz” factor and then wonder why I am overloading them with other technical concepts – I have been wondering how best to give them a flavor for why they should dig deeper and think more rigorously – and what that lets them do in terms of the problems that come up in this area.

Recently, I came across a book (a collection of articles really) that does a very nice job of explaining some fairly sophisticated ideas in a way that serves exactly this purpose. The book entitled Group Theory in the Bedroom is written by Brian Hayes, based on his column in The American Scientist magazine. The book’s name derives from a very nice article that explains the idea behind rotation and motion groups in a way that even a high school student should be able to appreciate. It is all done using a concrete task – how do you come up with a strategy to flip your mattress so it wears out evenly. In the process, he tells you what a group is, what its properties are, what is the benefit of identifying such symmetries (you can actually make statements about the possible sequences for mattress flipping, you can ‘prove’ what is and isn’t possible, you can design efficient algorithms), etc. If a student were to understand this much and I were to tell her just one bit of further information – that Lie Groups are continuous versions of these elementary objects, then she’d already be able to appreciate the raison d’etre for an essential line of inquiry within robotics. And she may actually agree to listen to, and perhaps even read up on, the more technical material explaining the details.

This is the sort of expository skill I need to develop further, and I am pleased to find existing literature that I can dip into to get started!