Charging Algorithms



The Preston M. Green Department of Electrical & Systems Engineering
Washington University in St. Louis

This project was completed by Andrew Hess and Sam Donohue under the advisement of Dr. Arye Nehorai and Peng Yang (Team).

It was programmed from scratch using Python with analysis done in MATLAB. Source code available on GitHub.


With the growing public awareness of clean energy and efforts towards a sustainable society, the demand for plug-in hybrid electric vehicles (PHEVs) and electric vehicles (EVs) has been increasing steadily over the past decade. These vehicles utilize rechargeable batteries or other energy storage devices, and are much more energy-efficient and environment-friendly than traditional gasoline or diesel vehicles. As these vehicles become more mainstream in society, the charging demands of of many PHEVs and EVs could raise problems to the power grid, which include increased demand for electricity and unwanted peak loads due to simultaneous charging. An optimal scheduling strategy that takes into account cost efficiency, user demands, and load distribution would help offset peak loads and keep the power demand balanced. In this project, we considered EV charging in a parking lot, where the charging schedules are determined by a central controller. We applied both classical and some recently proposed scheduling algorithms, some of which take into account admission control. To help find efficient solutions, each scheduling algorithm was developed in Python and tested against varying parameters such as arrival rate, user demands, and the number of charging ports. With these algorithms, we considered different realistic scenarios, which included a parking lot for a workplace, a sports stadium, and town post office. To compare the performance of different algorithms, we used profit and success rate as performance metrics. Our results suggest that the classical queueing algorithms of first come first serve (FCFS), earliest deadline first (EDF), and least laxity first (LLF) are still the better algorithms to use, despite the influx of new dynamic algorithms such as Decision Scheduling Admission Control (DSAC). Our findings also indicate that a full implementation of admission control alongside a dedicated schedule for each charge port produces better results.