A method of controlling a heating, ventilation, and air-conditioning, HVAC, system, the method comprising: training a load prediction model, the training comprising: • controlling indoor environmental conditions using the HVAC system, • detecting the indoor environmental conditions, a load of the HVAC system, and outdoor environmental conditions, wherein the indoor environmental conditions comprise an indoor temperature, • inputting the detected indoor environmental conditions and the detected outdoor environmental conditions into the load prediction model to generate a predicted load, • determining a loss value by comparing the predicted load with the detected load of the HVAC system, and • training the load prediction model to reduce the loss value; determining requested indoor environmental conditions associated with a future time period, the requested indoor environmental conditions comprising an indoor temperature requested in the future time period; determining predicted outdoor environmental conditions within the future time period using a weather forecast; inputting the requested indoor environmental conditions and the predicted outdoor environmental conditions into the trained load prediction model to determine a predicted load for the future time period; and controlling the HVAC system to reduce a load of the HVAC system within the future time period using the determined predicted load. training a load prediction model, the training comprising: • controlling indoor environmental conditions using the HVAC system, • detecting the indoor environmental conditions, a load of the HVAC system, and outdoor environmental conditions, wherein the indoor environmental conditions comprise an indoor temperature, • inputting the detected indoor environmental conditions and the detected outdoor environmental conditions into the load prediction model to generate a predicted load, • determining a loss value by comparing the predicted load with the detected load of the HVAC system, and • training the load prediction model to reduce the loss value; • controlling indoor environmental conditions using the HVAC system, • detecting the indoor environmental conditions, a load of the HVAC system, and outdoor environmental conditions, wherein the indoor environmental conditions comprise an indoor temperature, • inputting the detected indoor environmental conditions and the detected outdoor environmental conditions into the load prediction model to generate a predicted load, • determining a loss value by comparing the predicted load with the detected load of the HVAC system, and • training the load prediction model to reduce the loss value; determining requested indoor environmental conditions associated with a future time period, the requested indoor environmental conditions comprising an indoor temperature requested in the future time period; determining predicted outdoor environmental conditions within the future time period using a weather forecast; inputting the requested indoor environmental conditions and the predicted outdoor environmental conditions into the trained load prediction model to determine a predicted load for the future time period; and controlling the HVAC system to reduce a load of the HVAC system within the future time period using the determined predicted load.