1. A method of controlling energy consumption in a building, comprising: receiving occupant request data comprising a plurality of requests , wherein each of the plurality of requests corresponds to one of a plurality of zones in the building wherein the occupant request data is received via a cloud computing resource; receiving occupant schedule data comprising a plurality of predicted occupant schedules , wherein each of the plurality of predicted occupant schedules corresponds to one of the plurality of zones in the building wherein the occupant request data is received via a cloud computing resource; receiving weather data comprising at least one of current weather measurement data and weather forecast data wherein the weather data is received via a cloud computing resource; receiving energy price data comprising at least one of current energy price data and predicted energy price data via a cloud computing resource; receiving sensor and actuator data comprising data collected by controllers located in the building wherein the sensor and actuator data is received via a cloud computing resource; receiving a facility management rule via a cloud computing resource; generating a plurality of output control signals (such as set points of temperature, humidity, open/close of valves), wherein each of the plurality of output control signals is based on one of the plurality of requests, one of the plurality of predicted occupant schedules, the energy price data and the facility management rule and each of the plurality of output control signals is configured to adjust building control devices in the plurality of zones in the building wherein the output control signals are generated via a cloud computing resource; simulating each of the control signals via a cloud computing resource to determine an optimized control signal based on optimized energy use or optimized cost; and transmitting the optimized output control signal to a building automation system (BAS) of the building.