# An analysis of Supercharger strategies (crosspost)

#### KarenRei

##### Top-Contributor
Out of curiosity, I wrote a program to model potential Tesla supercharging strategies, relative to the current "first come, first serve" - particularly with respect to how they might differ as charger powers and numbers of stalls changes. It's set for a "near future" scenario where 65% of vehicles at SCs are Model 3s, 20% are Model S and 15% are Model X (with a further breakdown of battery types and charge rate limitations therein). Vehicles arrive at various charge states - usually low - and charge to some higher charge state - usually over half, but usually not to 100%. Just basically tried to keep it realistic. I had it maintain a level of "business" such that around 1 in 10 vehicles would have to wait for a stall. Arrival rates follow a gaussian distribution. A total of 400000 vehicles were run through the system for each config.

I had charger powers and per-stall power grow with the number of stalls. For each combination:

2 stalls, 145kW total power, 117kW stall power:

• First come, first served: Time=(Avg=34.0m, Stdev=20.4m), kW=(Avg=85.3, Stdev=25.6)
• Last come, first served: Time=(Avg=35.2m, Stdev=23.2m), kW=(Avg=85.4, Stdev=26.5)
• Lowest max charge power, first served: Time=(Avg=35.5m, Stdev=22.8m), kW=(Avg=84.6, Stdev=26.5)
• Highest max charge power, first served: Time=(Avg=34.0m, Stdev=20.6m), kW=(Avg=85.4, Stdev=24.8)
• Fewest kWh remaining to charge, first served: Time=(Avg=35.0m, Stdev=21.4m), kW=(Avg=83.8, Stdev=26.0)
• Most kWh remaining to charge, first served: Time=(Avg=34.4m, Stdev=22.2m), kW=(Avg=86.1, Stdev=24.7)
4 stalls, 220kW total power, 154kW stall power:

• First come, first served: Time=(Avg=35.9m, Stdev=23.2m), kW=(Avg=86.5, Stdev=36.2)
• Last come, first served: Time=(Avg=37.9m, Stdev=28.6m), kW=(Avg=88.8, Stdev=38.7)
• Lowest max charge power, first served: Time=(Avg=38.1m, Stdev=27.7m), kW=(Avg=87.7, Stdev=39.4)
• Highest max charge power, first served: Time=(Avg=35.7m, Stdev=24.1m), kW=(Avg=87.4, Stdev=34.5)
• Fewest kWh remaining to charge, first served: Time=(Avg=37.2m, Stdev=24.2m), kW=(Avg=84.8, Stdev=36.7)
• Most kWh remaining to charge, first served: Time=(Avg=36.6m, Stdev=27.8m), kW=(Avg=89.8, Stdev=36.2)
6 stalls, 280kW total power, 182kW stall power:

• First come, first served: Time=(Avg=39.0m, Stdev=25.3m), kW=(Avg=81.2, Stdev=37.2)
• Last come, first served: Time=(Avg=40.3m, Stdev=32.2m), kW=(Avg=87.8, Stdev=41.6)
• Lowest max charge power, first served: Time=(Avg=40.4m, Stdev=30.7m), kW=(Avg=86.8, Stdev=42.4)
• Highest max charge power, first served: Time=(Avg=38.8m, Stdev=27.4m), kW=(Avg=83.1, Stdev=35.3)
• Fewest kWh remaining to charge, first served: Time=(Avg=39.6m, Stdev=25.9m), kW=(Avg=81.4, Stdev=38.0)
• Most kWh remaining to charge, first served: Time=(Avg=39.6m, Stdev=32.8m), kW=(Avg=88.1, Stdev=39.3)
8 stalls, 333kW total power, 204kW stall power:

• First come, first served: Time=(Avg=41.6m, Stdev=26.6m), kW=(Avg=76.8, Stdev=37.3)
• Last come, first served: Time=(Avg=42.7m, Stdev=35.3m), kW=(Avg=86.2, Stdev=43.6)
• Lowest max charge power, first served: Time=(Avg=42.7m, Stdev=33.3m), kW=(Avg=85.2, Stdev=44.5)
• Highest max charge power, first served: Time=(Avg=41.5m, Stdev=30.2m), kW=(Avg=79.8, Stdev=35.7)
• Fewest kWh remaining to charge, first served: Time=(Avg=42.2m, Stdev=27.3m), kW=(Avg=77.5, Stdev=38.7)
• Most kWh remaining to charge, first served: Time=(Avg=42.3m, Stdev=37.1m), kW=(Avg=86.7, Stdev=41.5)
Summary:
Perhaps it shouldn't be surprising, but Tesla's strategy of "first come, first served", appears to be the best. It provides for both short charging times and a low standard deviation (aka, it's generally "fair"). Its success generally holds out to the other scenarios tested (although there could exist other scenarios where it might not fare as well). A close contender is "highest max charge power, first served". The option "Fewest kWh remaining to charge, first served" is better performing than average (except in the 2 stall case), but not spectacular. Other options are generally unappealing.

Code is attached below in case anyone wants to play with it. I wrote it in English so it would be understandable #### Attachments

• 11.7 KB Views: 28

#### webdriverguy

##### Top-Contributor
Out of curiosity, I wrote a program to model potential Tesla supercharging strategies, relative to the current "first come, first serve" - particularly with respect to how they might differ as charger powers and numbers of stalls changes. It's set for a "near future" scenario where 65% of vehicles at SCs are Model 3s, 20% are Model S and 15% are Model X (with a further breakdown of battery types and charge rate limitations therein). Vehicles arrive at various charge states - usually low - and charge to some higher charge state - usually over half, but usually not to 100%. Just basically tried to keep it realistic. I had it maintain a level of "business" such that around 1 in 10 vehicles would have to wait for a stall. Arrival rates follow a gaussian distribution. A total of 400000 vehicles were run through the system for each config.

I had charger powers and per-stall power grow with the number of stalls. For each combination:

2 stalls, 145kW total power, 117kW stall power:

• First come, first served: Time=(Avg=34.0m, Stdev=20.4m), kW=(Avg=85.3, Stdev=25.6)
• Last come, first served: Time=(Avg=35.2m, Stdev=23.2m), kW=(Avg=85.4, Stdev=26.5)
• Lowest max charge power, first served: Time=(Avg=35.5m, Stdev=22.8m), kW=(Avg=84.6, Stdev=26.5)
• Highest max charge power, first served: Time=(Avg=34.0m, Stdev=20.6m), kW=(Avg=85.4, Stdev=24.8)
• Fewest kWh remaining to charge, first served: Time=(Avg=35.0m, Stdev=21.4m), kW=(Avg=83.8, Stdev=26.0)
• Most kWh remaining to charge, first served: Time=(Avg=34.4m, Stdev=22.2m), kW=(Avg=86.1, Stdev=24.7)
4 stalls, 220kW total power, 154kW stall power:

• First come, first served: Time=(Avg=35.9m, Stdev=23.2m), kW=(Avg=86.5, Stdev=36.2)
• Last come, first served: Time=(Avg=37.9m, Stdev=28.6m), kW=(Avg=88.8, Stdev=38.7)
• Lowest max charge power, first served: Time=(Avg=38.1m, Stdev=27.7m), kW=(Avg=87.7, Stdev=39.4)
• Highest max charge power, first served: Time=(Avg=35.7m, Stdev=24.1m), kW=(Avg=87.4, Stdev=34.5)
• Fewest kWh remaining to charge, first served: Time=(Avg=37.2m, Stdev=24.2m), kW=(Avg=84.8, Stdev=36.7)
• Most kWh remaining to charge, first served: Time=(Avg=36.6m, Stdev=27.8m), kW=(Avg=89.8, Stdev=36.2)
6 stalls, 280kW total power, 182kW stall power:

• First come, first served: Time=(Avg=39.0m, Stdev=25.3m), kW=(Avg=81.2, Stdev=37.2)
• Last come, first served: Time=(Avg=40.3m, Stdev=32.2m), kW=(Avg=87.8, Stdev=41.6)
• Lowest max charge power, first served: Time=(Avg=40.4m, Stdev=30.7m), kW=(Avg=86.8, Stdev=42.4)
• Highest max charge power, first served: Time=(Avg=38.8m, Stdev=27.4m), kW=(Avg=83.1, Stdev=35.3)
• Fewest kWh remaining to charge, first served: Time=(Avg=39.6m, Stdev=25.9m), kW=(Avg=81.4, Stdev=38.0)
• Most kWh remaining to charge, first served: Time=(Avg=39.6m, Stdev=32.8m), kW=(Avg=88.1, Stdev=39.3)
8 stalls, 333kW total power, 204kW stall power:

• First come, first served: Time=(Avg=41.6m, Stdev=26.6m), kW=(Avg=76.8, Stdev=37.3)
• Last come, first served: Time=(Avg=42.7m, Stdev=35.3m), kW=(Avg=86.2, Stdev=43.6)
• Lowest max charge power, first served: Time=(Avg=42.7m, Stdev=33.3m), kW=(Avg=85.2, Stdev=44.5)
• Highest max charge power, first served: Time=(Avg=41.5m, Stdev=30.2m), kW=(Avg=79.8, Stdev=35.7)
• Fewest kWh remaining to charge, first served: Time=(Avg=42.2m, Stdev=27.3m), kW=(Avg=77.5, Stdev=38.7)
• Most kWh remaining to charge, first served: Time=(Avg=42.3m, Stdev=37.1m), kW=(Avg=86.7, Stdev=41.5)
Summary:
Perhaps it shouldn't be surprising, but Tesla's strategy of "first come, first served", appears to be the best. It provides for both short charging times and a low standard deviation (aka, it's generally "fair"). Its success generally holds out to the other scenarios tested (although there could exist other scenarios where it might not fare as well). A close contender is "highest max charge power, first served". The option "Fewest kWh remaining to charge, first served" is better performing than average (except in the 2 stall case), but not spectacular. Other options are generally unappealing.

Code is attached below in case anyone wants to play with it. I wrote it in English so it would be understandable Cool will play with the script when I get some time

##### Active member
How deliciously nerdy #### Bokonon

##### Self-identified Teslaholic
Moderator
TOO Supporting Member
Love this! Reminds me of a parking-lot simulation program I wrote in college to model the impact of adding various access-control mechanisms to campus parking lots. But I have to say, this Supercharger problem is a *lot* more compelling. I've never worked with Python before but I'll definitely have to play around with this. Thanks for sharing!

#### KarenRei

##### Top-Contributor
Definitely let me know if you find any bugs or oversights #### webdriverguy

##### Top-Contributor
Definitely let me know if you find any bugs or oversights You should definitely create a github repo for this. Just sayin 