Multi-Agent Control For Integrated Smart Building And Micro-Grid Systems