Thursday, May 20, 2010

The Sudarshan Theory : F = Cs * I(s)

If Einstein had his E = mc^2, I have mine.

F = Cs * I(s)

where F - our future, Cs - Computer Science, I(s) - Integral over all the important sciences we know of today and in future to come.

Computer Science is pure common sense. It isn't rocket science, in fact I would regard it as being among the more easier sciences to comprehend as it is directly in line with our common senses. The way a human mind thinks and computes information is based on which the entire field of Computer Science is designed and continues to evolve as our common senses, especially those of perception and reaction continuously evolve. Although the real application of a task such as Natural Language Processing can be seen in action today, the founding principles of research within this sub-domain of AI can be traced back to the sixties and seventies. Similar cases of other sub-domains and their very early pioneering research findings exist. My father, who although by qualification is a Mechanical Engineer, has always been fascinated by Computer Science and has always been able to better understand why certain things which were considered not fruitful earlier were quite fruitful now. Years ago, long before I could make sense of the difference, he possessed the intuition of how sheer advancements in computational capacities continue to expand the outreach of Computer Science and thus its permeation into other fascinating fields of science.

Such continual rapid progress has propelled research and thus amazing discoveries in areas where earlier there was little or no progress at all. Although exciting research continues in the basic domains of Computer Science, the focus has shifted to the marriages of Computer Science with other computationally intensive scientific research subjects. One fine example of such a marriage is Computational Genomics. Ever since Watson and Clark discovered the helical DNA structure in 1953, Genetics as a field continued to remain nascent until such sheer computational capacities attracted scientists' attention. It wasn't lack of talent or interest or opportunities. It was the lack of computational capacity which kept Geneticists at bay. Since the marriage, we have unraveled exciting secrets in the DNA structure and have been able to 'almost' successfully map the entire human genome, which I think is one of the most important achievements of modern day mankind. This achievement, according to me stands at the very pinnacle of scientific achievements along with Newton's gravity, Einstein's equation and Edison's electricity.

It is now common to get your entire DNA profiled by privatized scientific labs. You can now know your entire genetic lineage, disease risks, genetic inheritance, and what not! This is just to show how just studying computer science isn't going to be enough for the future. As students in Computer Science, it is imperative that we try to appreciate at least one cross-disciplinary domain within science where computer science and its principles are key to future advancements. This is not just because it is to happen, but also because such a good understanding would help us foresee the 'next big thing' in science. It is also our responsibility to equip ourselves well for in future, we are likely to be driving this field towards important discoveries in other sciences. The opening lines of the movie 'A Beautiful Mind' emphasize the importance of 'mathematicians' in the cold war era, when deciphering the adversary's communications was the need of the hour. I consider the current era at least, if not many more to come as the one or those in which 'Computer Scientists' become the most important scientists around. Why have a field called 'Computer' Science when 'Mathematics' was itself perceived to be a science of numbers and thus computation? It is because computation isn't just about numbers. Similarly Computer Science is evolving into a domain not just about computation but a lot more.

The world, going forward is going to have very specialized interests in various research domains. Bill Gates, speaking at Stanford University in April 2010 advised that students and researchers alike stop focusing their interests and energies towards problems which do not impact mankind and their quality of life directly. What a remarkable way to put it! and, thankfully this came from a man whose words are accepted by all around without doubt. Computer Science is already becoming the brain of all sciences. We can't be scientific humans with just brains and nothing else. Let's all now work towards acquiring our other organs as well! The brain will show us the way, all we need to do is persist with other sciences and ensure that at least at the surface level, we are ready to accept what's in store for us from our scientific future.

Wednesday, May 19, 2010

World Peace - A problem in Optimization

As an engineer, and by virtue of that, as a pseudo-mathematician, I tend to view events around me from a technical perspective. One of my latest realizations is about how the beauty of optimization as a technique and field of study in mathematics and science is also actually a wonderful philosophy. For those uninitiated and non-technical, optimization is a method of solving problems by optimizing a particular objective function with respect to certain constraints. The logic is actually so simple to grasp, yet its applications are so far-reaching. Optimization as a process here could almost be any process, which shows us the way to achieve our final objective. A good real-life example of it could be cooking.

We begin with a state of a collection of ingredients. Our objective function is a 'delectable' dish. Notice that the 'delectable' part is the actual objective, not the dish itself. Our constraints could include available time to cook, composition of ingredients, etc. As it happens often in problem solving, we follow a well-tread path towards a desirable solution. Similarly, we follow a particular recipe's instructions. At each step however, we stop to estimate how close are we to our objective. In this case, we stop to check the extent of salt or spice, dilution or thickness, etc. If we find that we have either gone over or stopped short of a particular state in our preparation at that given instance, as per the recipe instructions, we try to adjust our dish so that we are still en-route to that 'delectable' dish of ours. The recipe instructions could also be considered as constraints for they help us check our current dish status. Sometimes we might think that we are on the right track at some instances when intermittent checks yield positive results on taste and mixture of the dish. These are local optima, as understood in the field of optimization. They could lead us into believing that we have achieved or are on our way to achieving our objective. One essential pit-fall to watch out are such points of local optima. The global objective of a 'delectable' dish in the end is what counts. We could arrive at this dish both by going through the local optima, or by not even reaching the local optima en-route. That is essentially the beauty of optimization. The means don't matter, the end does.

It is the same story if optimization were to be treated as a philosophy. We are born as individuals, each with unique personalities, thought-processes, capabilities and decision making skills. At each step of our life, we are faced with situations our reaction to which determine our future courses of action(s). The moment we are born, until the moment we expire we are a living optimization problem. Our local optima are the minor successes, little joys, and smiles. Sometimes a local optima gets over and above us that we could think it is indeed 'a' global optima. (The 'a' stands for our desire to have more such intensified periods of success.) Alas, sooner or later we realize that our path is a wrong one due to this misconception. The constraints are the ones we have in real life as well - time, money, opportunities both kind of and lack of, relationships, responsibilities, commitments etc. When someone asks us for our objective or goal in life, they are asking us this very objective that we would want to achieve using a real-time application of optimization strategies. No wonder we regard mathematics as the queen of sciences. It lets us express such complex philosophies and thoughts in the most simplest of ways.

Personally this realization is a profound one for me because although I haven't yet identified my global optima or objective concretely, I do know that the ones I keep stopping at for the time being are all local optima. Consider mankind's optimization problem. The objective at least for now is to achieve world peace and harmony. Divide and conquer approach tells us that this global objective has been broken down in to local objectives from a mankind perspective but global to every nation's perspective. If we were to go deeper in this tree of objectives, the leaves would represent the objectives we all personally pursue as our life's optimization problem. This leads to an important thought. Every single action and reaction from every one of us matters - be us rich or poor, educated or uneducated, fortunate or unfortunate.

Mahatma Gandhi sums this up for us in his famous talisman in 1948:

"I will give you a talisman. Whenever you are in doubt, or when the self becomes too much with you, apply the following test. Recall the face of the poorest and the weakest man [woman] whom you may have seen, and ask yourself, if the step you contemplate is going to be of any use to him [her]. Will he [she] gain anything by it? Will it restore him [her] to a control over his [her] own life and destiny? In other words, will it lead to swaraj [freedom] for the hungry and spiritually starving millions?Then you will find your doubts and your self melt away."