Optimizing the Power Grid with Python*

Location

Ada, Ohio

Start Date

9-12-2025 12:10 PM

End Date

9-12-2025 12:20 PM

Description

The electrical grid is powered by a variety of power plants of many different types, each with a different production price, environmental footprint, and upper and lower production bound. As consumers, it’s in our best interest that the least expensive plants are chosen, as this leads to lower electricity bills. To aid in the teaching of this concept, and to make the idea more accessible to more people, we’re creating a game based off of the optimization of the electricity grid and the variables that can influence it, like weather and consumer use.

This is a larger project than can be completed in one semester. As such, we dedicated this semester to the development of a Python script to optimize the amount of electricity being generated from multiple plants to find the combination of plant generation levels that costs the consumer the least. This script utilizes the PyMOO (Python Multi-Objective Optimization) library and a genetic algorithm to generate several initial populations within the plants’ bounds, then chooses the cheapest results from there, crosses them over with each other to create new populations, mutates a few numbers, then repeats until a certain number of generations is reached. This is run independently on several threads at once, and once all are finished, the best result of all runs is returned to the user. They can then be shown a graph of the best result.

This document is currently not available here.

Share

COinS
 
Dec 9th, 12:10 PM Dec 9th, 12:20 PM

Optimizing the Power Grid with Python*

Ada, Ohio

The electrical grid is powered by a variety of power plants of many different types, each with a different production price, environmental footprint, and upper and lower production bound. As consumers, it’s in our best interest that the least expensive plants are chosen, as this leads to lower electricity bills. To aid in the teaching of this concept, and to make the idea more accessible to more people, we’re creating a game based off of the optimization of the electricity grid and the variables that can influence it, like weather and consumer use.

This is a larger project than can be completed in one semester. As such, we dedicated this semester to the development of a Python script to optimize the amount of electricity being generated from multiple plants to find the combination of plant generation levels that costs the consumer the least. This script utilizes the PyMOO (Python Multi-Objective Optimization) library and a genetic algorithm to generate several initial populations within the plants’ bounds, then chooses the cheapest results from there, crosses them over with each other to create new populations, mutates a few numbers, then repeats until a certain number of generations is reached. This is run independently on several threads at once, and once all are finished, the best result of all runs is returned to the user. They can then be shown a graph of the best result.