Wednesday 27 February 2013

Technology limit

It’s nothing new. There is a limit to extent to which technology can solve problems at any point in time. Some problems, then, are beyond the scope of what the current state of technology can address effectively. Among these problems there are some whose technological solutions can be imagined - and they are usually the stuff of science fiction. There are others where it appears technology can only remain an enabler of solutions and not a solver of problems.

An example might help illustrate this.

Reserving time slots for appointments is now a trivial technological problem. There are a fixed number of slots which can be reserved and once those slots are taken none will be available. The problem is, this works well only until you have a ‘manageable’ number of applicants for the slots. Once you have more than a certain number of people scrambling for the fixed number of slots, strange things start happening.

Primarily, the queue which was in effect to implement the ‘first come first served’ policy now becomes a mob. Within a mob, as anybody who has participated in a railway booking mob will tell you, there is no order. What there is, is a delta - a crowded triangular area that is formed spontaneously around the mouth of the queue, which one needs to be present in to have a fighting chance of obtaining the desired outcome. Within the delta the ‘first come first served’ policy does not work. The dynamics of the delta are highly volatile. Rules and policies are coded, communicated and enforced on the fly in a rapidly changing environment. 

The number of variables that need to be computed to move closer to the mouth are so immense and varied that one needs to function at an instinctual level. To list some of the variables that need to be considered - how important is the appointment slot to your life, How strong are your elbows, how much stamina can you afford, What are your motivations, How many people can you bully without incurring the wrath of the collective mob, how much do you care about other people. To put all these variables together into a usable piece of data is possible only instinctively. 

What is really interesting is that what is described above applies equally well to any queue - even one that is enforced technologically.

The solution that is usually proposed - enforce the first come first served policy strictly through the threat of violence - only displaces the problem. if disorder is eliminated from the queue, in the case of railway booking, the disorder is transferred to the train itself. The desperate ones who do not make it to the top of the queue before the train leaves would board the train anyway or spill onto the platform and start becoming a hindrance to the smooth and happy functioning of society.

The easy solution to this problem is to increase the number of queues and trains until everyone can get a slot while still following the ‘first come first served’ policy. This would require that the requirement of queues and trains is computed dynamically and the required number of people and machinery is mobilized and made available on the fly. This, to me, is in the realm of science fiction - an optimized society where everyone gets what they want, when they want it - and hence something that can be imagined.

But our original problem was one where we have a fixed number of slots which a number of people are seeking to occupy and there is no restriction on the number of people who can try. Not having an infinite number of slots is a real condition and the removal of that condition cannot be a valid solution to the problem. 

The other solution that is usually proposed - use a different selection algorithm - different from ‘first come first served’ - introduces, in effect, a certain randomness into the situation. This seems like a suitable solution; if only it could be made fair.

Without an infinite number of slots on offer and needing to give everyone a fair chance at success, one would seemingly have to allow the delta to be created - and once it has formed, let it manage itself. This would ensure that there is a randomness in making the selection but since the participants in the mob define the algorithm it would be fair for that particular mob.

There it is - technology enabling a solution; the mob generated algorithm, rather than solving the problem itself.

India’s passport issuing service (Passport Seva) has an online interface, developed by TCS, to book appointment slots. About a lakh users try to book from among 200 slots. The interface allows a user to book a slot by choosing from a set of available time slots (possibly arrived at depending on the personnel available) on a certain date in the future. This system seems to make use of the delta to decide who gets a slot and who doesn’t. The window remains open for an hour every day, but when the window is open, all available slots are filled in less than 5 seconds. You might be the first person in the queue, but there’s a good chance that you’ll be ejected from the queue. The fine timing that is required at and between each step in the process ensures that a delta is created. The mob of requests evolves an algorithm on the fly to ‘decide’ which requests would go through successfully. The algorithm evolved by a certain mob cannot be replicated by another, thereby ensuring complete randomness and hence, fairness.


  1. Superb. Brilliant elucidation of the railway queue dynamics. Funny and brilliant. Rarely come across this combination these days...

  2. Actually, the adrenaline rush and palpitations I get when I sit at my computer to book tatkal railway tickets closely simulates the stress when I am in a ticket counter 'delta'. This corroborates the point that the TCS system moves the 'delta' online...