Summer School 2008


group_photo.jpgThe third Microsoft Research Summer School was held at Microsoft Research in Cambridge, U.K., on 7 July through 11 July 2008. It included a series of talks of academic interest and posters sessions that gave invited students the opportunity to present their work to Microsoft researchers and a number of Cambridge academics.

The 2008 Summer School was organised in partnership with the Cambridge University Computer Laboratory. Invited students included all first year PhD students of the Computer Laboratory and all Microsoft Research 2007 PhD Scholars.

Lectures and posters sessions were public and open to all research staff and students from the University of Cambridge.


Tuesday, 8 July 2008

Research career – Industry vs. academia, Andrew Herbert (Microsoft Research)

How to write a great research paper, Simon Peyton-Jones (Microsoft Research)

How to give a great research talk, Simon Peyton-Jones (Microsoft Research)

Writing papers and giving talks are key skills for any researcher, but they aren’t easy. In this pair of presentations, I’ll describe simple guidelines that I follow for writing papers and giving talks, which I think may be useful to you too. I don’t have all the answers – far from it – and I hope that the presentation will evolve into a discussion in which you share your own insights, rather than a lecture.

Presentations of past students:

Peer-to-Peer systems have received a lot of attention in recent years. The key property of Peer-to-Peer systems is self-scaling, i.e. as more peers become part of the system not only the service demand increases but also the service capacity. The research community has shown an increasing interest in the use of P2P systems for file storage. This application can be very attractive for two main reasons: (i) centralized solutions are expensive (ii) common PCs are equipped with high-capacity local disks, often underutilized. The design of a Peer-to-Peer storage system is not a trivial task and presents a considerable number of challenging problems. I will illustrate briefly some of the issues involved, explaining some of the solutions I proposed so far during my Ph.D. thesis.

  • Generalizing the discrete analyses of genetic networks using constraints, Fabien Corblin (Université Joseph Fourier)

Our work generalizes the current existing discrete approaches for analyzing the properties of genetic networks as proposed by Thomas using concepts that are available in constraint programming (CP). Thomas’ networks can be formalized, generalized and implemented using constraints. At the limit the proposed approach combines both aspects of simulation and reverse engineering. The ultimate goal of this work is to allow biologists to explore the combined effects of various types of hypotheses such as the assumed gene interactions and the expected dynamic behavior. We have developed a constraint program that utilizes the assumed hypotheses expressed as data. When the data is interpreted by a CP processor the proposed system is capable of responding to multiple queries that encompass simulation, reverse engineering and hybrid combination of the two. After a presentation of our approach, I will show you the constraint program in action with the following functionalities: combination of simulation and reverse-engineering, addition of hypotheses about the combination of interactions over the genes of the network, creation of mutants, relaxation of constraints in case of incoherence (the data having contradictory effects), and consequently suggestion of refinement of the model.

Automated software verification is a superb challenge. Unfortunately, in the many years of research in this field, few actual products (if any) have been proven correct beyond doubt. We can, however, look back to a long history of spectacular successes in software falsification (think Ariane 5). The problem is that bugs are usually buried deep in the software and traditional testing techniques just don’t dig deep enough. I will talk about an approach that accelerates the digging, allowing us to dig deeper for bugs and “break the toy” before somebody else breaks it unintentionally. I’ll also explain how finding deep bugs in abstract software models can help verifying the actual software.

Proteins are involved in virtually every biochemical reaction in a living cell. A protein’s function is strongly dependent on its three-dimensional structure and there is a large interest in the pharmaceutical industry to understand the native structure of proteins in order to perform targeted drug design. Existing experimental techniques offer high spatial resolution, but tend to be costly and time-consuming. A novel method, CamShift-MD, will be presented that is based on relatively easy to perform chemical shift measurements from nuclear magnetic resonance spectroscopy. This method predicts protein structure by introducing restraints into molecular dynamics computer simulations. CamShift-MD offers a new way of automatically generating protein structures based on a combination of experiment and theory. It has the potential to solve structures for which traditional methods are not suitable, such as highly dynamical non-native states. Moreover, the method can be used to determine protein ensembles. Unlike a single, rigid structure, such ensembles reveal information about the distribution of conformations and dynamics of molecules in solution, providing us with a better picture of the behaviour of proteins in the cellular environment.

Wednesday, 9 July 2008

Giving a good presentation, Ken Shaw (Benchmark Communication Techniques)

Lecture, Presentation or Conversation? We will examine: Who your audience is; What they want; Why you are addressing them; How you handle practical issues like nerves, body language, speech & voice, humour, visual aids etc.; What is success? What is plan B if everything goes wrong; How you recover.

Mind-reading machines, Peter Robinson (University of Cambridge)

Facial displays are an important channel for the expression of emotions, and are often thought of as projections of a person’s mental state. Computer systems generally ignore this information. Mind-reading interfaces infer users’ mental states from facial expressions, giving them a degree of emotional intelligence. We use video processing to track two dozen features on the user’s face. These are then interpreted using statistical techniques through a hierarchy of analyses as basic actions, head and facial gestures, and finally groups of mental states. The talk will describe an implementation of facial affect inference, together with an evaluation and some preliminary results of using the system to monitor car drivers.

Thursday, 10 July 2008

Rough guide to being an entrepreneur, Jack Lang (University of Cambridge)

At some stage you might want to exploit your ideas by starting a company, just as Bill Gates and Paul Allen did in 1975. It might even be the next Microsoft, or bought by them. I’ll give an overview of the process, explain some of the success factors investors look for, and how to go about writing a business plan and getting off the ground.

Grand challenges in computer science, Tony Hoare (Microsoft Research)

One way to do great research is to work with a great team, collaborating over an extended timescale, to find answers to fundamental questions that lie at the very basis of your branch of science. I will call such a project a Grand Challenge.

Grand Challenges have long been common in Astronomy (the Hubble telescope) and in Physics (the large hadron collider), and more recently in Genetics (the enumeration of the human genome). Here are six Grand Challenges that have recently been singled out by UK computer scientists for the attention of the research community:

  • ‘in vivo = in silico’– multi-level simulation of the behaviour of biological organisms
  • ‘memories for life’– rapid recall of a lifetime’s memories
  • ‘architecture of the mind and brain’– simulation of the relation between them
  • ‘non-classical computation’– a search for a theory that covers the wide range of computing phenomena in nature
  • ‘ubiquitous computing’– principles of engineering of the swarms of computers that surround us
  • ‘dependable systems evolution’– programs that are proved correct by the computer before running them

Can you think of any more? I will talk in more detail about the last of these, which has been my own life-long research interest.

How does the Internet work?, Richard Black (Microsoft Research)

Could you explain how the Internet works in simple terms to someone else? Are there any gaps in your understanding, or questions you have? In this talk I’ll be giving an introductory description to how it all works.

How to apply for funding? In search of the holy grail, Wouter Spek (European Science Foundation)

Wouldn’t it be nice to have unlimited sources of funding for your research? Wouldn’t it be nice to have the freedom to operate? Wouldn’t is be nice not to be bothered with constant applying and competing for financial sources? These are some of the topics we will discuss, we will talk about unmet needs and I will give you some pointers how to address the issue of finance and finance acquisition.

Friday, 11 July 2008

Take control or how to manage your supervisor, Tristram Hooley (vitae)

This session will look at how to make supervision work well for you. It will argue that to get the most out of your relationship with your supervisor you will need to be proactive and assertive. In particular the session will encourage you to think about the following issues:

  • The relative rights and responsibilities of the supervisor and supervisee
  • What your supervisor cares about and how you can move up in their priorities
  • Strategies that you can use to manage the supervision and make them more useful
  • What to do if things go wrong

Write off-loading: Practical power management for enterprise storage, Dushyanth Narayanan (Microsoft Research)

In enterprise data centres power usage is a problem impacting server density and the total cost of ownership. Storage uses a significant fraction of the power budget and there are no widely deployed power-saving solutions for enterprise storage systems. The traditional view is that enterprise workloads make spinning disks down ineffective because idle periods are too short. We analyzed block-level traces from 36 volumes in an enterprise data centre for one week and concluded that significant idle periods exist, and that they can be further increased by modifying the read/write patterns using write off-loading. Write off-loading allows write requests on spun-down disks to be temporarily redirected to persistent storage elsewhere in the data centre. The key challenge is doing this transparently and efficiently at the block level, without sacrificing consistency or failure resilience. We describe our write off-loading design and implementation that achieves these goals. We evaluate it by replaying portions of our traces on a rack-based testbed. Results show that just spinning disks down when idle saves 28–36% of energy, and write off-loading further increases the savings to 45–60%.

Surface computing: the post-PC experience, Steve Hodges (Microsoft Research)

The long-established ‘desktop’ computing metaphor continues to drive a lot of our interactions with computers, But at the same time, new interaction paradigms are being developed and we believe that these will increasingly complement the traditional computing experience. To this end, at Microsoft Research we are exploring a number of new interaction technologies along with the novel form factors, user experiences and usage scenarios they enable. This talk will present some of our work on ‘surface computing’, a new approach to interaction which doesn’t required a keyboard or mouse for input, but which is inherently multi-user and which allows direct manipulation of digital content with hands, fingers and via tangible objects.

Enzymatic computing, Klaus Peter Zauner (University of Southampton)


Posters Session 1

  1. Adaptive combinatorial search – Alejandro Arbelaez, INRIA
  2. The cycle of modeling, modeling of the cycle – Alida Palmisano, CoSBi
  3. Adaptive evolutionary computation – Álvaro Fialho, INRIA
  4. Adaptive software lock elision – Amitabha Roy, University of Cambridge
  5. Exact JPEG recompression and forensics using interval arithmetic – Andrew Lewis, University of Cambridge
  6. Highly sensitive de novo identification of peptides from tandem mass spectra by linear optimization and kinetic modeling – Axel Rack, Freie Universität Berlin
  7. Illuminating circadian rhythms with Bayesian inference – Ben Calderhead, University of Glasgow
  8. Code reprogramming and dissemination in mobile WSN – Bence Pasztor, University of Cambridge
  9. Quality-oriented handover scheme for adaptive multimedia streaming in heterogeneous wireless network environment – Bogdan Ciubotaru, Dublin College University
  10. Probabilistic interpretation of figures of speech – Ekaterina Shutova, University of Cambridge

Posters Session 2

  1. Video abstraction and stylisation – Christian Richardt, University of Cambridge
  2. Time-aware routing in wireless sensor networks – Daniele Borsaro, University of Cambridge
  3. Towards optical PCI – David Miller, University of Cambridge
  4. Spread-spectrum computation – Derek Murray, University of Cambridge
  5. Proof engineering: Refactoring proof – Eliot Setzer, University of Edinburgh
  6. Vehicular ad hoc networks – Eugenio Giordano, University of Bologna
  7. Automatic derivation of loop bounds – Florian Zuleger, Technical University Darmstadt
  8. Mechanized foundations of finite group theory – Francois Garillot, INRIA
  9. New apparatus for characterising molecular computing substrates – Gareth Jones, University of Southampton
  10. Contact network modeling of flu epidemics– Anilkumar Sorathiya & Ian Leung, University of Cambridge

Posters Session 3

  1. MSR India 2012 Summer School on Distributed Algorithms, Systems, and Programming – Chris Lovell, University of Southampton
  2. Dynamic dependency graphs – How much parallelism is out there? – Jonathan Mak, University of Cambridge
  3. Pan-tropical modelling of the impact of land use change on water quantity provision and low flows – Jorge Peña Arancibia, King’s College London
  4. The Infinit file system – Julien Quintard, University of Cambridge
  5. Designing robots for people – Laurel Riek, University of Cambridge
  6. Diagrammatic reasoning across multiple domains: The automatic construction of useful diagrams – Matthew Ridsdale, University of Cambridge
  7. Noise from in-silico biology: A statistical perspective – Michele Forlin, CoSBi
  8. Supporting village community through connected situated displays – Nick Taylor, University of Lancaster
  9. Examining the adoption and usage of m-banking applications in low-income communities: The case of M-PESA in Kenya – Olga Morawczynski, University of Edinburgh

Posters Session 4

  1. Shape grammar and image based 3D reconstruction of buildings – Olivier Teboul, École Centrale Paris
  2. The realities of graphical passwords – Paul Dunphy, Newcastle University
  3. Learning the temperature of a game – Philipp Hennig, University of Cambridge
  4. Automated planning with goal utility dependencies within a satisfiability framework – Richard Russell, University of Cambridge
  5. From BlenX to SBML – Roberto Larcher, CoSBi
  6. Deployment of wireless sensor networks – Ruoshui Liu, University of Cambridge
  7. Provable security at implementation-level – Sebastian Faust, Katholieke Universiteit Leuven
  8. Renewable energy in data centres – Sherif Akoush, University of Cambridge
  9. Stochastic modelling of single cell assay data – Simon Youssef, Ludwig-Maximilians-Universität München
  10. Interactive visualization, annotation and processing of terabyte-scale 3D image volumes – Tahir Mansoori, University of Oxford
  11. A robust video receiver allowing WIMAX video broadcasting and indoor WIFI retransmission – Usman Ali, Supélec

Discussion Themes

This type of discussions was requested by the students who attended the 2006 Summer School and the students who attended the 2007 Summer School enjoyed them very much. The goal is to make the students think and discuss about a topic or issue of importance and get to know each other.

Each group will be asked to share briefly to the other groups the outcome of their discussion.

Ethics in scientific research

Discussion leader: Andrew Fitzgibbon (Microsoft Research)

Scientific method in computing research

Discussion leader: Jon Crowcroft (University of Cambridge)

Computer science education

Discussion leader: Kevin Bond (Aylesbury Grammar School, Cambridge)

Impact of research

Discussion leader: Wolfgang Emmerich (University College London)

Being a post-doc – Academia vs. industry

Discussion leader: Andrew Phillips (Microsoft Research)