Saturday, August 16, 2014

I was attending SIGGRAGPH to present our paper on image completion. During the conference, I attended a great talk by Prof. Thomas Funkhouser from Princeton University. He talked about five approaches find good research problems. Even though we are from different fields, I think the main ideas are universal and could be applied to many other fields. I would like to share my notes from his lecture.

1. Consider non-traditional problems

There are four types of research problems.
a) Improving existing methods

b) Develop new approaches to existing algorithms

c) Define new problems

d) Expand the field

It is easier for junior students to work on type (a) problems because many resources are available. However, try to work on b-d) to achieve the maximum impact.

2. Anticipate disruptive technologiesThe research progress is not linear in time. Sometimes there will be disruptive technologies that completely change the game. Anticipate these disruptive technologies in the near future and develop groundwork ahead for the rest. For examples, fast graphics hardware, server-based networking, repositories of 3D models, consumer depth cameras, and internet.

3. Think beyond algorithmsComputer science communities are often obsessed with developing algorithms. However, other forms of work might be impactful as well. For example, analysis and evaluate of the problem, survey study, benchmark development, and dataset collection.

4. Work on real problems

Try to work on real problems. In solving real world problems, along the way we might also develop something useful for other problems in the field.