However, what I don't get is why the tip has to be a percentage. A waiter who serves me the cheapest items on the menu is not doing significantly less work than a waiter who brings the most expensive. Its the same number of trips to the kitchen, for example.

However, a flat rate does not create a monetary incentive to promote more items, or more expensive items. From the employer's POV, it makes sense.

Probably another good idea would be to tip based, at least in part, on how long you've stayed at the table. If Jane waits on a party who uses one table for two hours, while one of Bill's tables gets three different parties in the same period, he'll have more opportunities to get tipped. On the other hand, I guess it wouldn't really make any difference in a restaurant where tips are pooled... I just don't know how common that practice is.

Best idea, I think, would be to change the law so that ALL workers get paid minimum wage, and thats it. Then tipping would be what it is intended to be - a bonus for exceptional service - rather than an obligation to make up insufficient wages.