Monday, October 31, 2011

Three things I learned from my colleagues at TCS

1. I have spent a lifetime studying and teaching mathematics of many different kinds. When I started working with Prof. Kesav Nori's group at Business Systems and Cybernetics Centre, my understanding was that one could make a mathematical model of a system by writing down the differential equations concerned and analysing them. Much as we do in the prey-predator model. However from Prof. P.N.Murthy I learned that for a any social system that we set out to study initially we do not even know which are the independent and which are the dependent ones. We do not know how the dependent ones vary with the independent ones and which are the positive feedback loops and which are the negative feedback loops. So it is necessary for us first to form this understanding by appropriate "cybernetic influence diagrams". A detailed exposition of these is given here.

2. I thought that my model for mathematical computer science was very simple and easy to understand. However I was puzzled that there was not much eagerness to study it. This despite the fact that all my colleagues were doing difficult work and dealing with complex analytical and logical reasoning and all of them were engineers. Then one day talking to Swami I realized that the resistance was not to my method of approach to computer science but really only to the mathematical notation I was using. It was the abstract formulation and the use of symbols that was making the ideas opaque. So I felt that I had to find a different way of expressing my ideas that engineers could work with, not losing the rigour of expression.

3. What language should I use if not  the mathematical language? I saw Doji and Ravi approaching the organizational problems they were dealing with by looking to the manufacturing domain for inspiration. So then can I think of a way of designing an algorithm so that it is similar to  designing an artefact in a factory? Thus was I led to the Management Model of Computing that is explained here. You need to create an account and then go to the pages on Computational Thinking.