A multi-objective optimization methodology for window design considering energy consumption, thermal environment and visual performance. (April 2019)