Have you ever wondered what you could do to help combat climate change? Priya Donti did, too — and now she's researching energy optimization and assembling folks in her community to tackle the defining problem of our future.
Read on for the transcript!
Hi, I’m Monte Zweben, CEO of Splice Machine. You’re listening to ML Minutes, where cutting-edge thought leaders discuss Machine Learning in one minute or less. Let’s get started!
This episode, our guest is Priya Donti, a PhD student in Computer Science and Public Policy at Carnegie Mellon, as well as the co-founder and chair of Climate Change AI. Welcome Priya!
0:30 Priya Thanks Monte.
Your work lies at the intersection of machine learning and electric power systems and climate change. Tell us about your journey. How did you get to where you are now?
Yeah, so in high school, I actually took a one week class on sustainability that was taught during my intro biology class during my first week, and we had a lesson on climate change. And, I mean, we learned, of course, what climate change is, how it's affecting our planet. And importantly, the fact that climate change is going to most disproportionately affect those who are already disadvantaged. And so I really knew from then that I wanted to work on climate change. And when I got to college, I got really interested in computer science, I had a core computer science class that was really well taught and was, you know, just a ton of fun. And I had no idea how I was going to bring these things together. So I had a college mentor who was looking out for ways I could try to do this. And they passed along a paper at some point called putting the smarts into the smart grid about machine learning and energy systems. And I've been working on that topic ever since.
Terrific, we need more of that. So given that thrust that you've been doing ever since your high school career, what was the inspiration for co-founding Climate Change AI?
So while I've been working on this topic for a few years, I really got in depth into it right after college. I spent a year traveling around the world and interviewing people about next-generation energy systems. But there wasn't really when I started my PhD, a huge community of people who are working at this intersection of machine learning and climate change. And I went to a conference at some point, I was presenting some of my work. And as a result got invited to a lunch that somebody was holding on machine learning and climate change. And I was like, really, like, they're actually people, other people who are thinking about this. And I got invited to present, I walk into the room, there were 50 other people there. And we all got to talking. And basically, after meeting the organizer, he reached out to me afterwards, and we decided to write a paper called Tackling Climate Change with Machine Learning. And after that came out, we decided to start climate change AI.
That's terrific--you created your own community, you wrote about it with your colleagues, and you created an entire organization. That's fantastic. So along with Climate Change AI, you're doing some fundamental research in the electricity sector, perhaps you could tell us a little bit about your research and using machine learning to optimize electricity production, distribution, transmission, and give us a little background on that.
One fundamental failure with a lot of machine learning methods is that they are terrible at dealing with, you know, physics or hard constraints or any real hard requirements on the way they operate. And this is a real challenge. When it comes to electricity systems, I mean, electricity systems have to satisfy fundamental physical equations that govern how power flows throughout them, for example, and if you don't satisfy those, you get a power blackout. And so, what I think a lot about is, how do we bridge the knowledge we already have about power systems? How do we take that physics? And how do we take the data that we have that we would want to use machine learning with? And sort of bring these two worlds together? So how do we do sort of bridge power system optimization and physics with the way we do machine learning, and I look at this specifically in the context of deep learning, so to throw some jargon in there, how do you create neural network layers that actually represent power system optimization models?
Fantastic. So, your research is fundamentally introducing physical laws into deep learning models? Can you give us one or two examples of how you do that?
Sure. So, um, basically, a power system optimization model generally tries to kind of figure out how much power each power generator on the grid should produce in order to make sure that all the demand on the power grid is satisfied and these physical equations of the grid are also satisfied. So this is an optimization problem and optimization problems have something associated with them called KKT conditions. But these basically are equations that describe the optimal solutions of this optimization problem. And the upshot is basically that we figure out a way to take derivatives through these KKT conditions. And this is sort of the holy grail of deep learning, which is that in order to put something into a neural network, you have to be able to take derivatives through it. So that's the general idea, we figured out a kind of a clever way to take derivatives through these power system optimization models, so we can sort of stick them into neural networks.
Excellent, I think I understand. So you figured out a way to model the hard physical constraints, by finding ways of detecting derivatives? I presume that might be because you you need to do gradient descent search in order to train the models. And that is how you incorporate those those physical conditions?
Why is this so important, though, maybe you can help our listeners understand, why is it so important to model these physical constraints in the middle of a deep learning model?
Yeah, so one kind of challenge that you see in power systems is that these physical models are actually really, really expensive to run, if you run the whole thing. And as you have more and more renewables coming on to the power grid, that is challenging, because you have renewables that are changing from moment to moment, the amount of power that they produce, and you have to run these optimization problems more and more often, and get there slow. And so there have been a lot of approaches that have tried to just replace these optimization models entirely with machine learning models, because machine learning models are fast to run. But as I sort of talked about earlier, if you have a machine learning model that is operating on the grid, and isn't able to satisfy these fundamental equations of the power grid, the power grid's gonna break. And so the idea is that it's important to be able to incorporate some of these kind of important constraint some of the important parts of the optimization model into your machine learning model, so that your machine learning model can still be fast, but that it's sort of preserving these important properties of the power grid.
I understand; I think what we're talking about here is a trade off of speed versus accuracy. And that traditional optimization methods may be searching through a space of optimal solutions, but always respecting the physical constraints, whereas the machine learning systems are statistically pattern-matching, and may miss a physical constraint. And now you're trying to fix that problem and make sure that the machine learning models are providing that speed test, but still reflecting their physical realities.
What tools are you using for this research?
So, in terms of kind of methodological tools, um, I use a lot of convex optimization theory and tools from optimization theory, and things like multivariate calculus in order to actually, you know, take these derivatives through these optimization problems. And in terms of the implementation, I use, in particular, one deep learning library called PyTorch. In particular sense, in this research, I have to sort of write custom deep learning layers. PyTorch has a really nice interface to do that, and to then be able to sort of present that neural network layer that we've developed in a way such that somebody else could just plug it into their own model. So that's what I end up using.
Excellent. Okay, so this has been a fantastic conversation about your research area, and what you've done with deep learning. But perhaps, more abstractly, what's one specific challenge that you faced along the way in this research?
So, I think when doing research in academia, that is really meant to be deployed, there can often be a disconnect between, you know, the research problems you're working on, and what is actually needed in industry. Or even if you are working on a research problem that is really relevant to industry, how do you get that deployed in the real world? Jack Kelly, the founder of a nonprofit called Open Climate Fix, he's been known to have said that, "If you publish a paper on research, the climate doesn't see those effects. The climate only sees effects if things are actually deployed on the ground." And so yeah, that can definitely be a challenge, bridging that gap between research and deployment.
How do you overcome that? Is this about integration into distributed control systems and SCADA systems? Or are there other elements that you needed to look at in order to really impact the world versus just publish papers?
Sure, so I mean, at a kind of macro level, one issue that we're often dealing with is that energy system operators are using, you know, these legacy systems, these older systems that, you know, and older processes, where this is how they've optimized the power grid forever. And this is how they've made sure that the power grid doesn't black out forever. Um, and so there's just simply some kind of, you know, challenges to figure out how do new machine learning methods or new methods at all either integrate with those systems or replace those systems? And that comes with engineering challenges: How do you actually integrate these things, technically, but also regulatory challenges. I mean, if something goes wrong on the power grid, somebody has to account for that. And there has to be some audit of that. So there are a lot of challenges like that, just in terms of how this works at all. I think for an individual researcher, there are lots of challenges around how do you make sure that you're adequately getting feedback from industry, are adequately interacting with industry practitioners? And that's a separate kind of challenge in itself.
Thank you. Well, what's next, in your research? What do you see as the next phase that you're going to study?