Prof. Shalabh Bhatnagar, CSA, Indian Institute of Science, Bangalore, is the winner of the prestigious ACCS-CDAC Foundation award for 2017. The award recognizes his seminal contributions in the area of Stochastic Optimization and Control. His research has filled many gaps in the body of knowledge in control of stochastic dynamic
The Award instituted in 2004, by the Advanced Computing and Communications Society and the Center for Development of Advanced Computing (CDAC), fosters the development and dissemination of the theory and applications of Computing and Communications sciences. ACCS-CDAC Award is given to individuals with outstanding contributions and accomplishments that have had a significant and demonstrable effect on the practice of computing and communications. The ACCS-CDAC Foundation Award carries a cash prize of Rs. 100,000/-, along with a citation and a plaque.
Dr. Bhatnagar’s model-free, convergent random search algorithms have found extensive engineering applications in communication networks, service systems, crowd-sourcing and semiconductor manufacturing. The award was presented at the inaugural session of the annual Advanced Computing and Communications Conference (ADCOM 2017) at The International Institute of Information Technology,Bangalore (IIITB) on 8th September 2017.
Prashanth Hebbar: One of the things Feynman talks about is that a photon travelling from A to B need not take the exact path that it takes. It would have taken any number of random paths but at the end we realize that what path it has taken is the most optimum. The question is, because you look at systems and processes and optimization, are systems inherently optimized — any system for that matter?
Shalabh Bhatnagar: Yes, that’s a very interesting point. When you say that photons travel the shortest path essentially that is something that is taken care of by nature. Nature may have designed the optimal path for the photon but on the other hand we look at man-made, engineered systems like the traffic system. We need to optimize such systems to ensure the delays are minimized and congestion levels are reduced. So, nature does the optimum anyway, and of course the time scales of nature are quite different even though it is on a very-very slow time scale evolution happens. But given the fact that we are living in this world, I think the important thing is to do the optimization ourselves.
PH: That’s an interesting point you made, time scales. When we talk time scales, does it depend on, say, a human who is on the other side, his gratification, how fast he requires gratification or is it determined by something else?
SB: There are two ways to look at it. One way to look at it is that the system is the optimizer, wherein the system tries to optimize things, it doesn’t care for individual users, but the system itself is optimizing. The other view point is that the users are the optimizers. Which means users want to optimize on their delays and paths that they travel and so on. These two objectives may or may not be in conflict. Thus, if the system is optimizing then some user references may be compromised. Or to put it more aptly, it is not necessary that every user will be satisfied with the decisions that the system makes. On the other hand, if the users are optimizing then of course, they can decide what they want to do and how they want to do it.
PH: Well that’s a great point. Diving a bit deeper into that point of view, do you think when optimizing a system, you need to look at the balance between how system behaves at one end vis-à-vis how the results come out at the other?
SB: When I talk of optimization I essentially mean formulating it as what we call as an optimization problem and then trying to solve it. We define what we call as an objective function. Then there are certain constraints. You need to define or describe all of that. Now, in the process what happens is that the optimization parameters that ultimately come out will pretty much depend on the objective function that you choose in the first place. You can decide what objective function you want. At the system level what is the objective that let you really care for. Once you have decided that the parameters will be tuned in a manner that optimizes — minimizes or maximizes — that objective. In that sense, the system is optimized. Well of course there is no one definition of optimization. It pretty much depends again on what the objective function you have set it to be. If it is to minimize delays across all the users and likewise, then that is what it will be optimized for.