1
Adaptive Charging Networks:
A Framework for Smart Electric Vehicle Charging
Zachary J. Lee,
Graduate Student Member, IEEE,
, George Lee, Ted Lee, Cheng Jin, Rand Lee, Zhi Low,
Daniel Chang, Christine Ortega, Steven H. Low
Fellow, IEEE
Abstract
—We describe the architecture and algorithms of the
Adaptive Charging Network (ACN), which was first deployed on
the Caltech campus in early 2016 and is currently operating at
over 100 other sites in the United States. The architecture enables
real-time monitoring and control and supports electric vehicle
(EV) charging at scale. The ACN adopts a flexible Adaptive
Scheduling Algorithm based on convex optimization and model
predictive control and allows for significant over-subscription
of electrical infrastructure. We describe some of the practical
challenges in real-world charging systems, including unbalanced
three-phase infrastructure, non-ideal battery charging behavior,
and quantized control signals. We demonstrate how the Adaptive
Scheduling Algorithm handles these challenges, and compare
its performance against baseline algorithms from the deadline
scheduling literature using real workloads recorded from the
Caltech ACN and accurate system models. We find that in these
realistic settings, our scheduling algorithm can improve operator
profit by 3.4 times over uncontrolled charging and consistently
outperforms baseline algorithms when delivering energy in highly
congested systems.
I. I
NTRODUCTION
T
HE number of electric vehicles on the road is expected
to reach 125 million by 2030, generating 404 TWh of
additional electricity demand [1]. Charging these EVs cleanly,
affordably, and without excessive stress on the grid will require
advances in charging system design, hardware, monitoring,
and control. Collectively we refer to these advances as smart
charging. Smart charging will substantially reduce the environ-
mental footprint of transportation while unlocking immense
potential for demand-side management.
Smart charging is especially crucial for large-scale charging
facilities such as those in workplaces, apartment complexes,
shopping centers, airports, and fleet charging facilities. Provid-
ing charging at these diverse sites is vital to the widespread
adoption of electric vehicles. Doing so can reduce range
anxiety and provide an alternative to personal charging ports
for those who cannot install them at their homes. Since many
of these sites will provide charging during daytime hours, they
This work was supported in part by the National Science Foundation
under the Graduate Research Fellowship Program (Grant No. 1745301),
NSF AIR-TT (Grant No. 1602119), NSF ECCS (Grant No. 1932611), and
NSF CCF (Grant No. 1637598). It also received support under the Resnick
Sustainability Institute Graduate Fellowship, Caltech RocketFund, Caltech CI2
Grant, the Emerging Technologies Coordinating Council of Utilities, and Well
Fargo/NREL IN2.
Z. Lee, C. Ortega, and S. Low are with the Division of Engineering and
Applied Sciences, California Institute of Technology, Pasadena, CA 91125
USA (e-mail: zlee@caltech.edu; slow@caltech.edu).
R. Lee, D. Chang, and Z. Low were formerly with the California Institute
of Technology, Pasadena, CA 91125 USA
G. Lee, T. Lee, and C. Jin are with PowerFlex, Los Altos, CA, 94022 USA.
can make use of abundant solar energy production and enable
EVs to provide grid services throughout the day. However,
with current technology, most sites are unable to install more
than a few charging ports due to limited infrastructure capacity
and fear of high electricity bills. Smart charging allows sites to
scale their port capacity without costly infrastructure upgrades.
Moreover, scheduling algorithms can reduce operating costs by
optimizing for time-of-use tariffs, demand charges, and on-site
renewable generation. Algorithms can also enable additional
revenue streams by providing grid services.
In this paper, we report the design, implementation, and
application of a smart charging system that we call an Adaptive
Charging Network (ACN). In Section III, we describe the
architecture through the lens of the first ACN, which was built
on the Caltech campus in 2016, shown in Fig. 1. The ACN
enables real-time control and monitoring of charging systems
at scale. It has spawned a company, PowerFlex Systems,
which operates over 100 similar charging systems around the
United States. These include national laboratories, universities,
schools, businesses, apartment complexes, hotels, and public
parking facilities.
Through our experience building large-scale charging facil-
ities, we find that common assumptions made in theoretical
models do not hold in many practical systems. We describe
these in Section IV. This makes it challenging to apply
algorithms proposed in the literature directly. In order to
develop practical and robust algorithms for the ACN, we
present the Adaptive Scheduling Algorithm (ASA) framework
for online (causal) smart charging algorithms based on convex
optimization and model predictive control (MPC). We describe
the ASA framework in Section V. Then, in Section VI, we
demonstrate ASA’s performance in the context of maximizing
energy delivery in congested infrastructure and minimizing
operating costs, including demand charge using simulations
based on real data collected from the ACN.
Beyond serving as a model for smart charging systems, the
ACN has led to the creation of the ACN Research Portal. This
portal has three parts: ACN-Data, a collection of real fine-
grained charging data collected from the Caltech ACN and
similar sites [2]; ACN-Sim, an open-source simulator which
uses data from ACN-Data and realistic models derived from
actual ACNs to provide researchers with an environment to
evaluate their algorithms and test assumptions [3]; and ACN-
Live, a framework for safely field testing algorithms directly
on the Caltech ACN. Thus the ACN has proven to be a
valuable tool in both commercial and academic environments.
arXiv:2012.02636v1 [eess.SY] 4 Dec 2020
2
Fig. 1. The ACN smart EV charging testbed at Caltech.
II. R
ELATED
W
ORK
Several smart EV charging systems have been developed,
though usually at a smaller scale than the ACN. The Smart
Energy Plaza (SEP) at Argonne National Laboratory consists
of six controllable level-2 EVSEs [4]. Likewise, the WinS-
martEV system at UCLA consists of quad-port EVSEs capable
of sharing a single oversubscribed circuit and multiple level-
1 chargers with binary control [5], [6]. My Electric Avenue
tested a control system to managed charging from 200 Nissan
LEAFs to manage congestion in the distribution system [7].
The Parker project utilized a testbed of 10 bi-directional
EVSEs at a commercial site to investigate the potential of EVs
to provide frequency regulation services and adapt to marginal
emissions signals [8].
There is also a tremendous literature on EV charging
algorithms; see surveys [9], [10] for extensive pointers to the
literature. Some recent work specifically related to large-scale
EV charging includes [11]–[18].
Several works have been based on the ACN and data
collected from it. [2] uses data from the ACN to predict user
behavior, size solar generation for EV charging systems, and
evaluate the potential of EV charging to smooth the duck
curve. [19] clusters sessions based on their charging behavior
using time series of charging current collected from the ACN.
[20] proposes a pricing scheme to allocate costs (including
demand charge) to charging sessions. [21], [22] use data to
quantify fleet-level flexibility within a charging facility, and
[23] uses ACN-Sim to train reinforcement learning agents to
schedule large-scale EV charging.
Our work adds to the existing body of research insights from
building real-world EV charging systems. It extends [24], [25],
which describe the ACN in earlier stages of development. It
provides a more thorough description of the ACN architecture
and algorithmsand ASA and demonstrates ASA’s effectiveness
in realistic scenarios through simulation.
III. A
DAPTIVE
C
HARGING
N
ETWORK
A
RCHITECTURE
We first describe the architecture of the ACN through the
lens of the Caltech ACN. Since its installation in early 2016,
the Caltech ACN has grown from 54 custom-built level-2 elec-
tric vehicle supply equipment (EVSEs) in a single garage [24],
to 126 commercially available level-2 EVSEs, one 50 kW DC
Fast Charger (DCFC), and four 25 kW DCFC, spread between
Data
Storage
Communication
Interface
Mobile
App
Control
Algorithms
Other
Loads
Electrical
Network
Local
Generation
Infromation
System
Physical
System
Grid
Connection
Information
Flow
Power
Flow
Driver
Decision
Sensors
EVSEs
and
BMS
Drivers
Electric
Vehicles
Fig. 2. Architecture of the ACN. Blue and green arrows signify the flow of
information and power, respectively. Sensors measure power flowing in the
electrical network and convert this into information. Likewise, EVSEs and the
EVs’ onboard battery management system (BMS) work together as actuators
to control the flow of power into each EVs battery based on signals from the
information system. Drivers provide information to the system via a mobile
app and directly control when EVs are plugged in or unplugged from the
system (signified by the purple arrow).
three parking garages on campus. These EVSEs have delivered
over 1,103 MWh as of July 7, 2020. The Caltech ACN is a
cyber-physical system, as shown in Fig. 2, that consists of five
interacting subsystems: (1) the information system which is
responsible for collecting information and computing control
actions; (2) the sensor system which gathers information from
the physical system; (3) the actuation system (made up of
EVSEs and the EVs’ battery management systems) which
controls each vehicle’s charging rate; (4) the physical system
(electrical infrastructure) which delivers power to the EVs and
other loads within the system; (5) drivers who provide data
to the system and decide when their vehicles are available to
charge. In this section, we describe these subsystems and their
interactions.
A. Information system
ACN’s information system collects and stores relevant data
and computes control actions. It consists of four components:
Communication interface:
The communication interface
collects sensor data and passes it to the data storage layer.
It also passes signals generated by the control algorithms
to the corresponding EVSEs. An industrial computer within
the parking garage controls this communication interface. It
connects to the cloud-based components through a cellular
internet connection and to sensors and EVSEs within the ACN
via a Zigbee based mesh network.
Data storage:
The ACN utilizes a relational database to
store information such as site configurations, driver profiles,
and charging session parameters. A dedicated time-series
database stores measurements like voltage, current, and power
readings taken from sensors in the electrical network . The data
storage layer allows us to create visualizations for drivers and
site operators, which helps them understand the state of the
3
system and their own EV’s charging trajectory in real-time, as
seen at [26].
Mobile app:
Our mobile app collects data directly from
drivers. After setting up an account, a driver scans a QR code
on the EVSE, and then provides an estimated departure time
and requested energy. If the driver’s plans change, they can
update these parameters throughout the charging session. The
app also allows the site to collect payment and, if desired,
implement access control. To ensure that drivers provide
information through the app, an EV will only charge at 8 amps
until the driver claims the session through the app. After 15
minutes, if the session is not claimed, it will be terminated,
and the EVSE will cease charging.
Control algorithms:
The control layer takes inputs from
the data layer and calculates a charging schedule for each EV
in the system. We use an event-based system to trigger the
scheduling updates. The events considered include a vehicle
plugging in or unplugging, a driver changing request param-
eters, or a demand response signal from the utility. Events
are handled by a publish-subscribe model. Whenever an event
occurs, or the time since the last charging schedule update
exceeds a threshold (for example, 5 min), we compute a
new charging schedule. These periodic computations close the
control loop and account for discrepancies between the control
signal sent to each EV and its actual current draw. We describe
this model predictive control framework in detail in Section V.
B. EVSEs and Battery Management System
To control charging rates, we use the pilot signal mecha-
nism defined by the J1772 standard for level-2 EVSEs [27].
According to this standard, the EVSE can communicate an
upper bound to the EV’s battery management system (BMS)
that limits the amount of current it may draw from the EVSE.
Because it is only an upper bound, the vehicle’s BMS may
choose to charge at a lower rate. This can occur for various
reasons such as the pilot signal being higher than the vehicle’s
maximum charging rate or the BMS limiting current draw as
the battery reaches a high state of charge. It can be difficult to
diagnose why a car is charging below its allocated pilot signal
since the J1772 standard does not provide a way to gather the
EV’s state of charge. Also, most EVSEs on the market today,
including the ClipperCreek, Webasto, and Tesla EVSEs in the
Caltech ACN, only support a finite set of pilot signal values
and require quantization of the control signal.
C. Sensors
Sensors provide a bridge between the physical system and
the information system. These sensors measure power, current,
and voltage within the local electrical network, allowing us to
monitor the system state and accurately track energy usage.
The sensors also provide feedback for the control algorithm.
D. Physical system
The physical system of the ACN includes the local electrical
network (including transformers, lines, breakers, loads, and
local generation), a connection to the grid, and the electric
vehicles. Fig. 3 shows the topology of the local electrical
network for one garage of the Caltech ACN. Power is delivered
Main Switch Panel
(277 V / 640 A)
Garage Loads
(Lighting, Fans,
Elevators, etc.)
Δ-Y
Transformers
150 kV
A
Utility Company
50 kW
t
0
Switch Panel 1
(120 V / 420 A)
t
1
Switch Panel 2
(120 V / 420 A)
t
2
x14
x10
x19
Fig. 3. System topology for the California Parking Garage in the Caltech
ACN. The system consists of 78 EVSEs and one 50 kW DC Fast Charger.
Switch Panel 1 is fed by a 150 kVA transformer and feeds 54 6.7 kW EVSEs,
leading to a 2.4X over-subscription ratio. Nineteen of these lines feed pairs of
two 6.7 kW AeroVironment EVSEs. Two additional 80 A lines feed pods of
eight 6.7 kW EVSEs each, one pod of AeroVironment stations and the other
of Clipper Creek stations. Switch Panel 2 is fed by an identical 150 kVA
transformer and feeds 14 13.3 kW Clipper Creek EVSEs and 10 16.6 kW
Tesla EVSEs. Each of these EVSEs has a dedicated 80 A line. All EVSEs in
the system are connected line-to-line at 208 V. The 50kW DC Fast Charger
from BTC Power is a balanced 3-phase load connected directly to the main
switch panel. We do not directly control the DCFC at this time.
to the garage from the distribution transformer via three-phase
service at 480 V
LL
.
From there, power is distributed throughout the garage via
the main switch panel. The ACN is connected to this panel by
two 150 kVA delta-wye transformers
t
1
and
t
2
, which step the
voltage down to 120 V
LN
. Each level-2 EVSE is a single-phase
load connected line-to-line (208 V
LL
) with a maximum current
draw between 32 A to 80 A depending its type. Because of
unequal loading between phases, which is unavoidable due
to the stochastic nature of driver demands on the system,
balanced operation cannot be assumed. This makes protection
of transformers
t
1
and
t
2
challenging which we discuss in
Section IV-A. Another interesting feature of the Caltech ACN
is the two pods of eight EVSEs. These pods are each fed by
an 80 amp line. Since each EVSE in the pod has a maximum
charging rate of 32 A, these lines are oversubscribed by 3.2
times. This demonstrates how smart charging can allow sites
to scale EVSE capacity with existing infrastructure.
In addition to the 78 EVSEs in the garage, the ACN also
includes a 50 kW DC fast charger (DCFC). This DCFC is a
balanced three-phase load. While this garage does not have
local generation, other garages in the Caltech ACN and other
PowerFlex sites have on-site solar generation.
E. Drivers
Human behavior can add significant randomness to the
system. Drivers may arrive, depart, or change their input
parameters at any time. Drivers are also difficult to model.
Input through the mobile app can be highly inaccurate, as
shown in [2]. To combat this, we have explored using machine
learning to predict driver parameters [2] as well as pricing
4
schemes that incentivize drivers to provide accurate estimates
[20].
IV. P
RACTICAL
C
HALLENGES FROM THE
T
ESTBED
By building and operating the Caltech ACN, we have
identified several important features of the physical system
that have not been addressed in the EV charging literature but
pose real problems for implementing practical EV scheduling
algorithms. Among these are proper modeling of the unbal-
anced three-phase electrical network, incorporation of EVSE
quantization, and adaptation to non-ideal battery behavior. We
describe these models in this section and explain how we
incorporate them into an MPC framework in Section V. These
models also form the basis of the component models included
in ACN-Sim [3].
A. Infrastructure modeling
As discussed in Section III-D, the electrical infrastructure
within the ACN is oversubscribed and often unbalanced. In
our data, we observe that without proper control, these phase
imbalances can be significant, as seen in Fig. 5. While many
algorithms have been proposed to handle charging with an
aggregate power limit or even a hierarchy of limits, most
previous work has focused on single-phase or balanced three-
phase systems, making them inapplicable to charging systems
like the ACN. An exception to this is the work of De
Hoog et al. [28], which considers an unbalanced three-phase
distribution system but only in the case of wye-connected
EVSEs. In contrast, the EVSEs in the ACN and most large
charging systems in the United States are connected line-to-
line, as shown in Fig. 4.
In general, infrastructure constraints can be expressed as
upper bounds on the magnitudes of currents within the system.
By Kirchoff’s Current Law, we can express any current within
the system as the sum of load currents. Let
V
(
t
)
denote the set
of EVs which are available to be charged at time
t
. The current
draw of EV
i
at time
t
can be expressed as a phasor in the form
r
i
(
t
)
e
jφ
i
where
r
i
(
t
)
is the charging rate of the EV in amps,
and
φ
i
is the phase angle of the current sinusoid. We assume
in this model that each charging EV has a unity power factor,
so
φ
i
is known based on how the EVSE is connected and
the voltage phase angles (which we assume are separated by
±
120
◦
).
1
We can then model constraints within the electrical
system as
∣
∣
∣
∣
∣
∑
i
∈V
A
li
r
i
(
t
)
e
jφ
i
+
L
l
(
t
)
∣
∣
∣
∣
∣
≤
c
lt
t
∈T
,l
∈L
(1)
Infrastructure limits of the network are indexed by resources
l
∈ L
, e.g.,
l
may refer to a transformer or a breaker on
a phase. For each constraint
l
,
c
lt
is a given capacity limit
for time
t
and
L
l
(
t
)
is the aggregate current draw from
uncontrollable loads through resource
l
.
A
= (
A
li
)
∈R
|L|×|V|
is a matrix which maps individual EVSE currents to aggre-
gate currents within the network. Matrix
A
can account for
both the connection of loads and lines as well as the effect
1
This is reasonable since EVs’ onboard charger generally includes power
factor correction and voltage phase angles can be easily measured.
of transformers, such as the delta-wye transformers in the
Caltech ACN. The constraints in (1) are second-order cone
constraints, which are convex and can be handled by many
off-the-shelf solvers such as ECOS, MOSEK, and Gurobi.
In some applications, however, these constraints could be too
computationally expensive or difficult to analyze. Simpler, but
more conservative constraints can be derived by observing
∣
∣
∣
∣
∣
∑
i
∈V
A
li
r
i
(
t
)
e
jφ
i
∣
∣
∣
∣
∣
≤
∑
i
∈V
|
A
li
|
r
i
(
t
)
This yields conservative affine constraints in the form
∑
i
∈V
|
A
li
|
r
i
(
t
) +
|
L
l
(
t
)
| ≤
c
lt
t
∈T
,l
∈L
(2)
For an example on how to find
A
specifically for a subset
of the Caltech ACN network, as well as a comparison of the
performance of (1) and (2), see [25].
B. Battery Management System behavior
For level-2 EVSEs, each EV’s onboard charger and battery
management system (BMS) controls its charging rate. As
discussed in Section III-B, the EV’s actual charging current
often deviates, sometimes significantly, from the pilot signal it
receives. This requires us to develop algorithms that accurately
model battery behavior or are robust against deviations from
simpler models. While many tractable models for battery
charging behavior exist, these models require information
about the specific battery pack and initial state of charge of
the vehicle [29], [30]. Other models rely on machine learning
to learn the relationship between state of charge and current
draw [31]. However, these ML models still require access to
the state of charge of the vehicle. Since this information is not
available with current charging hardware, we use a model-
free approach to estimate battery behavior in real-time and
use closed-loop control to account for modeling errors. This
approach is described in Section V-E.
C. EVSE limitations
In practice, EVSEs impose limits on the pilot signals which
they support. For example, the J1772 standard does not allow
pilot signals below 6 A (except 0). Also, most commercially
available EVSEs only support a discrete set of pilot signals.
Within the Caltech ACN, we have four types of EVSEs.
EVSEs from ClipperCreek only support five pilot signals
{
0,
8, 16, 24, 32
}
for 32 amp EVSEs and
{
0, 16, 32, 48, 64
}
for
64 amp EVSEs. EVSEs from Webasto, Tesla, and OpenEVSE
offer more control with 1 A (Webasto) or 0.1 A (Tesla and
OpenEVSE) increments between 6 A and their maximum rate
(32 A for Webasto and 80 A for Tesla and OpenEVSE). These
limitations can be expressed mathematically as:
r
i
(
t
)
∈
ρ
i
(
t
)
∀
i,t
where
ρ
i
(
t
)
denote the set of allowable charging rates for EV
i
at time
t
, which can depend on both the EVSE and our model
of the EV’s BMS described in Section IV-B.
We also require the charging rate to be non-zero from when
a car plugs in until its charging demand is met. This constraint
helps prevent contactor wear in the EVSEs and improves user
5
Garage
Loads
DC Fast
Charger
I
a
DC
I
c
DC
I
b
DC
I
b
aux
I
c
aux
I
a
aux
I
a
0
≤ R
0
,
a
= 640 A
I
ab
P
I
ca
P
I
bc
P
t
1
primary
t
1
secondary
EVSEs
I
ab
evse
I
ca
evse
I
bc
evse
I
a
1
≤ R
1
,
a
= 180 A
I
a
3
≤ R
3
,
a
= 420 A
a
b
c
I
a
2
≤ R
2
,
a
= 180 A
Fig. 4. Circuit diagram depicting the connection loads within the California Parking Garage. For simplicity, transformer
t
2
is omitted and all EVSEs between
phases A and B have been lumped together as
I
evse
ab
, and so forth for BC and CA.
00:00
10-Sep
00:00
11-Sep
03:00
06:00
09:00
12:00
15:00
18:00
21:00
0
200
400
600
Line Current (A)
A
B
C
Fig. 5. Line currents from uncontrolled charging. We note significant current
imbalances caused by differences in the allocation of EVSEs to phases and
driver preferences. In the ACN, phase AB has 26 stations, whereas phases
BC and CA each have 14. This imbalance is caused by the two 8-EVSE pods
which are both on phase AB.
experience, since most vehicles will notify their owner when
charging stops. We can encode this constraint as:
r
i
(
t
)
∈
{
ρ
i
(
t
)
\{
0
}
if
∑
T
t
=1
r
i
(
t
)
< e
i
{
0
}
otherwise
(3)
where
e
i
is the energy request of EV
i
. Unfortunately, these
constraints are discrete, making it difficult to incorporate them
into optimization-based algorithms. In section V-D we propose
heuristics to deal with these discrete constraints.
V. O
NLINE
S
CHEDULING
F
RAMEWORK
To address these challenges, we have developed a practical
and flexible framework for online scheduling of EV charging
based on model predictive control and convex optimization.
Within this framework, we introduce constraints that address
unbalanced three-phase infrastructure and utilize feedback
to account for inaccuracies in modeling, such as non-ideal
battery behavior. Finally, we introduce a heuristic approach to
account for discrete constraints arising from EVSE limitations
efficiently.
A. Model predictive control
The ACN computes charging rates using model predictive
control, described in Alg. 1. We use a discrete time model,
with time indexed by
k
in
K
:=
{
1
,
2
,
3
,...
}
. The length of
each time period is
δ
e.g. 5 minutes. At time
k
,
ˆ
V
k
is the set
of all EVs present at the ACN and
V
k
⊆
ˆ
V
k
is the subset of
for
k
∈K
do
(1)
V
k
:=
{
i
∈
ˆ
V
k
|
e
i
(
k
)
>
0
AND
d
i
(
k
)
>
0
}
(2)
if
event fired
OR
time since last computation
> P
then
(3)
(
r
∗
i
(1)
,...,r
∗
i
(
T
)
,i
∈V
k
)
:=
OPT
(
V
k
,U
k
,
R
k
)
(4)
r
i
(
k
+
t
) :=
r
∗
i
(1 +
t
)
, t
= 0
,...,T
−
1
end
(5)
set the pilot signal of EV
i
to
r
i
(
k
)
,
∀
i
∈V
k
(6)
e
i
(
k
+ 1) :=
e
i
(
k
)
−
ˆ
e
i
(
k
)
,
∀
i
∈V
k
(7)
d
i
(
k
+ 1) :=
d
i
(
k
)
−
1
,
∀
i
∈V
k
end
Algorithm 1:
Adaptive Scheduling Algorithm (ASA)
active
EVs, i.e. the set of EVs whose energy demands have not
been met. The state of EV
i
∈V
k
at time
k
is described by a
tuple (
e
i
(
k
)
,
d
i
(
k
)
,
̄
r
(
k
)
) where
e
i
(
k
)
is the remaining energy
demand of the EV at the beginning of the period,
d
i
(
k
)
is the
remaining duration of the session, and
̄
r
(
k
)
is the maximum
charging rates for EV
i
. In addition, we define
ˆ
e
(
k
)
to be the
measured energy delivered to the EV over time interval
k
. For
simplicity of notation, we express
r
i
(
t
)
in amps and
e
i
(
t
)
and
ˆ
e
i
(
t
)
in
δ
×
amps assuming nominal voltage.
We now describe the MPC algorithm. In line 1 we compute
the active EV set
V
k
by looking for all EVs currently plugged
in which have non-zero remaining energy demand and are
not already scheduled to depart. We then check, in line 2,
if we should compute a new optimal schedule. This is done
whenever an event-fired flag is True, or when the time since
the last computed schedule exceeds
P
periods.
If a new schedule is required, we call the optimal scheduling
algorithm
OPT
(
V
k
,U
k
,
R
k
)
in line 3 that takes the form:
max
ˆ
r
U
k
(ˆ
r
)
(4a)
s.t.
ˆ
r
∈R
k
(4b)
The set
V
k
of active EVs defines the optimization variable
ˆ
r
:= (ˆ
r
i
(1)
,...,
ˆ
r
i
(
T
)
,i
∈V
k
)
for every active EV
i
over the
optimization horizon
T
:=
{
1
,...,T
}
. The utility function
U
k
encodes the problem’s objective while the feasible set
R
k
encodes various constraints. They will be discussed in detail
in the next two subsections. Note that
OPT
does not have a
notion of the current time
k
and returns an optimal solution
r
∗
i
:= (
r
∗
i
(1)
,...,r
∗
i
(
T
))
of (4) as a
T
-dimensional vector for
each active EV
i
. The algorithm then adjusts the indexing
6
and sets the scheduled charging rates of EVs
i
at time
k
as
r
i
(
k
+
t
) :=
r
∗
i
(1 +
t
)
,
t
= 0
,...,T
−
1
in line 4. At every
time
k
, regardless of if a new schedule was produced, we set
the pilot signal of each EV
i
to
r
i
(
k
)
(line 5) and update the
system state (lines 6, 7) for the next time period.
We now describe how to design the utility function
U
k
to achieve desirable features and how to model various con-
straints that define the feasible set
R
k
for practical systems.
B. Utility Functions
U
k
In general, charging system operators may have many objec-
tives they wish to achieve via smart charging, including charg-
ing vehicles as quickly as possible, maximizing their operating
profit, utilizing renewable energy sources, or smoothing their
total load profile. Operators also have secondary objectives
such as fairly distributing available capacity.
To allow operators to specify multiple objectives, our utility
function
U
k
(
r
)
is a weighted sum of utility functions
u
v
k
(
r
)
:
U
k
(
r
) :=
V
∑
v
=1
α
v
k
u
v
k
(
r
)
We allow the utility function to change for each computation.
Here
u
v
k
(
r
)
,
v
= 1
,...,V
are a set of utility functions
which capture the system operator’s objectives and promote
desirable properties in the final schedule. Meanwhile,
α
v
k
>
0
,
v
= 1
,...,V
are time-dependent weights used to determine
the relative priority of the various components. To simplify
notations, we will henceforth drop the subscript
k
when we
discuss the computation at time
k
.
Charging quickly:
One common operator objective is to
charge all vehicles as quickly as possible. This can be done
by specifying an objective such as
u
QC
(
r
) :=
∑
t
∈T
T
−
t
+ 1
T
∑
i
∈V
r
i
(
t
)
where the reward for delivering energy is strictly decreasing
in time.
Minimizing cost / maximizing profit:
Another common
objective for system operators is to maximize their operating
profit. Let
π
be the per unit revenue from charging and
c
(
t
)
be the time-varying cost of one unit of energy. To account for
other loads and generation which share a meter with the ACN,
we define the net load
N
(
t
) :=
∑
i
∈V
r
i
(
t
) +
L
(
t
)
−
G
(
t
)
where
L
(
t
)
denotes the net draw of the other loads while
G
(
t
)
denotes on-site generation such as PV. Since
L
(
t
)
and
G
(
t
)
are unknown for
t >
0
this formulation relies on a prediction
of these functions into the future. There are several methods
for load/generation prediction proposed in the literature, but
these are outside the scope of this paper. We can express the
objective of maximizing profit as:
u
EC
(
r
) :=
π
∑
t
∈T
i
∈V
r
i
(
t
)
−
∑
t
∈T
c
(
t
)
N
(
t
)
This is equivalent to cost minimization when
π
= 0
.
Minimizing demand charge:
In addition to energy costs,
utilities often impose a price on the maximum power draw in a
billing period called demand charge. Since, demand charge is
assessed over an entire month, while the optimization horizon
is typically
<
12
hours, we replace the full demand charge
P
with a proxy
ˆ
P
≤
P
. We also introduce
q
0
to be the highest
peak so far in the billing period, and
q
′
as a prediction of the
optimal peak. The demand charge can then be expressed as:
u
DC
(
r
) :=
−
ˆ
P
·
max
(
max
t
∈T
N
(
t
)
, q
0
,q
′
)
Note that
ˆ
P
and
q
′
are tunable parameters. We describe the
selection of these in Section VI-D.
Minimizing total load variations:
Another common objec-
tive for EV charging operators is to minimize load variations.
We can express this objective as:
u
LV
(
r
) :=
−
∑
t
∈T
N
(
t
)
2
Fairly distributing capacity:
The utility functions de-
scribed so far are not strictly concave in
r
and hence the
optimal solution,
r
∗
, is generally non-unique. We can force
a unique optimal solution by including the regularizer:
u
ES
(
r
) :=
−
∑
t
∈T
i
∈V
r
i
(
t
)
2
This regularizer also promotes equal sharing among the EVs,
which is desirable for the operator and drivers and minimizes
line losses along the lines which feed each EVSE. This
property comes from the fact that all things being equal, this
component is maximized when all charging rates are as low as
possible. Thus, it is sub-optimal to have one EV charging faster
than another if both charging at an equal rate would result in
the same optimal value for all other objective components.
Non-completion penalty:
A general goal of EV charging
systems is to meet users’ energy needs by their deadlines.
While this can be accomplished by an equality constraint in
R
k
, doing so can lead to infeasibility. Instead, we can use the
inequality constraint (5c), and add a non-completion penalty
of the form:
u
NC
(
r
) :=
−
p
√
√
√
√
∑
i
∈V
∣
∣
∣
∣
∣
∑
t
∈T
r
i
(
t
)
−
e
i
∣
∣
∣
∣
∣
p
where
p
≥
1
. This is the p-norm of the difference between
the energy delivered to each EV and its requested energy.
When
p
= 1
, this regularizer shows no preference between
EVs. For
p >
1
, EVs with higher
e
i
will be prioritized (given
more energy) over those with lower
e
i
when it is infeasible
to meet all energy demands. Note that this regularizer is
0 whenever the energy demands of all EVs are fully met,
e.g.
∑
t
∈T
r
i
(
t
) =
e
i
. Thus, with sufficient weight on this
component, (5c) will be tight whenever feasible. Likewise, if
(5c) would have been tight without (V-B), this regularizer has
no effect.
7
C. Feasible set
R
k
The feasible set
R
k
is defined by a set of equality and
inequality constraints that can depend on
k
, but for notational
simplicity, we drop the subscript
k
. These constraints then take
the form:
0
≤
r
i
(
t
)
≤
̄
r
i
(
t
)
t
≤
d
i
,i
∈V
(5a)
r
i
(
t
) = 0
t > d
i
,i
∈V
(5b)
∑
t
∈T
r
i
(
t
)
≤
e
i
i
∈V
(5c)
∣
∣
∣
∣
∣
∑
i
∈V
A
li
r
i
(
t
)
e
jφ
i
∣
∣
∣
∣
∣
≤
c
lt
(
t
)
t
∈T
,l
∈L
(5d)
Constraints (5a) ensure that the charging rate in each period
is non-negative (we do not consider V2G) and less than its
upper bound defined by the EV’s BMS and the maximum
pilot supported by the EVSE. This is a relaxation of the set of
discrete rates allowed by the EVSE and is necessary to keep
the scheduling problem convex. We discuss how to recover
a feasible discrete solution in Section V-D. Constraints (5b)
ensure that an EV does not charge after its departure time. We
use constraints (5c) to limit the total energy delivered to EV
i
to at most
e
i
. To ensure feasibility, we do not require equality
(the zero vector is always a feasible solution). This ensures that
OPT
always returns a feasible schedule, which is important
in practice. We can then craft the objective function to ensure
this constraint is tight whenever possible, see Section V-B.
D. Quantization of pilot signal
The pilot signal constraints imposed by EVSEs described
in Section IV-C are discrete and intractable in general for
large problems. Because of this, we do not include (3) in
the definition of
R
k
, instead relaxing it to (5a). However, to
account for our non-zero rate constraint, we add an additional
constraint
r
i
(0)
≥
min (
ρ
i
(0)
\{
0
}
)
to (5).
2
We denote the output of this optimization
r
∗
:=
(
r
∗
i
(
t
)
,
∀
i
∈ V ∀
t
∈ T
)
. For simplicity, we assume that the
maximum
P
between scheduler calls (see Algorithm 1) is set
to the length of one period, so that only the first charging rate
in
r
∗
will be applied.
We then round
r
∗
i
(0)
down to the nearest value in
ρ
i
:
̃
r
i
(0)
← b
r
∗
i
(0)
c
ρ
i
This rounding may leave unused capacity which can be
reclaimed. To reclaim this capacity, we first sort EVs in
descending order by the difference between their originally
allocated charging rate,
r
∗
i
(0)
, and the rate after rounding,
̃
r
i
(0)
. We then iterate over this queue and increment each
EV’s charging rate to the next highest value in
ρ
i
(
t
)
, if the
resulting current vector
̃
r
(0)
∈R
k
and
∑
i
̃
r
i
(0)
≤
∑
i
r
∗
i
(0)
.
We continue to loop over this queue until we cannot increment
any EV’s allocated rate.
2
This constraint implicitly assumes that it is feasible to deliver a minimum
charging rate to each EV, thus charging infrastructure should be designed with
this constraint in mind if the operators want to ensure a minimum charging
rate to each EV.
E. Battery tail capacity reclamation
As discussed in Section IV-B, an EV’s battery management
system will sometimes limit the power draw of the battery as
it approaches 100% state-of-charge. When this happens, the
difference between the pilot signal and the vehicle’s actual
charging rate is wasted capacity. To reclaim this capacity, we
use a simple algorithm which we call
rampdown
. Let
r
k
i
(0)
be
the pilot signals sent to EV
i
at time
k
,
m
i
(
k
)
be its measured
charging current, and
̄
r
k
i
(0)
be the upper bound on its charging
rate. We define two thresholds,
θ
d
and
θ
u
. If
r
k
i
(0)
−
m
i
(
k
)
>
θ
d
, we can reclaim some capacity by setting the upper limit
on pilot signal of EV
i
for the next period to be
m
i
(
k
) +
σ
,
where
σ
is typically around 1 A. In order to account for the
possibility of the EV’s BMS only limiting current temporarily,
if
̄
r
k
i
(0)
−
m
i
(
k
)
< θ
u
, we increment the pilot signal upper
bound by
σ
(clipping at the EV’s BMS limit or the EVSE’s
pilot limit). With this scheme, we can quickly reclaim capacity
during the tail region, while still allowing EVs to throttle back
up if this reclamation was premature. Note that in our current
implementation, the upper bound on the pilot signal,
̄
r
k
i
(
t
)
is
the same for all
t
within the same sub-problem
k
. In more
advanced rampdown schemes, this bound could depend on
t
or the decision variables
r
(
t
)
.
VI. A
PPLICATIONS
We now turn our attention to applications of the Adaptive
Charging Network. We first examine the real-world opera-
tional data we have collected from the system. We then use
this data to evaluate (through simulations) how the Adaptive
Scheduling Algorithm proposed in Section V handles the
practical challenges described in Section IV. To do this, we
consider two practical objectives, charging users quickly in
highly constrained systems, and maximizing operating profits.
Due to limited space, we cannot address all possible use-cases
of ACN and the ASA framework. For additional information
about dynamic pricing and cost minimization using ACN see
[20].
A. Data Collected
The ACN charging data includes actual arrival and departure
times of EVs, estimated departure times and energy demands
provided by drivers through the mobile app, and measurements
of the actual energy delivered in each session. ACNs also
record time series of the control signals passed to each EV and
the EV’s actual charging rate at 4-second resolution. This data
is freely available, see [2], and can be used to evaluate new
scheduling algorithms using ACN-Sim. Important workload
features include the arrival and departure distribution of EVs,
shown in Fig. 6. Other statistics are summarized in Table I.
This data was collected from May 1, 2018 - October 1,
2018 during which charging was free and only the 54 EVSEs
connected to transformer
t
1
were active. EVSEs on
t
2
were
added in early 2019, while the second and third garages in the
ACN were added in late 2019. During this period, the system
served 10,415 charging sessions and delivered a total of 92.78
MWh of energy.
From Table I, we observe a significant difference in system
usage between weekdays and weekends. The total energy
8
3:00
9:00
15:00
21:00
10
0
10
Average EVs Per Hour
Weekdays
3:00
9:00
15:00
21:00
Weekends
Arrivals
Departures
Fig. 6. Average arrivals and departures per hour for the period May 1, 2018 -
October 1, 2018 (54 EVSEs). On weekdays we see a peak in arrivals between
7:00 - 10:00 followed by a peak in departures between 16:00 - 19:00. The
Caltech ACN also has a much smaller peak in arrivals beginning around 18:00,
which is made up of community members who use the site in the evening
including some patrons of the nearby campus gym. Weekends, however have
a more uniform distribution of arrivals and departures.
TABLE I
A
VERAGE
S
TATISTICS FOR
EV C
HARGING
T
EST
C
ASES
P
ER
D
AY
M
AY
1, 2018 - O
CT
. 1, 2018
Mean
Daily
Sessions
Mean
Session
Duration
(hours)
Mean
Session
Energy
(kWh)
Mean
Daily
Energy
(kWh)
Max
Concurrent
Sessions
Sun
41.32
3.94
10.05
415.06
18
Mon
71.00
6.14
9.54
677.13
42
Tues
76.73
6.24
8.94
685.79
47
Wed
75.45
6.22
8.75
660.16
44
Thurs
78.50
5.96
8.47
665.21
42
Fri
77.18
6.71
9.04
697.41
43
Sat
43.32
5.01
10.15
439.59
18
delivered is much higher on weekdays, but this energy is
divided over far more charging sessions leading to a lower per
session energy delivery. Also, charging sessions on weekends
tend to be shorter than those during the week. This means that
our system must be able to handle large numbers of flexible
sessions on weekdays and smaller numbers of relatively in-
flexible sessions on weekends. This behavior precludes simple
solutions such as installing large numbers of level-1 chargers,
which would be too slow on weekends and for low laxity
weekday sessions, or small numbers of level-2 chargers, which
would be insufficient for the number of concurrent sessions on
weekdays.
B. Practical Scenarios
To better understanding the effect of practical limitations
such as limited information, non-ideal batteries, and pilot
signal quantization, we consider each operator objective in
the context of the five scenarios in Table II. Here perfect
information refers to having access to the arrival time, dura-
tion, and energy demand of all EVs in advance, allowing for
offline optimization. Continuous EVSEs allow for continuous
pilot control between 0 and the EVSE’s upper bound, while
quantized EVSEs only allow a discrete set of values and must
keep the charging rate at or above 6 A until the EV is finished
charging. Finally, ideal batteries are assumed to follow the
pilot signal exactly. In contrast, non-ideal batteries follow the
linear two-stage model described in [3], where the initial state
of charge and battery capacity are fit to maximize tail behavior,
TABLE II
M
ODELING
A
SSUMPTIONS BY
S
CENARIO
I
II
III
IV
V
Perfect Information?
37777
Continuous EVSE?
33737
Ideal Battery?
33377
and the tail begins at 80% state-of-charge.
For our simulations we use ACN-Sim, which includes
realistic models for each of the scenarios above. In each case,
we consider the three-phase infrastructure of the Caltech ACN.
We set the length of each time slot to 5 minutes, the maximum
time between scheduler calls to 5 minutes, and consider a
maximum optimization horizon of 12 hours.
C. Energy delivery with constrained infrastructure
We first consider the objective of maximizing total energy
delivered when infrastructure is oversubscribed. This is a
common use case when electricity prices are static or when
user satisfaction is the primary concern. To optimize for this
operator objective, we use the Adaptive Scheduling Algorithm
(ASA) (Alg. 1) with utility function
U
QC
(
r
) :=
u
QC
(
r
) + 10
−
12
u
ES
(
r
)
Here
U
QC
encourages the system to deliver energy as
quickly as possible, which helps free capacity for future
arrivals. We include the regularizer
u
ES
(
r
)
to promote equal
sharing between similar EVs and force a unique solution. We
refer to this algorithm as ASA-QC.
To control congestion in the system, we vary the capacity
of transformer
t
1
between 20 and 150 kW. For reference, the
actual transformer in our system is 150 kW, and a conventional
system of this size would require 362 kW of capacity. We
then measure the percent of the total energy demand met using
ASA-QC as well as three baseline scheduling algorithms; least
laxity first (LLF), earliest deadline first (EDF), and round-
robin (RR), as implemented in ACN-Sim.
Results from this experiment are shown in Fig. 7, from
which we observe the following trends.
1) In scenario II, ASA-QC performs near optimally (within
0.4%), and significantly outperforms the baselines (by as
much as 14.1% compared to EDF with 30 kW capacity).
2) In almost all cases, ASA-QC performs better than base-
lines, especially so in highly congested settings.
3
3) Non-ideal EVSEs (scenarios III and V) have a large neg-
ative effect on ASA-QC, which we attribute to rounding
of the optimal pilots and restriction of the feasible set.
4) Surprisingly, non-ideal EVSEs increase the performance
of LLF and EDF for transformer capacities
<
60 kW.
This may be because the minimum current constraint
leads to better phase balancing.
3
For scenarios III and V and transformer capacities less than 68 kW, it
may sometimes be infeasible to allocate a minimum of 6 A to each active
EV. When this is the case, we allocate 6 A to as many EVs as possible
then allocate 0 A to the rest. This allocation is done by first sorting EVs (by
laxity for LLF and ASA-QC, deadline for EDF, and arrival time for RR) then
allocating 6 A to each EV until the infrastructure constraints are binding.
9
20
30
40
50
60
70
80
150
Transformer Capacity (kW)
Optimal
ASA-QC
LLF
EDF
RR
ASA-QC
LLF
EDF
RR
ASA-QC
LLF
EDF
RR
ASA-QC
LLF
EDF
RR
55.4
73.9
85.8
93.5
98.4
99.9
100.0
100.0
55.3
73.5
85.3
93.0
98.1
99.7
100.0
100.0
46.9
59.7
77.6
87.0
96.7
99.7
100.0
100.0
48.0
59.4
77.3
86.8
95.8
99.1
99.7
100.0
46.0
61.8
74.3
84.5
91.2
95.2
97.4
99.8
49.0
65.6
78.6
88.7
95.2
98.2
99.4
99.7
47.1
63.5
76.8
87.5
95.0
98.5
99.6
99.7
47.1
63.5
76.6
87.2
94.5
98.2
99.2
99.7
46.4
60.9
73.1
83.4
90.6
94.6
96.9
99.6
54.2
71.7
83.1
90.3
95.1
97.7
98.9
99.9
44.2
55.2
70.4
78.3
86.0
90.9
95.1
99.9
42.1
52.6
67.2
74.7
82.2
87.6
92.3
99.7
44.6
59.6
71.3
80.4
87.1
91.7
94.6
99.4
48.0
64.2
76.5
86.0
92.5
96.0
97.9
99.1
45.9
61.3
74.2
84.2
91.1
95.3
97.7
99.1
45.4
60.7
73.2
82.8
89.2
93.2
95.8
98.9
44.9
58.6
69.9
79.0
85.6
90.3
93.4
98.8
I. Offline Optimal
II. Ideal Battery / Continuous Pilot Signal
III. Ideal Battery / Quantized Pilot Signal
IV. Non-Ideal Battery / Continuous Pilot Signal
V. Non-Ideal Battery / Quantized Pilot Signal
Fig. 7. Percentage of driver’s energy demands that can be met at varying
capacities for transformer
t
1
for Sept. 2018. Here demand met is defined as
the ratio of total energy delivered to total energy requested.
5) Non-ideal batteries (scenarios IV and V) have relatively
small effect on the performance of ASA-QC compared
to baselines, indicating the robustness of the algorithm.
To understand why ASA-QC performs so much better than
the baselines, especially in scenario II, we must consider what
information each algorithm uses. RR uses no information
aside from which EVs are currently present, and as such,
performs the worst. Likewise, EDF uses only information
about departure time, while LLF also makes use of the
EVs energy demand. Only ASA-QC actively optimizes
over infrastructure constraints, allowing it to better balance
phases (increasing throughput) and prioritize EVs, including
current and anticipated congestion. A key feature of the
ASA framework is its ability to account for all available
information cleanly.
4
D. Profit maximization with TOU tariffs and demand charge
Next, we consider the case where a site host would like
to minimize their operating costs. Within this case, we will
consider the Southern California Edison TOU EV-4 tariff
schedule for separately metered EV charging systems between
20-500 kW, shown in Table III [32]. In each case, we assume
that the charging system operator has a fixed revenue of
$0.30/kWh and only delivers energy when their marginal cost
is less than this revenue. In order to maximize profit, we use
4
When even more information is available, i.e., a model of the vehicle’s
battery or predictions of future EV arrivals, this information can also be
accounted for in the constraint set
R
and objective
U
(
r
)
. However, these
formulations are outside the scope of this paper.
TABLE III
SCE EV TOU-4 R
ATE
S
CHEDULE FOR
EV C
HARGING
(S
UMMER
)
Name
Time Range
Weekday
Weekend
Off-Peak
23:00 - 8:00
$0.056 / kWh
$0.056 / kWh
Mid-Peak
8:00 - 12:00
18:00 - 23:00
$0.092 / kWh
$0.056 / kWh
Peak
12:00 - 18:00
$0.267 / kWh
$0.056 / kWh
Demand Charge
$15.51 / kW / month
the objective:
U
PM
:=
u
EC
+
u
DC
+ 10
−
4
u
QC
+ 10
−
12
u
ES
We denote the ASA algorithm with this objective ASA-PM.
The revenue term
π
in
u
EC
can have several interpretations.
In the most straightforward case,
π
is simply the price paid
by users. However,
π
can also include subsidies by employers,
governments, automakers, or carbon credits through programs
like the California Low-Carbon Fuel Standard (LCFS). For ex-
ample, LCFS credits for EV charging have averaged between
$0.13 - $0.16 / kWh in 2018-2019. In these cases, some energy
demands might not be met if the marginal price of that energy
exceeds
π
. This is especially important when demand charge is
considered since the marginal cost can be extremely high if it
causes a spike above the previous monthly peak. Alternatively,
π
can be set to a very high value (greater than the maximum
marginal cost of energy) and act as a non-completion penalty.
When this is the case, the algorithm will attempt to minimize
costs while meeting all energy demands (when it is feasible
to do so).
In
u
DC
,
ˆ
P
and
q
′
are tunable parameters. The demand
charge proxy
ˆ
P
controls the trade-off between energy costs
and demand charges in the online problem. In this case, we
use the heuristic proposed in [20],
ˆ
P
=
P/
(
D
p
−
d
)
, where
D
p
is the number of days in the billing period, and
d
is the
index of the current day. We will consider one version of the
algorithm without a peak hint, e.g.
q
′
= 0
, and one where the
peak hint is 75% of the optimal peak calculated using data
from the previous month. This percentage is chosen based on
maximum historic month-to-month variability in the optimal
peak (+11%/-16%).
We fix the transformer capacity to 150 kW and consider the
previous baselines along with uncontrolled charging , which
is the most common type of charging system today. Results of
the experiment are shown in Fig. 8, from which we observe:
1) Profits from both ASA-PM and ASA-PM w/ Hint, are
within 3.6% and 1.9% of the optimal respectively, and
far exceed the profits of all baseline algorithms.
2) Uncontrolled, LLF and RR result in
lower
energy costs,
but incur
very high
demand charges. These algorithms
are not price aware. Instead low energy costs are a
result of drivers arriving during off-peak and mid-peak
times.In particular, uncontrolled charging, which does
not consider an infrastructure limit, leads to
extremely
high
demand charges. On the other hand, both ASA-
PM algorithms (and the offline optimal) trade-off higher
energy costs for much lower peaks resulting in lower
overall costs.