Sometimes, the way we think is purely gated by how a given problem or issue is presented to us. If we take time to wonder how we all fit into a complex network of society, it is just amazing how it would look for an outsider to envision the way we operate. In order for a complex society to thrive, I guess some amount of fairness needs to be distributed across it. If not, there will only be chaos. This is not to say that the world is a fair place. But, on a macroscopic scale, I believe fairness prevails. This brings up the important question, what does the term “fairness” really mean? I believe that fairness is a context dependent issue which has different meanings in different contexts. Also that, being fair to everyone is impossible. So, where is the trade-off? This blog is an attempt to characterize a queuing problem for different facets of fairness, just to see how fairness is influenced by various schemes. If you think about it, all schemes discussed below do acheive fairness of some sort. If you think otherwise, it is probably because you did not do a lot of thinking..:)
Assume a parking lot with “m” columns (c1,c2,c3,..cM) and 1 row. The 1 row being the one through which people exit a parking lot (c1 is closest to exit). Each of the m-columns join with the exit-row only once. Let us assume for this problem that no new cars are entering the parking lot and that all cars are trying to exit the parking lot. Also, assume that the exit row is already filled up with cars trying to exit. Now, the question is, what strategies can be used make the process of exiting fairly?
In approach1, the condition is that you cant exit from a column until the ongoing traffic in the row exits out of the parking lot. So, if you are in c1, you will not get to the exit until there is no ongoing traffic in the exit row. This would mean the person in column c1 will get to go only till all cars from c2 through cM have left. Now, let us consider that at each junction point, each person in the column will only wait for one oncoming car to pass through and then gets the right of way. This would mean that a car in column 1 will get to go out for every 1 car out of all the remaining columns. But, this would be unfair across the different columns since car in column 1 gets 50% chance of getting out and the car in column 2 will get 25% of chancing of getting out and so on. If you want to establish fairness, one can say that a car in column 1 should wait for, let us say 4 cars before it can go out. This would distribute fairness across the different columns.
Looking at the above notion of fairness, an engineering mind could add that, why not build more than 1 exit from the parking lot. This would simplify the problem not only by the number of exits, but also distribute some of the exponential delay factors in the problem. A business person’s perspective would be to assign a cost based on the “unfairness” associated with a car to exit from a given parking lot. So, someone who pays more could get out much easily. A statistician could argue that, if the arrival distribution of people who want to take the car out of the parking lot is such that the low cost folks populate first and if there is a varying degree of cost distribution, then the distribution of cost wouldnt make sense. He might also add that, having a seperate parking lot to serve high cost customers and low-cost customers could be a good idea. A socio-economic point of view would be to avoid having a parking lot and offer a shuttle service to transport people to a different place where parking is distributed enough that they can all go out easily. Even if the parking lot is cramped up as in approach1, we can assume that the passengers in the car are uniformly distributed in terms of the positions in the parking lot and hence can get out fairly in shorter time span. Here, the size of the shuttle and its frequency of operation would decide the number of people transported. Also, the fairness of populating the shuttle would depend upon the arrival order, which sounds fair as well.
The list of take aways from this problem are, being fair to someone would not mean that you are being fair to everyone else, Being fair to everyone would mean that it is not an efficient system, in some cases money could buy you fairness, if you try to limit fairness to a small group of individuals it is usually quite successful. The discussion above is just glorified common sense. It is just that I wanted to glorify it my own way since I had “some” time at my disposal…:)