1. A method for optimizing building energy usage, the method comprising receiving a plurality of input values associated with a building or plurality of buildings; constructing a thermal and an electrical load model based on the inputs; constructing an overall energy model, the overall energy model being based on the thermal and electrical load models; generating a plurality of demand models based on the constructed energy model; optimizing the demand models using complex multivariate optimization techniques, wherein optimizing is based on usage data and energy rules; and displaying recommendations based on the optimized model or generating real-time, complementary control instructions based on the optimized model.