Andrew Herbert, director,
Microsoft Research Cambridge

 As computing becomes more complicated, researchers are looking for new ways to get them to work together, to interact with the people using them, and to ‘learn’ what it is they are trying to do.

Those, broadly, were the themes of an open day at Microsoft Research, when it whisked open the doors of its Cambridge lab to journalists, academics and European bodies last week.

Microsoft opened its first research facility in Redmond 19 years ago. It now runs six research centres and two innovation centres worldwide.

Microsoft Research Cambridge opened in 1997 with just three researchers, but now employs more than 150 people, plus hundreds of interns over the summer. According to its website, this makes it “one of the largest computer science research centres in Europe.”

Director Andrew Herbert stresses that the lab does not exist just to service the company’s product groups. Its aim in life is not just to blitz a tricky problem in the latest version of Office, for example.

Instead, its mission statement starts with a commitment to advancing computer science. Although it naturally hopes that its work will turn up in Microsoft products and advance the company eventually.

Look sharp

In his keynote speech, Herbert illustrated the point by explaining the lab’s role in researching programming languages – one of its earliest and most abiding interests.

A team led by Don Syme has been developing functional languages such as Haskell (where ‘functional’ means programs are made up of sections of code that carry out specific tasks and are largely independent of the remaining code).

Even computer science encyclopaedias describe Haskell as ‘esoteric.’ Yet the idea is to make programs more concise and less buggy, by building in logical checks for errors.

Some of the ideas from Haskell have been incorporated into Microsoft’s .NET platform, and Microsoft Visual Studio 2010, which comes with its own functional programming language, F#.

Rather optimistically, Syme says on the lab website that: “In the F# team we say, ‘F is for Fun’.” He also says it is already finding applications in parallel and asynchronous computing and in fields that involving crunching vast amounts of complex data.

Roll out the Barrelfish

Getting the most out of computers with more than one ‘core’ processor – including computers that are linked together in the internet ‘cloud’ – is one of the lab’s big, current themes.

In his keynote, Herbert explained that in theory multi-core computers should be able to run software applications and solve other problems much faster than those with just one core.

In practice, however, this doesn’t always happen because of ‘latency.’ All those cores have to work out which bit of a job they are going to do and then spend time asking or even computing for the data they need to do it. In collaboration with other institutions, the Cambridge lab is working on an operating system called Barrelfish to get over this.

“The central idea is that instead of everything being available to all resources, those resources are clear about what they need to do and how they work with their data share,” Herbert explained. “If you get things in the right precedence, performance improves dramatically.”

Before the invited journalists started asking about launch dates, Herbert stressed that Barrelfish “is not about the latest version of Windows.” It is a research project exploring “the new, heterogeneous architectures that are emerging.”

This clearly disappointed some tech sites, with theregister.co.uk asking whether Microsoft was “throwing money at a rather expensive vanity project.” No, Herbert insisted. Some of the ideas being explored by Barrelfish may one day pipe into Windows; just as some of the esoteric programming research has piped into .Net, Visual Studio and F#.

From look no hands to look at my hands

More capable, faster computers are no use if people cannot use them. So Microsoft Research has been looking for new ways to “drive” them that do not involve the traditional keyboard and mouse.

At a similar open day last year, there was a great deal of excitement about ‘surface’ computing, in which people use finger and hand-gestures on a touch-sensitive screen to open applications and manipulate data. A Surface computer visited the NHS Innovation show and E-Health Insider Live ’09 last summer.

But in the labs, researchers are working on ideas such as a “system for making memories” that would allow families to scan photographs, videos, and physical objects like children’s shoes using Surface and then display them in digital scrapbooks or on digital notice-boards.

Earlier this year, Microsoft also unveiled Project Natal, which allows people to use movement and voice to control a computer – starting with the Xbox 360 games console, which will ship with the new technology from November.

Herbert pointed out that for Project Natal to work, computers need to be able to do more than just detect and track movement. They need to be able to ‘understand’ it if they are going to respond appropriately.

Microsoft Research developed a body-part recognition algorithm (or set of rules) for Project Natal that involved taking millions of pictures of people moving and ‘training’ the computer to recognise which pixels were likely to belong to which parts of a person’s body.

Learning by learning

This is an example of ‘inference’ or computers learning from data, instead of being merely programmed to respond to it. Another technology that Microsoft Research was keen to get covered was Infer.NET, which is a .NET framework for solving machine learning problems.

It allows programmers to write programs that combine machine learning algorithms with detailed, specialised information, so the computer can ‘learn’ from that data.

Infer.NET is already being used by researchers from Manchester University, who are studying 1,000 children with asthma over a period of years. Infer.NET is allowing them to write programs to handle the vast amount of data generated and to work out links between living conditions, lifestyles, medical and genetic factors.

In the demonstration area at the open day, there was another interesting example of machine learning, this time applied to digital images. Anton Criminisi has been working on another algorithm to enable a computer to ‘recognise’ organs, with a view to letting a clinician navigate a complex scan quickly, instead of working through it slice by slice.

“I have lots of anonymous scans and I have labelled these with the liver or the spleen or whatever,” he explained. “I feed these to my algorithm, and it learns how to make associations.”

The project has a long way to go. Criminisi said: “So far, I have fed it about 100 images. I hope to have ten times that number – then we will start to feel really confident in the results.”

Eventually, though, the technology could turn up in Microsoft’s Amalga Unified Intelligence System, which aggregates hospital data feeds and allows medical staff to do new and useful things with them.

Leaving the labs

With so many high-level and theoretical ideas being discussed, it was nice to see some ideas taking physical shape. One project with immediate, practical application in health may be the Sense Cam.

This is a digital camera that does not need focusing, and which hangs around a person’s neck taking a photograph every 30 seconds. It has proved very useful for people with memory disorders, including those suffering from Alzheimer’s disease.

The number of pictures taken, and the fact that the snapshots capture small, mundane details that nobody would put into a carefully-framed photograph, allow patients, carers and clinicians to review days and events; and this seems to help ‘fix’ them in the memory.

At last year’s open day, Sense Cam was still a research project. Now, it has been licensed to Oxford-based Vicon for sale as the Vicon Revue.

Microsoft researcher Alex Butler said: “We had so many people asking for cameras that we ended up making about 500 here, and that’s not really what we are geared up to do. We needed someone to commercialise it, and make it available to people who might benefit.”

Hear Lyn talk to Microsoft researchers about the Sense Cam

Listen!

Link

Enabling innovation through research