Choosing a Topic

One of the ‘fundamental’ problems most researchers face is choosing a topic for research. Another related problem is choice of a guide, which we talk about in the next chapter.

There are a number of aspects to choice of a topic. But, let me reiterate, the key is your own passion to the topic. Choose something that you are really excited by. With this in mind, there are some useful pointers here.

First of all, there is nothing to declare a topic as not worthy of research. Fortunarely (or unfortunately), there are hardly any closed topics today. Look at the atomic structure, and how many major changes have happened to our understanding over many decades. Everytime, it looked as if we have understood the full story, till someone finds an anomaly and a completely new model appears on the scene. In computer science also, there are age old fields like databases, which are often considered stale. With a tabular structure of rows and columns, with a rich query language like SQL, we are done. But then came distributed databases, multimedia databases, object relational databases, and so on. And we had to go back to the drawing board to find new solutions. The problem of dealing with very large datasets running into millions of rows posed another major problem. A recent issue of CACM [find reference?] had an excellent discussion summary on this topic by a group of database gurus. And you see that database is a very active research area.

So, you can take any topic that you like, and if you spend quality time on it, you can find interesting enough research problem. Dimensions like time and space complexity of processes and algorithms, scalability, fault tolerance, federation, etc can be applied to any topic to find new challenges. You can see that most solutions proposed in the literature for problems are constrained – they work well only under some assumptions. What happens if the assumptions do not hold? Newtonian mechanics is still adequate when the velocities are much less than the velocity of light. When that assumption is violated, you need another theory – in this case the relativity theory. When the mass is very very small, we need yet another theory – the quantum theory. [somebody correct me, if these observations are inaccurate.] And so on. This is even more true of computer science. Databases are not good for solving all kinds of data, for example. When the data is structured in a 2-D forum (rows x colums), and the individual elements are simple in structure, and the rows are relatively independent, and the nature of queries are defined by relational algebra, then conventional relational databases do well. Break one of these, and you have to find new solutions. Sometimes, these solutions are extensions of what is available, and sometimes a massively new model – for example, the XML framework for data with complex structure. Even the storage structure in a database relies on the above assumptions; and violating any of them can result in inefficient storage use.

Looking at good survey papers from sources like ACM computing surveys is another way to identify research areas. These papers look at medium sized domains for survey – not too narrow, not too broad – and do a good job of cataloguing existing work in this area. Based on that, one can see good open questions relating to that area. And the papers referred in the survey can often provide good background reading for the topic.

PhD theses from good universities provide another useful source. The literature survey section in a thesis is usually a good overview of the field of interest to the author (the topic of the thesis), and also helps identify gaps in that area. Some of these gaps may have been taken up by the author for his/her thesis – and the future work section of the thesis, would tell you how far he/she has addressed this. Of course, pick only good quality thesis from good quality places – otherwise, you are wasting your time: often the survey may be biased and incomplete, and often lacks good analysis. Such a thesis serves no purpose.

Occassionally there are good ‘current trend’ papers in journals. CACM, AI Magazine, etc are good places for general computer science and AI respectively. Turing award lectures of ACM, and similar series from prestigious societies are also good sources of ideas, reflecting personal perspectives of specific fields and their future.

Along with this some general reading is also important. It broadens your view, and often give you ideas to explore. In this era of interdisciplinary and multi-disciplinary research, this kind of broad reading is important. It is silly to stay within your narrow boundaries – often very artificially drawn.

Thus, to sum up, choosing a topic is not a big problem. Look at areas you are familiar with. Do some reading and look-around as mentioned earlier. And look for some topic that excites you. Build a decent understanding of this topic, and talk to your guide. One can form the seeds of your research topic soon enough from here.

Having chosen a topic or broad area of work, you would need to define a problem for the PhD work. Some ground rules are useful at this stage too. The first is to choose a ‘reasonable’ degree of freedom in the topic. Dont make the problem too narrow, that you run out of steam within a few months, or you get stuck because some dependent resource is not available. Dont tie your problem to a specific platform or technology. Database management is fine; but not Oracle or MySQL. Programming languages is fine, but not C# or Java. Similarly dont make the topic too broad – you may lose focus and end up wandering.

It is not necessary to define the exact problem you want to solve in the early stages of your research. A reasonably broad-scoped problem would suffice, with some specific area that you can start with. As you build your foundations with the initial area, you can slowly evolve the exact scope for your problem. It will allow you to absorb newer developments in the area, and focus your energy where you feel the highest interest.

There is another way to approach choice of a topic. This is to look at some complex practical problems. And there are plenty of them around. And usually, most of these problems are extremely complex and open ended, and have no comprehensive solution. A lot of research work picks up these problems and proposes solutions to various adaptations or special cases of them. In this area are problems like real-time machine translation of real-life text as obtained from web pages, speaker independent speech recognition in natural surroundings, resource scheduling problems such as bus/train/wagon/flight schedules, dynamic adaptation of such schedules to account for dynamic developments (say fog for airlines, accidents for railways, etc), and so on. As I mentioned, a lot of work exists for solving these problems – but the full problems continue to be open.


5 Responses to “Research-IV-topic-selection”

  1. Kishor Bhosale Says:

    Thank you very much sir for such a beautiful information…

  2. Reshmy Says:

    It was very informative

  3. Reshmy Says:

    It was very informative…Superb sir….

  4. Sam Manore Says:

    Its very very important info sir for us. thanking you sir.

  5. Natraj AC Says:

    It is very informative..I forwarded the link to my wife also, as she is preparing to do PhD in in computer science.

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: