1. A method for lighting control of a building, the method comprising: collecting by a zone controller occupant lighting preferences and light levels from light level sensors distributed in a zone; computing by the zone controller a utility curve for the zone, wherein the utility curve represents the relationship between energy use and service level provided to occupants of the zone; receiving by a building server zone utility curves from zone controllers distributed throughout the building, wherein the utility curves comprise the utility curve and the zone controllers comprise the zone controller; allocating energy units by the building server to the zones based on the utility curves using a utility-based trading algorithm in order to optimize service levels with minimal energy; distributing by the zone controller energy to lights in the zone based on energy units allocated to the zone by the building server and on influence matrices representing the influences of the lights in the zone upon the sensors in the zone.