Whenever anyone wants to use spectrum, their device automatically bids and gets allocated whatever size slice of spectrum and transmit power they ask for. Then the device maker or the user pays the bill at the end of the year, perhaps with some minimum free amount each year per person, which could cover all except the biggest spectrum users.
If you didn't like the government allocation scheme, you could rent your own block and do your own sub-allocations, for example some kind of packetized system with microsecond long packets wouldn't want to have to contact a government server for every 1 microsecond allocation.
That gives a strong incentive to use efficient allocation schemes.