Share this page
Share this page E-mail this page Print this page RSS feeds
Home > News > Microsoft Research Cambridge’s Dynamic Decade
Microsoft Research Cambridge’s Dynamic Decade
By Rob Knies
July 9, 2007 1:00 AM PT

What will the world look like in 2017? Hard to say, but one thing’s for certain: It will have been significantly transformed by Microsoft Research Cambridge.

How do we know that? Simple extrapolation. Consider some of the grand challenges the lab has addressed over the last 10 years:

  • Using hardware and software to enhance people’s everyday lives.
  • Exploring new kinds of scientific inquiry.
  • Enabling computers with the ability to perceive and react.
  • Devising better tools for software developers.
  • Making large systems more robust.
  • Supporting research growth and achievement.
  • Improving collaboration with customers and partners.

Oh, and the Cambridge lab has a splendid track record of transferring technology into Microsoft products, as well.

It’s an impressive list of accomplishments, certainly one Microsoft Chairman Bill Gates would commend.

“We are not even close,” Gates has said, “to finishing the basic dream of what the PC can be.”

Microsoft Research is one of the key innovators in making that dream a reality, as Rick Rashid, senior vice president of Microsoft Research, can attest.

“It is here, outside of the sphere of Microsoft product development, where some of the most intriguing scenarios for information technology are being conceived and pursued,” Rashid says. “As demonstrated by hundreds of inventions that have advanced computer science and enriched Microsoft products, our team is rich with talent and widely recognized among our peers in academia and beyond.

“Needless to say, some of the most exciting work Microsoft Research has pursued over the past 10 years has emerged from our Cambridge lab.”

Ten years. In geologic time, it’s a blink of an eye, but in human terms, it’s sufficient to enable a relatively small number of people to make a disproportionate impact. That, says Andrew Herbert, Microsoft distinguished engineer and managing director of Microsoft Research Cambridge, is no accident.

“Our priority at Microsoft Research Cambridge is technical excellence,” Herbert says. “By assembling a team of leading researchers in computer science, computational science, social science, and mathematics, we have established an outstanding and highly productive European research center.”

Parse the preceding sentence, and what you get is this: Great people produce great research. The level of technical excellence residing within the Cambridge lab is astounding. No brag, just fact. For instance, Tony Hoare, a principal researcher at Microsoft Research Cambridge, is a winner of the A.M. Turing Award, generally considered the top honor in the computing field. In 2000, Hoare also won the Kyoto Prize, recognizing outstanding work in the field of advanced technology. The same year, he was knighted for his contributions to education and computing science.

Andrew Blake, another principal researcher at Microsoft Research Cambridge, was the co-winner of the 2001 Marr Prize, the top award in computer-vision research, along with colleague Kentaro Toyama, assistant managing director of Microsoft Research India. Andrew Fitzgibbon, a senior researcher at the Cambridge lab, has shared in two Marr Prizes: one in 1998, another in 2003.

The list goes on: Luca Cardelli and Simon Peyton-Jones, principal researchers at the lab, are fellows of the Association of Computing Machinery. Hoare, Blake, and Cardelli are fellows of the Royal Society, and colleague Christopher Bishop is a fellow of the Royal Society of Edinburgh. Blake, Bishop, and Hoare are fellows of the Royal Academy of Engineering.

Add to this an outstanding array of scientists working in a broad array of research areas, and what you have is a collection of nearly 100 talented individuals who constitute one of Europe’s—the world’s—most pre-eminent research facilities. Herbert is justifiably proud.

“We have an amazing team of talented, smart people from around the world,” he says, “committed to research and seeing the results of their research taken into Microsoft products that impact the lives of millions of people.”

That impact has taken many forms. A few of the numerous innovations to have emerged from Microsoft Research Cambridge over the past 10 years:

  • Major contributions to the .NET Common Language Runtime, including state-of-the-art verification techniques and support for generic functions and functional programming languages.
  • A raft of networking technologies, including the Windows Vista® network mapper and Transmission Control Protocol improvements.
  • The Vigilante automatic Internet worm detection and removal system.
  • Multicore system research, including software transaction memory and data-driven programming models.
  • The application of machine learning to gaming, resulting in dazzling advances in Forza Motorsport™ and Xbox Live®.
  • Intensive work in search technology.
  • The first automated proof of the Four-Color Theorem, a conjecture that had stymied mathematicians since 1852.
  • F#, an exciting new programming language for symbolic processing that is reaching critical mass in financial analysis and scientific programming.
  • SenseCam, a wearable digital camera that takes photographs without user intervention and which is proving a boon to patients with memory loss.
  • SPiM, a code name for tools that model biological systems with pi-calculus.

Add to that an illustrious list of external and internal collaborations and a flourishing history of technology transfer, and you have an organization serving not only as a valuable corporate asset, but also as a valued partner in the European and international research communities. Microsoft Research Cambridge inaugurated the Microsoft European Research and Innovation Day, which has become an annual flagship event for Microsoft Europe.

“We are,” Herbert states, “Microsoft’s leading source of innovation stories in Europe.”

Herbert is assisted in running the lab by a pair of deputy directors, Bishop and Ken Wood, who also each head one of the lab’s four research areas.

LIVING WITH TECHNOLOGY

Wood leads the Computer-Mediated Living group, which investigates new kinds of hardware and software to enhance people’s everyday lives. The group includes experts from the fields of psychology, sociology, design, computer science, and hardware engineering. These researchers are divided into three teams:

  • Socio-Digital Systems: The essence of this research is observing what people do in everyday life and considering how technology can enhance their experience without taking it over. The work focuses on the physical and social world to inform the design of new hardware and software systems that often result in entirely new kinds of artifacts.
  • Sensors and Devices: All aspects of embedded hardware are addressed by this team, which examines a wide range of interests, such as sensors, novel displays, wireless communication, and ubiquitous and mobile devices. The team aims to create solutions of direct relevance to both users and the research community.
  • Integrated Systems: Taking advantage of complementary research areas to achieve more effective and natural use of computer technology, this team tries to integrate algorithms, designs, and technologies that stem from multiple ideas and research areas.

“People used to talk about software design in terms of user friendliness and making people productive and efficient,” says Abigail Sellen, senior researcher. “Our group recognizes a more diverse set of human needs and values—using technology not so much to solve problems but to create new experiences that people find motivating and compelling.”

HELPING COMPUTERS PERCEIVE AND REACT

The Machine Learning and Perception group, led by Bishop, conducts research in four closely related areas:

  • Machine Learning: Using the Bayesian approach, this team employs statistical techniques to enable a computer to learn appropriate solutions for analysis of large, complex data sets. Among its projects is research into bioinformatics, an attempt to develop new methods for genome-level analysis of DNA data to discover genetic factors behind common diseases.
  • Applied Games: The goal of this team is to enable game characters and virtual environments to react in the way players would expect. Game research focuses on behavior capture to replicate human-like abilities in game interaction, interactive dynamics of entities in complex systems, learning about people’s reputations to improve trust, and automatic knowledge about people’s skill and preferences to improve matchmaking and game play.
  • Computer Vision: Probabilistic inference and learning informs an approach that spans the range from theory to practice. Modeling of texture has led to image-editing tools that remove unwanted details from an image. Object-recognition research includes a camera system that labels objects in real time as they appear in view. Three-dimensional structure analysis has produced a new kind of Webcam that reacts to the subject of a scene while ignoring the background, as well as new tools for 3-D editing of videos.
  • Information Retrieval: Core search processes such as term weighting, document scoring and ranking algorithms, and combinations of evidence from different sources are used to develop more accurate, fast, and advanced information retrieval and search techniques. This team has had a powerful influence on Microsoft’s search technologies.

“By helping machines to see and learn by themselves,” says Antonio Criminisi, a researcher in the Machine Learning and Perception group, “all kinds of scenarios for computer-assisted living open up—blind people who work more safely in cities, machines that learn their operators’ likes and dislikes, cameras that take the perfect shot in all conditions, security cameras that detect suspicious behavior and alert the police. All of these will one day become reality.”

BETTER TOOLS FOR SOFTWARE DEVELOPMENT

Cardelli’s Programming Principles and Tools group develops techniques and models for understanding programs, programming abstractions, and languages, as well as advanced techniques and tools for software development. Specific research areas include:

  • Programming Languages: Researchers are investigating new language features, new language paradigms, efficient implementation, and various tools for reasoning about program correctness.
  • Formal Software Verification: Formal specifications and reasoning principles are used to establish correctness, with research ranging from work on new formal models to automated and semi-automated tools to assist programmers.
  • Concurrency: Concurrent programming, an increasingly important factor for today’s emerging multicore processors, is difficult to design, write, understand, and fine-tune. This team attempts to treat concurrency as a language feature, not as a collection of under-specified external libraries.
  • Security: Studies are analyzing various aspects of security in relation to computer systems. Areas under investigation include the design and the analysis of cryptographic protocols; the design of secure systems; the relationship between security and privacy; and the usability, the evaluation, and the certification of security products.

“The ultimate goal behind automated software verification is to remove the uncertainty we feel when using software,” says Byron Cook, a Programming Principles and Tools researcher. “Software should not crash, and it should not hang. It should be reliable and always available to respond to events. If software ‘just works,’ then it will have an exponentially more profound impact on our society and economy.”

OPTIMIZING LARGE-SCALE SYSTEMS

The Systems and Networking group, co-led by Peter Key and Paul Barham, both principal researchers, covers a broad span of research, from improving the performance of individual computers to designing novel distributed systems that can scale to hundreds of thousands of hosts. This multidisciplinary group designs, builds, and analyzes systems in three overlapping subdivisions: systems, networking, and distributed systems. Research areas include:

  • Enterprise Network Management: This team investigates network and systems management from the edges of the network, focusing on enterprise network management. The team aims to build a network-management platform based around two main components: end-system flow monitoring, providing inputs to the system, and monitoring of network routing protocols, providing current system configuration.
  • System Reliability: This work considers the dependability of a product, both before and after its release in the marketplace. Researchers are investigating the characteristics of multiple versions of software, with the resultant data being used to develop risk-prediction models and models to predict the release of the product.
  • Peer-to-Peer Networking: The objective is to transform the peer-to-peer phenomenon into a vehicle for distributing legal content and provide the best possible solution with regard to security, reliability, speed, and bandwidth. To make the systems more robust and to enhance the user experience, the team has developed special coding techniques that greatly simplify content distribution.
  • Concurrency and Multicore Computing: Complementing the research by the Programming Principles and Tools team, these researchers investigate how changes to programming languages, runtime systems, and operating systems can help address the need for better use of parallel processing to increase computation speed and the need for improved use of input/output devices.
  • Constraint Reasoning: The goal of this team is to develop the next generation of optimization technology to accompany the development of future software applications that rely on automated reasoning. The research in this area addresses two main challenges: Optimization technologies must be usable by mainstream software developers, and such technologies must become highly scalable to accommodate increasingly high volumes of data.

“Networks have always been about creating connections that enable communication, rather than the underlying technology itself,” Key says. “The tremendous popularity of Internet-based social networks has re-emphasized the value of networks as enabling technologies. Our work involves getting systems and networks to work more intelligently, unseen by the user, making new forms of communication and applications possible.”

ACCELERATING NEW KINDS OF SCIENCE

The European Science Initiative, directed by Stephen Emmott, is committed to advancing new areas of research at the intersection of computer science and the life sciences. It has been instrumental in bringing together teams of researchers from within and outside of Microsoft in pursuit of an ambitious research agenda, including Towards 2020 Science, a new vision for the evolution of computer science and computing in scientific research through 2020. The European Science Initiative focuses on four research areas:

  • Computational Biology: The operating theory behind this work is a belief that computer science is poised to become as fundamental to biology as mathematics has become to physics. A growing awareness among biologists that understanding cells and cellular systems requires viewing them as information-processing systems provides a foundation for new, fundamental developments in biology, biotechnology, and medicine.
  • Computational Ecology and Environmental Science: The goal of this focus is to work with the scientific community to identify critical problems in predicting and mitigating the rapid changes occurring in the earth’s life-support systems because of human activities and to develop novel computational methods and tools. Issues include managing and integrating massive amounts of environmental data, developing new data-analysis and visualization methods, and developing predictive models of biotic and physical systems.
  • Natural Computation: The next revolution in computing could stem from what can be learned from biology and how nature created such systems. Challenges for future computing systems have elegant analogies and solutions in biology, such as the development of complex systems, resilience and fault tolerance, and adaptation and learning.
  • Information interaction: With computers having evolved from simple assistants to highly integrated conceptual and computational tools, new techniques can be developed for scientists, enabling them to ask unprecedented questions without being bound by constraints of time and human bandwidth.

“To respond effectively to the global environmental pressures we face today,” says Rich Williams, head of the Computational Ecology and Environmental Science group, “a deeper understanding of the complex network of living systems on Earth is essential. Progress will be underpinned by novel computational tools and techniques—from tools to integrate diverse sources of ecological data to new methods for modeling biological systems.”

‘PASSIONATE, COLLEGIATE, AND SUPPORTIVE’

For Herbert, leading a lab with the sort of talent and breadth possessed by Microsoft Research Cambridge is simply a dream come true.

“It’s a really easy organization to manage,” he says. “The research leadership team is passionate about research, open and collegiate in its approach, supportive to the directors. My boss leaves me alone to get on with my job. And we get great delivery and commitment from the operations teams, also: communications, finance, facilities, human resources, IT, and administrative staff.”

Why is the Cambridge lab likely to continue to thrive? Herbert cites “the openness and academic excellence of a university laboratory combined with the business drive and entrepreneurial spirit of a young high-technology company.”

“Two years ago,” he says, “the lab effectively reached critical mass in all areas and started to see results coming in from new initiatives started since 2003. The tempo really picked up, and the impact of the lab on Microsoft has become truly amazing.

“We’ve never been so busy and never had so much going on.”

Sounds like a firm foundation for the next 10 years.