A method for controlling temperature in a thermal zone within a building, comprising: using a processor, receiving a desired temperature range for the thermal zone; determining a forecast ambient temperature value for an external surface of the building proximate the thermal zone; using a predictive model for the building, determining set points for a heating, ventilating, and air conditioning ("HVAC") system associated with the thermal zone that minimize energy use by the building; the desired temperature range and the forecast ambient temperature value being inputs to the predictive model; the predictive model being trained using respective historical measured value data for at least one of the inputs; and, controlling the HVAC system with the set points to maintain an actual temperature value of the thermal zone within the desired temperature range for the thermal zone; characterised in that: the method further comprising receiving a demand response signal from a utility demand response control system associated with the building and further determining the set points using the demand response signal as one of the inputs to the predictive model; and, determining a demand response capacity of the building as a difference between a high electric power demand limit and a low electric power demand limit, wherein the demand response capacity is available for bidding at least a portion thereof into at least one of a frequency response market, an electric power market, and an ancillary services market associated with a utility grid. using a processor, receiving a desired temperature range for the thermal zone; determining a forecast ambient temperature value for an external surface of the building proximate the thermal zone; using a predictive model for the building, determining set points for a heating, ventilating, and air conditioning ("HVAC") system associated with the thermal zone that minimize energy use by the building; the desired temperature range and the forecast ambient temperature value being inputs to the predictive model; the predictive model being trained using respective historical measured value data for at least one of the inputs; and, controlling the HVAC system with the set points to maintain an actual temperature value of the thermal zone within the desired temperature range for the thermal zone; characterised in that: the method further comprising receiving a demand response signal from a utility demand response control system associated with the building and further determining the set points using the demand response signal as one of the inputs to the predictive model; and, determining a demand response capacity of the building as a difference between a high electric power demand limit and a low electric power demand limit, wherein the demand response capacity is available for bidding at least a portion thereof into at least one of a frequency response market, an electric power market, and an ancillary services market associated with a utility grid. the method further comprising receiving a demand response signal from a utility demand response control system associated with the building and further determining the set points using the demand response signal as one of the inputs to the predictive model; and, determining a demand response capacity of the building as a difference between a high electric power demand limit and a low electric power demand limit, wherein the demand response capacity is available for bidding at least a portion thereof into at least one of a frequency response market, an electric power market, and an ancillary services market associated with a utility grid.