Optimizing resource allocation in computational sustainability: Models, algorithms and tools