Good ideas deserves publicity, I say. And facebook flyers does work 😉 Check out Tagxe, pronounced tag-ci (rhymes with taxi of course), where you can share a cab with random people who wants to take a cab from one place to a number of places. This stolen picture from the site probably tells a better story:
Sibelius concert was great for those who care 😉 The hall was spooky though…
I’ve yet to try the service, but the FAQ and write-ups does show some fairly thorough thought by the writer of the application. There were two links to how to calculate cab fares that really caught my attention – I mean I went like “wow, there’s another way to split cab fare?” So far the way we split cab fare amongst friends has been based on either:
- Geographical understanding of where each of us stay (roughly each pay half of what we used to pay when we take ourselves, confirm with the first person overpaying a bit out of courtesy)
- Purchasing power: the “richer” so to speak pays slightly more (in practice, the one who “usually take cab” pays more since the other MRT/Bu regulars are just “subsidizing” anyway)
According to this article A mathematically fair way to split a taxi ride with multiple stops, it is suggested that the old fashion way is to split the trip evenly based on the total distance traveled by each person (as if 4 person took 4 cabs, for example). This somewhat echo one of the ways we do this, but as the first person gets off the car first, it’s usually the case that we have to estimate a lot based on geography, road distance, and the capability of taxi drivers for not taking the wrong road!!!
Then a somewhat interesting way was to do segmented splitting. Mathematically, that means that for N people when person A gets out and the meter reads a, he or she should contribute a/N. When B gets out, (the meter reads b) the contribution should be a/N (for the first segment) + (b – a)/(N – 1) (for the second segment), and so on. Intuitively, in a 4 person cab share, the first person pays 1/4 of whatever the meter says. The second person then pay 1/3 of the second segment (so as if the meter went back to zero with 3 person in the car). The cash is passed on so that the last person who leaves the car hands it to the cab driver.
Although it has been considered that going down to the cents will be hard, it is still possible that with up and coming ubiquity of micro-payments with mobiles, as well as in cab kiosk based services like Mr. Taxi being smarter, one can imagine a group presetting the cab splitting algorithm upfront, scans their phone, and let the taxi system do the calculation. This will be damn cool la!
On the second article from WSJ, How to Split a Shared Cab Ride? Very Carefully, Say Economists it goes even deeper. The first method is identical as the one discussed above. It goes on to propose the following other possibilities:
- Splitting the surplus proportionally: take the savings (assuming everyone knows what their usual fare is, split the money that’s saved). This is not practical for Tagxe’s case, and certainly not easy to calculate even if you have the super split cab fare system installed – we just don’t know how much you “saved”… However, this is commonly used in bankruptcy cases apparently
- Game theory (ok getting chim, I’ll try to simplify): split the surplus equally – the idea is that if everyone didn’t get the equal amount of “money back”, then the “deal” for sharing a cab would not have happened in the first place.
- Game theory 2: In the case where someone might get “paid” to take a cab, cap the surplus they get back so that they end up with a free ride.
- Talmud’s method: Using the concept of “you pay what you have to pay anyway, the remaining payment split equally”, after some chim math we arrive at a very simple method: split the savings equally until one of the riders gets back half his original fare. Then he caps out, and the fare is split equally among the rest until the next rider reaches half his original fare, and so on. Nobel prize!
This led to other “wow”s – first I thought about how I used to split gas between passengers of my own car for trips from Singapore to KL and back: we always do it evenly, either including or not including myself (assuming I absorb all servicing / depreciation of the car. I drive too – free labour?). Is there another way? We split our HDB rent every month. Is there another way? We split utilities bill too, is there another way etc.
Then I thought – hey, isn’t this maxing out at half nobel prize winning idea the same as my original gut-feel-algorithm of just paying about half of your usual cab fare? This can’t be a coincidence coz I’ve never done any calculations around it…
More importantly, this draws us to a bigger issue of “should we share”? In the next generation data centers that SCS is trying to build, we ask ourselves: how much should we virtualize, and if so how? Take hardware virtualization for example: How do we decide if an application should be sitting on a Virtual Machine or a on its own box? Suppose we run some sort of intelligent provisioning system that has a rule base policy engine to decide how much to provision: what will be the rule that will govern whether it would be a VM deployment or a bare metal deployment?
And suppose we share, how should we share? The idea of the upcoming Grid CFC from IDA is that we have to turn computing resources into a utility based model. Service operators will be expected to charge by utilization. But it’s not possible to measure down to the CPU cycle / storage bit level (this is not just High Performance Computing of folding one protein of sorts, but the SAPs and Oracles perhaps sharing one server in 2 VMs) just like it’s not possible to split the fare based on how many rotation the tires of the taxi made to bring you to your house. So we will end up with ballparks like when application one started & ended, how much disk space it consumed / database activities occurred etc. If two apps share a box, one runs half a day and goes away, the other runs the whole day – isn’t this back to our cab share problem?
In the mean time, let’s try sharing cab first – sharing servers can come next