Distributed power generation and distribution network with the dynamic pricing scheme are the major trend of the future smart grid. A smart grid is a network which contains multiple non-cooperative utility companies that offer time-of-use dependent energy prices to energy consumers and aim to maximize their own profits. Decentralized power network allows each energy consumer to have multiple choices among different utility companies. In this paper, an optimization framework is introduced to determine the energy price for utility companies in an oligopolistic energy market. At the beginning of each billing period (a day), each utility company will announce the time-of-use dependent pricing policy during the billing period, and each energy consumer will subsequently choose a utility company for energy supply to minimize the expected energy cost. The energy pricing competition among utility companies forms an n-person game because the pricing strategy of each utility company will affect the profits of others. To be realistic, the prediction error of a user's energy consumption is properly accounted for in this paper and is assumed to satisfy certain probability distribution at each time slot. We start from the most commonly-used normal distribution and extend our optimization framework to a more general case. A Nash equilibrium-based pricing policy is presented for the utility companies and the uniqueness of Nash equilibrium is proved. Experimental results show the effectiveness of our game theoretic price determination framework.