If the airlines simply must be at or near capacity on every flight, perhaps they should raise the price of cancellation insurance. They need to find a way to drastically reduce the amount of over booking. An empty seat costs them nothing if is paid for already.

Also, the regulators should mandate that compensation offered will be cash, not travel vouchers. A few years back I was give a $100 travel voucher (good for 1 year) because Air Canada lost my suitcase for 2 days. It sat on my desk for a year and then I threw it away. For some people it has no value.