This question gets asked on a regular basis.
Basically BA operates on the basis of 'Want to fly in X cabin then buy a ticket for X cabin'.
It's a way to maintain the premiumness of the higher cabins. If it became known that BA offered cheap on the day upgrades then many regular passengers would only buy a WT ticket then rely on the cheap upgrade
Saying that, BA does offer POUG and AUPs in advance but it depends on the route and loading of the flight.