What are the reasons for trading in commodities?

Depending on who the players are, their reasons for participating in commodity futures trading is usually one of the following:
o Hedging against price risk
o Speculation
o Arbitrage
o Portfolio Diversification