Computational Approaches to Problems in Energy and Sustainability