Warehouses hold a limited supply; stores want it; every lane has a shipping cost. Deciding what flows where is the transportation problem, and the same instance can be solved three ways. A central optimum (one linear program), a decentralised market where units of demand bid for capacity and a greedy baseline that just grabs the cheapest lane. Watch how close the market and greedy get to the planner's optimum: the efficiency gap.
Warehouses (squares, filled by how much capacity is used) ship to stores (circles, filled by how much demand is met). Lane thickness is the units shipped; a red ring is unmet demand. For the market and greedy, the timeline replays the allocation forming right here on the map.
Each method's result, and its efficiency against the optimum. Click a row to show it on the map.
The optimum's shadow prices per store and capacity rents per warehouse, and the price the market discovers by bidding.
The market is an auction: units of demand bid for capacity and prices climb until they hit the warehouses' rents, the same numbers the LP found.
Nobody plans the whole network, yet bidding lands on the exact same cost and allocation as the central LP and rediscovers its prices along the way.
How bidding allocatesThe price the auction settles on for a warehouse is precisely its capacity rent from the LP's dual: scarcity, discovered by the market instead of computed.
Capacity rentGrabbing the cheapest lane first can strand a store that had no backup, or burn scarce supply on low-value demand, sometimes paying double.
The efficiency gapWith elastic demand, serving a unit only pays if its value beats the delivered cost, so the optimum may leave the cheap-but-worthless demand unserved.
Welfare, not just cost