It seems quite a few people aren't clear on what the subsidy really is, or how it works.
When you buy a new phone from AT&T, and pay the subsidized price, you are paying for part of the cost phone up front, and AT&T is extending you a line of credit for the other part of the cost. You haven't paid enough at this point to cover the cost of the phone. AT&T has not yet made a profit on you (or at least, and acceptable profit...).
To guarantee repayment of that line of credit, AT&T requires a 2-year contract from you, and they have an early-termination fee so they can recover that loan from you should you decide to cancel early. AT&T's terms are such that after 18 months of your 24 month contract, they have decided that you have paid off this line of credit, and are once again eligible for a new phone at the subsidized price.
Without insider knowledge, all we can see are the subsidized, unsubsidized, and "no-commitment" consumer prices, as well as the contract termination fee. For the iPhone, the unsubsidized price is currently $200 more than the subsidized price, and the "no-commitment" price (if available) is $300 more than subsidized price.
AT&T does this all to make sure they cover their costs for buying the iPhone from Apple, and to insure that make a profit.
Is the system great for consumers? Nope. The Early Termination Fee doesn't make a lot of sense for example. By 18 months you have covered the cost of the phone to the point that you are eligible for the subsidized upgrade price, but if you cancel the contract at 18 months you still owe $85 in early termination.
In the end, it all comes down to AT&T making sure they cover all their costs. From buying the phone to the manufacturer, to the time spent by their employees setting up the account, to the cost of maintaining their network.