UvA-DARE (Digital Academic Repository) A validated agent-based model for stress testing charging infrastructure utilization

Deployment and management of environmental infrastructures, such as charging infrastructure for Electric Vehicles (EV), is a challenging task. For policy makers, it is particularly difficult to estimate the capacity of current deployed public charging infrastructure for a given EV user population. While data analysis of charging data has shown added value for monitoring EV systems, it is not valid to linearly extrapolate charging infrastructure performance when increasing population size. We developed a data-driven agent-based model that can explore future scenarios to identify non-trivial dynamics that may be caused by EV user interaction, such as competition or collaboration, and that may affect performance metrics. We validated the model by comparing EV user activity patterns in time and space. We performed stress tests on the 4 largest cities the Netherlands to explore the capacity of the existing charging network. Our results demonstrate that (i) a non-linear relation exists between system utilization and inconvenience even at the base case; (ii) from 2.5x current population, the occupancy of non-habitual charging increases at the expense of habitual users, leading to an expected decline of occupancy for habitual users; and (iii) from a ratio of 0.6 non-habitual users to habitual users competition effects intensify. For the infrastructure to which the stress test is applied, a ratio of approximately 0.6 may indicate a maximum allowed ratio that balances performance with inconvenience. For policy makers, this implies that when they see diminishing marginal performance of KPIs in their monitoring reports, they should be aware of potential exponential increase of inconvenience for EV users.


Introduction
The adoption of Electric Vehicles (EV) worldwide has increased the number of complementary Charging Infrastructure (CI).Particularly in metropolitan areas, CI has shown significant growth.Cities that have been rolling out CI since its early market development now have a mature city-wide charging infrastructure (Hardman et al., 2018).Despite this, these cities are still faced with the challenge of how to further develop their charging infrastructure efficiently in terms of both cost and utilization (Helmus et al. 2018) as municipal governments try to avoid over-and under-capacity of Charging Points (CPs).
Stakeholders concerned with charging infrastructure deployment typically develop CI capacity based on (i) actual or forecasted demand and (ii) key performance indicators derived from charging data.While data-driven CI management may reveal the current state of capacity utilization, it does not provide insights into (i) the additional potential capacity of the infrastructure beyond its current condition or (ii) the perceived user inconvenience (e.g., failed connection attempts).To understand and remedy these issues, we need knowledge of large discontinuities, changes in the EV populations and interactions between EV users.Predictive simulation models provide insight into the effects of incentives and roll-out strategies before they are implemented and thus allow for scenario testing (Marmaras et al., 2017a;Vermeulen et al., 2018).Yet, charging behavior in existing simulation models is typically based on simplified stereotypical behavior of EV drivers (e.g., home chargers, work chargers) and the focus of these models has been on exploration of charging demand.Moreover, current simulation models are not fully validated due to paucity of available charging data, generally using relatively small amounts of data on charging transactions (Hess et al., 2012;Momtazpour et al., 2012;De Gennaro et al., 2015;Sweda and Klabjan, 2011;Xi et al., 2013;Yi and Bauer, 2016;Zhu et al., 2016).
In this research, we aim to simulate utilization of charging infrastructure beyond the "as-is" state of demand (EV users) and supply (CPs) for charging.We have developed a data-driven agent-based model that is able to explore future scenarios to identify non-trivial dynamics that may be caused by EV user interaction, such as competition or collaboration, and that may affect performance metrics.As such, the model is designed to map the performance of the charging infrastructure under various configurations of CI and EV users.To test the model's capabilities, we stress the CI of the four largest cities in the Netherlands by an increased demand and then analyze the effects on performance metrics and convenience.This approach allows us to research both current and future growth scenarios and the results will enable policy makers to create more robust charging infrastructures both in terms of capacity and reduced user inconvenience.
In this paper, we describe the Simulation of Electric Vehicle users' Activities (SEVA) Model, a data-driven agent-based model of Electric Vehicle (EV) charging behavior in a public charging infrastructure.The model simulates charging transactions of individual users and is both calibrated and validated using an extensive dataset of over 7.2 million charging transactions from the public charging infrastructure of the four largest cities (G4) in the Netherlands (Amsterdam, Rotterdam, The Hague, and Utrecht) from 2014 to 2019.This requires micro-level behavior (e.g., preferences for multiple sets of CPs per user) to be both accurate and adaptive to cope with EV user interactions, such as competition and network formation present in public charging environment.
Using the SEVA model, we simulate charging transactions under future growth scenarios and evaluate the performance and utilization of the CI on typical Key Performance Indicators (KPIs).The model also allows users to measure dynamics not directly available in datasets, for example, EV user inconvenience (e.g., failed connection attempts or deviation patterns) or effects of possible technological advancements.We perform stress tests on the capacity of charging infrastructure.This is done by artificially increasing the number of users and sessions in the system while measuring the resulting increase in inconvenience and utilization of the infrastructure.
SEVA is an Open Source model and has already undergone the following two extensions: (i) the effects of transition from a Plugin Hybrid EV (PHEV) population to large battery Full Electric Vehicles (FEV) (Vermeulen et al., 2018) and (ii) the effects of non-habitual users (e.g. car sharing scheme) to user inconvenience (Gorka et al., 2019).
The remainder of this paper is organized as follows.In section 2, we present an overview of relevant literature and what aspects of the EV system the model should cover.In section 3, the model is described in detail.In section 4, we validate and test the model, and in section 5, we stress test the current deployed charging infrastructure in the 4 major cities of the Netherlands.The paper ends with a discussion on the potential use cases of the SEVA model.

Simulation models for charging infrastructure
In this section we review the literature on the following three topics related to charging infrastructure: (1) traffic flow models used for charging infrastructure, (2) Agent-Based Models (ABMs) focused on charging infrastructure, and (3) EV-user decision making as the central mechanism of an ABM.We end by describing the contributions of our current work.

Optimization models for charging infrastructure supply and demand
Various non-ABM simulations have been published that study EV charging infrastructure, each with its own focus and simulation method.These models have been able to optimize the supply of CPs with demand of charging at specific locations.In general, this type of simulation starts with an estimation of local demand estimation based on arrival patterns or mobility data (De Gennaro et al., 2015) from which connection duration (parking) and transaction size can be derived.Thereafter, the supply of CPs can be optimized in terms of numbers and location using the estimated demand side.An important aspect to consider is the interaction between supply and demand.On the one hand, the presence of CPs in an area may lead to additional demand.On the other hand, a charging session of an EV user during a trip may lead to reduced demand at the destination.Recent studies have been able to successfully include these dynamics in optimization models (Cavadas et al., 2015).
Early work focused on selecting and preparing locations for the first CPs by using linear flow models (Xi et al., 2013).These locations and how they related to the distribution network were also examined with probabilistic simulation models (Mu et al., 2014).These models generate driving patterns that are then used in a subsequent simulation model to derive charging profiles for EV users and the distribution network.One such model is that of Hess et al (2012).Using genetic programming and a network traffic simulation model, Hess et al. (2012) developed a model to deploy charging facilities.Others used end of trip locations in metropolitan areas or corridor charging locations from non-EV users to model the layout of a charging infrastructure (Andrenacci et al., 2016;De Gennaro et al., 2015;Salmon, 2016).Hess' objective was to optimize quality of service (the ability to charge) while minimizing an extra trip time for charging.One other example of an adapted model research uses simulation models to optimize charging locations for grid impact using traffic patterns (Yi and Bauer, 2016).An interesting approach to more complex interactions between supply and demand is found in Cavadas et al., (2015), who introduce the concept of transferrable demand.In this approach more complex behavior of EV users is modeled as EV users charging demands may depend on previous charging opportunities.Additionally, recent models have not only been able to match supply and demand but also reveal missed charging opportunities (Pan et al., 2020).
The results of such model relies on the assumed relation between driving patterns and charging patterns.However, research has shown that these assumed relations may not occur in real world situations (Daina et al., 2017).Moreover, some studies assume stereotypical traveling patterns per individual (e.g., home-work) in relation to charging patterns.In reality, charging decisions are more complex as empirical data shows.For instance, EV drivers tend to display a combination of work and home charging patterns with specific duration and transaction size (Helmus, J et al., 2020).
Finally, these simulation studies tend to calculate the outcome of a particular objective function (e.g., required grid capacity).To minimize model complexity, some studies include a minimum set of rules and parameters for modelling charging behavior to compute the objective function.
Nevertheless, deeper insight into the micro dynamics of charging behavior itself, which may be critical to properly analyze CI performance along a broader set of measures, is limitedly present in these models.

Agent-Based models for charging infrastructure
In general, two ABM variants are discussed in the literature: (i) traffic simulation ABMs that combine charging behavior with existing driving patterns and (ii) ABMs that primarily simulate EV user charging behavior.The subject of simulation varies from a single type of agent (EV user) to multi agent-type models (e.g., Charging Points operators, grid distributors).The scope of these models ranges from the performance of CI, to integration and impact on electricity grids (Marmaras et al., 2017a), to market adoption models for EV (Gnann et al., 2019).
Current traffic simulation ABMs have been adjusted to integrate EV charging by adding decision models that monitor a battery's State of Charging (SOC) during trips (Bi et al., 2018;Gnann et al., 2019;Marmaras et al., 2017a;Xu et al., 2012).Charging decisions have also been modeled by extrapolating and translating travel behavior by Internal Combustion Engine (ICE) vehicles (Djanatliev et al., 2017;Xu et al., 2012) or by using stated response data on EV infrastructure requirements (Ashkrof et al., 2020).
EV users select CPs based on locations in the road transport network similar to petrol stations that contain fast AC charging on highways, or home chargers or public AC level 2 charging.It is questionable whether refueling patterns of ICE drivers are applicable in the context of EV charging as charging times are significantly longer than petrol refueling.Marmaras et al. (2017a) developed a hybrid model that models both traffic on the road network as well as charging decisions of individual EV users.However, their model focuses on the decision whether to charge or not without being explicit about user habits or charging locations.
Charging behavior in terms of a coherent set of rules for charging decisions related to time and location has been the subject of research within ABMs.Studies that primarily focus on EV modeling charging behavior in an ABM have been used to answer questions on charging infrastructure planning for home charging (Lindgren and Lund, 2015a), public charging (Adepetu et al., 2016;Hoekstra and Hogeveen, 2017;Pagani et al., 2019;Wolbertus et al., 2021) as well as workplace charging (Lindgren and Lund, 2015a), impact assessment for electricity distribution networks (Olivella-rosell et al., 2014;Salah et al., 2015) or smart charging (Van Der Kam et al., 2019;Waraich et al., 2013).Studies modeling charging behavior in ABMs also include reaction to exogenous factors (e.g., workplace sharing or pricing), which adds to the complexity of behavior compared to the aforementioned studies that translate ICE behavior.
Validation of individual charging decisions or simulation outcomes have not been covered extensively in the literature.Trafficbased ABMs mostly use traffic data from which charging decisions have been derived.While charging patterns may comply with traffic patterns, they may not reflect actual charging behavior.Moreover, the use of traffic data as input for charging data is likely due to the lack of available charging transaction data (Daina et al., 2017).A few existing ABMs on EV charging are driven by charging transaction data (Hoekstra and Hogeveen, 2017;Wolbertus et al., 2021), but these studies do not validate simulation outcomes and agent behavior with data.
From the current literature on ABM models, we conclude that the complexity of charging behavior varies from decisions to charge during trips to smart charging decisions in relation to exogenous factors.

Modelling charging decisions of EV users
Central to the ABM is the development of a decision model that describes charging behavior for each agent.The parameters for this decision model may vary per agent or may be equal among all agents.ABMs in the literature describe charging behavior using (i) heuristics for decision making, (ii) stochastic models based on assumptions or (iii) data fitted behavior.
First, heuristics enable modelers to reduce computational requirements by simplifying charging behavior rules in terms of if then statements.This allows researchers to setup their model without actual data on EV user behavior.In current EV ABMs, the use of heuristics for decision making is based on geospatial decisions (location and routing) (ElBanhawy et al., 2012;Waraich et al., 2013), SOC (e.g.battery level at start or end of trip) (Gnann et al., 2019;Olivella-rosell et al., 2014), type of charging (e.g.public vs private) (Marmaras et al., 2017b;Pagani et al., 2019;Van Der Kam et al., 2019) or arrival time (Pagani et al., 2019).
The most used heuristic is the decision at which SOC an EV user decides to charge at a nearby available CP.While common, this heuristic prevents EV users from spontaneously responding to an unexpected situation because the core of the decision is set in standard rules.Moreover, simple heuristics do not cope with complex user interactions (e.g.competition) or a changing environment  (e.g.adding CPs) (Glombek et al., 2018;Helmus et al., 2019) as these require agent learning.
Second, stochastic models, such as discrete choice models, are based on probabilities for decisions instead of fixed heuristics.Discrete choice models may also include more complex patterns of behavior that enable agents to cope with exogenous factors.These models have been used in ABMs to model different types of charging, for example, price driven versus comfort (Pagani et al., 2019) or workplace versus home (Lindgren and Lund, 2015b).Vermeulen et al. (2018) have modelled the change from PHEV to FEV charging behavior in an ABM but lack explicit explanations for the selection of CPs in time and space of CPs.A limitation of current models in ABMs is the omission of validation on actual charging data.
Third, data-driven models for charging behavior model charging decisions using samples or probabilities based on distributions of actual charging data.These models either perform a parametric fit on charging data distributions or sample from actual distributions of charging data.A line of research that specifically focuses on modelling EV users' charging behavior has revealed factors that determine charging decisions (e.g., State of Charging, arrival pattern or connection duration).In these studies, the authors attempt to predict connection, disconnection duration or arrival times of EV users based on charging data (Kim et al., 2017;Wolbertus et al., 2018).The strength of these data-driven models is that they have been derived from actual charging data, which increases their validity.Our study differs from these studies as we do implement such a model in our ABM.

Contributions of the Simulation of Electric Vehicle Users Activities (SEVA) model
Models have provided insights on how policy makers or grid operators should manage the rise of EV in both private as well as public spaces.Charging behavior research has identified both factors that determine charging behavior and models that predict charging behavior features.Nevertheless, an ABM that includes a validated charging behavior model and that can cope with increasing complexity in behavior has not been investigated.In this paper, we fill this gap by presenting a data-driven validated ABM.It is a general EV charging model that focuses on revealing interactions of EV charging under different conditions of population size and charging infrastructure.Using such a general model allows us to use the existing network and to investigate how the supply matches the demand.We envisage this model could be used for aiding policy makers, for example through simulation-based optimization (Law et al., 2002), but this is not the only potential application of the model.The model can be used to help illuminate core dynamics, understand limit case system response, educate policy makers, and for various other reasons (Epstein, 2008).While the model itself does not contain an optimization module (i.e., deployment of additional CPs with the aim to increase performance of the CI on certain metrics), its output can be used by policy makers to make more informed decision in the further rollout of charging points in order to reinforce the charging network, thereby optimizing its performance.As such, the model allows for simulation based optimization.
This research contributes to literature in two ways: (i) related to modelling we present an open-source Agent-Based model that has several features not present in the literature, and (ii) related to methodology we present an approach using our model to perform stress tests on an existing charging infrastructure.
The SEVA model contains the following four unique features.First, it is developed using a data-driven approach to modelling rules for EV user charging behavior.Each agent (EV user) is provided with rules using the EV user's specific charging data without the need for population level heuristics.Second, the model contains micro-level dynamics, such as the dynamics of interacting EV users and CP detour in case of occupation, which is required for public CI.This enables the model to provide insights into current and future roll-out scenarios of charging infrastructure.Third, the model outcomes were validated on charging data by using activity patterns of both EV users and CPs.Fourth, the model is open source so that other researchers or policy makers may further develop its potential.
In section 3, we first explain the setup of the model after which we validate the behavior in section 4. In section 5, we used the model to perform stress tests on the existing AC public charging infrastructure of the four largest cities (G4) in the Netherlands (Amsterdam, Rotterdam, Utrecht, and The Hague).Occupation stress tests have been performed on DC fast charging using queuing theory (Liang et al., 2014;Said et al., 2013) but not on AC, which is notably more complex (Aveklouris et al., 2017).Our case study extends current knowledge on stress tests with traditional KPIs from simulated sessions and measures of inconvenience in an ABM.For further examples of the model's applicatoin, we refer to Vermeulen et al. (2018), Gorka et al. (2019), Wolbertus et al. (2021).

The simulation of Electric Vehicle Activities model
This section presents a description of the Simulation of Electric Vehicle Activities (SEVA) model.In the following subsections we describe how this model works, following ODD + D (Grimm, 2006;Müller et al., 2013) (Overview 3.1, Design concepts 3.4 to 3.7, Details 3.7 to 3.9).The details on data preprocessing and initial state can be found in Appendix A and Appendix B. In Fig. 1, an overview of the model is provided with section numbers in the paper.More technical details can be found in the SEVA technical report on Arxiv (.Helmus et al., 2019).

Overview: Purpose and context
The SEVA model aims to reveal the dynamics of interacting EV users for a given condition of supply (CPs) and demand (EV users).To do this, we mimic rules for charging behavior of individual EV users by using their real-world generated data, combined with an individual rule for adaptation towards a changing environment.The model was built upon charging transactions of EV users (see example in Table 1).The charging data contain standardized fields required for billing and monitoring (NKL, 2016).This approach allows us to assign a unique behavioral pattern to each EV user matching each EV user's real-world charging data.
The transaction data is a result of the demand for charging of EV users and the existing charging network.Using data from a city with a sparse charging network would generate limited generalizable behavior as the set of relevant alternative CPs is limited.The G4 charging infrastructure used in this research has a density such that there is an alternative CP within a 2-3 min walk.This allows EV users to develop their habitual behavior.Therefore, no assumptions were made on the type of behavior related to the location type.The model can be run on any other city as long as standardized transaction data and a network of alternative CPs is available.
The data itself is based on charging sessions from different location types (e.g., residential and office areas).Public CPs are deployed not only in residential areas but also in work areas.Earlier research has shown that the dataset used in this research consists of various types of charging sessions of which approximately 30% may be explained as office hours charging (Helmus et al., 2020a,b).This research found user types varying from typical daytime chargers (23%), overnight chargers (49%) and non-typical users (e.g., taxis, frequent visitors and car sharing EVs, 28%) (Helmus et al., 2020a,b).
The dataset contains 7.2 million charging sessions by 30,000 habitual users in the G4 cities of the Netherlands from January 2014 to April 2019.The dataset also contains 2 million transactions of ~ 95,000 users for whom charging behavior can be limitedly described by their charging data.A spatial and temporal overview of the data is available at EVdata (EVdata, 2021, Wolbertus et al., 2016, van den Hoed et al., 2020).In Table 2, an overview of several metrics of the data can be found.
The dataset was split into a training set used to calibrate the agents and a test set to test the outcomes of the simulation model (Table 1).The two datasets were created by setting a split date, an experiment parameter.Splitting the data is preferred over sampling since sampling charging sessions per user would affect the behavioral distribution of disconnection time between two sessions.
For each agent in the system, the agent's behavior is generated as distributions in time and space (e.g., arrival patterns) based on its own data -self-generated real-world transactions -in the training set.This implies that each agent has a unique set of distributions during simulation execution.

Overview: Entities, state variables and scales
The simulation model contains three entities: (1) the environment, (2) the agents and (3) the simulation handler.An overview of the entities and descriptions of their state variables can be found in Table 5 in Appendix A.
The environment is defined as the collection of all CPs including relevant attributes (i.e., their location and their placement date).Each CP has two or more sockets and thus multiple agents can be simultaneously connected to a single CP.The sockets can be occupied or available.If all sockets are occupied, no other agent can connect to this CP.This results in a failed connection attempt if one additional agent tries to connect.The new agent will then try to connect to another nearby CP.
Agents are defined as the combination of the EV users and their respective EVs, as they are identified in the data by their charging card (Helmus, J et al., 2020).This implicitly means that more users with the same charging card (e.g., in families) are regarded as one agent.Every agent is considered to have complete knowledge of the environment (i.e., where CPs are located), but an agent does not know whether an outlet of its selected CP is occupied until it tries to connect to the CP.Agents are considered not to communicate with each other and, as such, do not share information on the state of other entities in the system, such as CPs.
We consider control parameters affecting individual agent behavior to be related to interactions between agents (e.g., occupying one others' preferred CP) and are found in deviation patterns.
The overall simulation is managed by a simulation handler.This manager controls the actions of the agents and the interactions between the agents and the environment.Furthermore, the simulation handler has a collection of observers that keep track of the metrics for the experiments and system evaluation, such as the average simulation time and the agent validation scores.The model's spatial scale is continuous and all valid combinations of longitude and latitude within the boundaries of the dataset can be used.The temporal scale is discretized by bins of T minutes.T is a parameter and its default value can be found in Table 8 in Appendix A. The simulation can be run for a chosen number of days, months or years and includes weekdays and weekends.The start date and stop conditions that are used in this research can be found in Appendix B (Table 6 -Table 8).The simulation includes weekdays and weekends.Both the number of agents and CPs in the system can grow artificially for scenario planning or can reflect the real growth of EV users.

Overview: Scheduling, processes and learning
The simulation handler is a discrete event scheduler that controls the actions of the agents by storing all agents in a time ordered queue, where the time for a particular agent is the time of its next activity.The simulation handler sequentially selects agents from this queue.Once an agent is selected, it executes its next activity -either a connection or a disconnection activity -and then calculates the time of its next activity.The simulation handler then reschedules the agent and returns it to the ordered queue.Agents in the system can be in one of three states: connected, disconnected or selecting CP.The transitions between these states are controlled by three processes: connection, disconnection and CP selection.The execution loop connecting the states and processes can be seen in Fig. 1.It shows that when a connected agent executes its next activity, it will disconnect using the disconnection process.When an agent is disconnected, this agent will choose a CP from a cluster (set of CPs related in time and space) by using the connection process.The agent will then try to choose a CP to connect to by using the CP selection process.Table 3 in section 3.4 provides an overview of the processes.
The agent behavior within the model is initialized at the start of the simulation and then adapts during the simulation, since (i) the behavior in the simulation is sampled from the behavioral distributions, and (ii) due to interaction between users, the agents may deviate from chosen locations, (iii) preferences for CP selection are updated during simulation as the agent uses the CPs.Agent learning processes are based on indirect interactions with the habits of other EV users and may shift due to competition for CPs with other EV users.We assume that EV users display rational behavior in trying to optimize their convenience comparable to parking behavior (e.g.close to center, minimize failed attempts) when charging (Martens and Benenson, 2008).By creating rules from all historical charging transactions, we expect to approximate the behavior that an objective function would display.

Design Concepts: Individual decision making
The subject of individual decision making (charging behavior) includes the following processes: connection, disconnection and CP selection.From our literature study we found that charging decision-making consists of (i) habit-based behavior where EV users use a limited number of CPs routinely (Helmus, J et al., 2020;Smith et al., 2011) and (ii) adaptation towards a changing environment.
Both aspects of charging decision-making were implemented in a habit (preference) model and distance (adaptation) model.To  capture the habitual aspect of charging behavior, we allow agents to have several areas in which they frequently charge (Fig. 3).Each area contains one or more CPs that the EV user had used in the past based on the data, and these CPs form a cluster of the agent.As such, the CP selection model consists of two steps(Fig.2): (1) a step that directs the agent to a cluster of frequently used CPs conditioned on time and space and (2) a step that models the decision of a specific CP within the cluster.
For each agent, its clusters and its behavior in the cluster (captured in the dimensions of what, when and where) are purely extracted from its historical transactions.Each agent has one or more clusters unique to that agent, even if two agents have the same set of preferred CPs in a certain area.In the cluster formation all CPs that the agent has visited more than sc s (on default 10) times in the training data are considered.For each CP within the filtered clusters, an activity pattern is created based on the transactions.For each agent the set of activity patterns with longitudes and latitudes form the input of a cluster algorithm without a pre-specified number.The cluster algorithm results in clusters of CPs with similar activity patterns and locations.For details on the clustering formation, we refer the reader to the technical report section 3.9.1 ( Helmus et al., 2019).
Each cluster has a center that is assumed to be the user's destination location and that is calculated based on the weighted set of CP activity within the cluster.The assumption of distance as a determining factor in choosing a CP has been found in parking literature (Benenson et al., 2008;Zong et al., 2019).We also assume that an EV user is prepared to walk a distance d from the specific CP to the center of the cluster (Figure 3).We define an agent's walking preparedness w for a cluster as the maximum of the largest distance d between the center and any of the CPs in the cluster plus 10% with a minimum value set a parameter w min for the simulation.The reason for the 10% surplus is to include optional CPs in case of sparse cluster formations.
Based on the historical transactions for each of these clusters, three types of distributions are drawn: (i) arrival distributions, (ii) connection duration distributions and (iii) disconnection duration distributions.Given where and when an agent has previously charged, probabilities of where and when the agent will charge next are extracted from the data.In doing this, no assumptions are made about either the centers or the behavior exhibited at their clusters.During simulation the cluster size may either increase if an agent uses new CPs within the range of the cluster (e.g., using adaptation model) or decrease if CPs are removed from the environment.
The selection model consists of two steps: (i) a step that directs the agent to a cluster of frequently used CPs conditioned on time and space and (ii) a step that models the selection of a specific CP within the cluster using a sample from the user's weighted preferences.In step 1, the connection process takes the disconnection time and location of the previous connection as input and generates the time and cluster of the next connection.In step 2, the CP selection process takes the cluster as input and generates the specific CP to connect to.Moreover, the disconnection process in step 2 takes the connection time and cluster as input and results in the time at disconnection.The adaptive selection model is based on a sample of CPs within the walking preparedness of the active center of the cluster where the user is assigned.This is similar to parking behavior ABMs (Benenson et al., 2008;Martens and Benenson, 2008).This sample may also include CPs currently not part of the cluster itself.For both the habit and adaptive model, we estimate the energy uptake based on an EV users' historical sessions conditioned by the connection duration.

Design Concepts: Individual sensing, individual learning and interactions
An agent's awareness (sensing) of CP location and availability is designed to comply with the real-world system.EV drivers are known to be pro-technology, and we expect them to have access to information that provides actual CP availability before conducting or during their trip (Oplaadpalen.nl, 2021;Priessner et al., 2018).Yet, EV users are unaware of other users' intentions or attempts to connect to a specific CP.Whilst EV users may thus have full knowledge of CP locations and actual occupation, we assume that EV users have limited knowledge about future availability at their time of arrival at the CP.In line with other models, we have chosen to model the awareness of CP occupation as follows: an agent is aware of CP locations but is not aware of the occupancy of a specific CP until it arrives there to charge (Benenson et al., 2008).
The number of CPs available to an agent may expand due to new CPs placed within an agent's walking preparedness.To enable the agent to adapt to a changing environment, a habit probability (p h ) is added to the connection process that allows the agent to select a CP either from its behavioral habit or from an adaptive model.This allows agents to adapt their behavior to use new, closer CPs.Connections to the new CPs then affect the behavioral distributions of future sessions.
If a selected CP is occupied, the simulation records a failed connection attempt to be used for later analysis.Failed in this case means that an agent has failed to connect to a preferred CP, while the agent may have been able to charge elsewhere.The historical failed connection attempts do not affect the probability selection of the CP on which the agent failed.On the other hand, the successful selection of an alternative CP does add to the probability of selecting the alternative CP.As such, the agents can learn and adapt to a competitive environment by shifting preferences.If an agent cannot connect to any of the CPs within a cluster, the simulation records a failed session.
During the simulation two factors influence the stochasticity of agent behavior in the simulation.On the one hand, there is the exogenous factor of newly added CPs in the system.On the other hand, there is the endogenous factor of agent competition for CPs.The agents in the system have the ability to adapt their charging point selection to both factors by selecting newly added CPs or alternative CPs in the case of occupancy.

Design Concepts: Observations
The set of simulated charging transactions Tr is the model's main output and consists of a tuple t n = { u j , cp i , t s , t e , e t } , t n ∈ Tr in which u j is the agent, cp i is the charging point, t s andt e are the start and duration of the connection and e t is the energy uptake of the transaction.From the simulated charging transactions Tr, activity patterns are created by using the charging transactions that summarize the behavior of agents.An activity pattern captures the activity of CPs, agents or a group of agents throughout a 24-hour day in bins of T minutes.
These transactions can then be analyzed and transformed into other required outputs, such as charging infrastructure KPIs or behavioral aspects at the individual user level.A set of failed transaction attempts is also stored In this tuple, the cp p points at the previous failed CP, and this action allows us to follow traces of failure.The failed connection attempts can be used to reveal system dynamics that cannot be discovered in transaction data.
Finally, a set of failed sessions per user Sf is stored that allows us to monitor cases of service failure (Glombek et al., 2018).Service failure is the system's inability to provide an EV user with a free CP after a cascade of diverted connection attempts by several other users.Note that Sf contains only user IDs and timestamps as there is no other data to be recorded.The set Sf can be linked to the set F by using timestamps and the known locations of attempts in F.

Details: Sub-models
The SEVA model is modularly setup such that parts can be added, adjusted, or removed for each object in the environment.New user types or CP types can be added as well.The current model contains two types of agents described in this section (i) habitual EV users, defined as EV users with more than 20 sessions in a specific cluster of CPs, and (ii) non-habitual EV users, the remaining users in the dataset, which includes car-sharing cars and occasional visitors.Habitual users in this model constitute 21% of all EV users in the dataset and are responsible for 78% of all annual transactions.

Habitual EV users' charging model
Similar to the modularity of sub-models, the EV charging model is modularly setup and consists of the following three processes: connection, CP selection, and disconnection.Each process works independent of the other processes.Therefore, each individual process can be altered without interference from the other processes.Table 4 provides an overview of input variables, output factors and system interactions.First, the connection process determines at which cluster an agent will connect based on a given arrival time.This depends on the result of the disconnection process.The process uses the arrival time distribution per cluster, which encompasses a 24-hour day in bins of minutes from the parameter settings that indicate a time interval within a day, for example, between 01:00 and 01:20.Conditioned on the time of connection, each of the agent's clusters is given a probability according to the frequency at which the agent arrives at the cluster.Thereafter, a cluster is drawn according to those probabilities, and this will be the cluster the agent will connect to.Once the next cluster has been determined, the process feeds forward its output to the CP selection process.The connection process does not check on the cluster's availability.As such, this process does not fail or iterate.
Second, CP selection process determines at which CP within the cluster an agent will connect using either the habit model or the adaptive model.The process depends on active cluster and connection start time.The agent will select a CP based on habit with a chance determined by the habit probability parameter p h .. With a chance of 1 − p h , the next CP to select is selected by using the adaptive model.In the sensitivity analysis (section 4.1), we go deeper into the parameter setting for the habitual charging model.If the agent selects a CP based on habits, it selects a CP with a chance directly proportional to the number of transactions that the agent had at that CP both in the training data and in the simulation up to that point.If the agent selects based on the adaptive model, a sample is taken to select a CP from all CPs present within the range of the user's walking preparedness.For each CP the probability of being sampled is inverse to the distance from its center.This also allows the agent to select CPs that are currently part of the set of habitual CPs.
If the agent successfully connects (indicated by the green arrow in Fig. 2), its state is changed to connected, the CP socket to which it connects becomes occupied and a + 1 entry is added to the set of preferences of the user.Selection of new CPs lets agents learn and adapt behavior to new CPs in the environment.
The next process is the disconnection process.To find the disconnection time, a sample is taken from the connection duration distribution that belongs to the cluster to which the agent is connected.The connection duration distribution is conditioned on the bin of the current time to determine a duration for the current connection and thus decide when to disconnect.The time for the agent's next activity will then be the current time plus the sampled duration.
The plausibility of the connection duration is checked to avoid skewed behavior.The connection duration is considered plausible if the agent has disconnected at least once within the bin of the resulting disconnection time in the cluster in the training data.If this is not the case, the simulation checks the bins preceding and succeeding the bin originally sampled.This process continues until a valid bin is found.Note that the minimal connection duration is at least one bin size long to avoid successive repeats of the same behavior.
It is possible that the agent chooses an occupied CP.In this case a tuple is added to the set of failed connection attempts F (see also section 3.6) storing the relevant information of the failed connection attempt.When the CP selection process fails (the red arrow in Fig. 2), the agent remains disconnected, and the connection process is executed again after Tr waiting time.The CP selection process is iterated by using the selected method (habitual or adaptive) until either successful CP selection or selection failure of all the habitual or nearby CPs.After CP selection failure, a record will be stored in Sf.The driving time between CPs is not included since this is limited in the dense charging network of the G4 area (oplaadpalen.nl,2021).
Third, the disconnection process disconnects an agent from its current CP and determines the disconnection duration which is the time of connection of a subsequent charging session.The disconnection process takes the time of disconnection as input.As a result of this process, the status of the socket to which the EV user was connected is switched from occupied to available.The disconnection time is sampled from the user's disconnection duration distribution.
A validation check is required to evaluate whether the resulting start connection time for the subsequent session is valid for that agent.Similar to the plausibility check for the connection duration, we consider a start connection time to be valid if within the bin of that time, the agent is known to have been connected to the cluster at least once in the training data.Disconnection duration is restricted to at least one bin size to avoid repeated short connection and disconnection times.

Non-habitual charging model
The simulation also includes a non-habitual group.Non-habitual users are characterized as having few sessions in the data or as having patterns of highly irregular charging behavior (Helmus, J et al., 2020;Wolbertus et al., 2021).As such, these agents do not have activity clusters, and we have to use as simplified model to capture this user group's behavior.
We are interested in the effect of non-habitual charging behavior on habitual users at a group level.We therefore assume a simplified model of non-habitual charging behavior as simply users randomly occupying parts of the infrastructure.At the start of the simulation, we set a percentage for the number non-habitual behavior.However, the exact percentage of non-habitual sessions on the total base may vary due to interactions between habitual and non-habitual EV users.
Second, charging patterns by charging cards labeled "car sharing" (a typical non-habitual user type as found in Helmus et al. (2020)) were used to develop behavioral patterns.The data distributions for behavior, such as connection time, connection duration and charging frequency, were used to model non-habitual user behavior at a population level following earlier work on car sharing by Gorka et al. (2019).The energy uptake (in kWh) is derived from the connection duration.
A non-habitual user is allocated to a specific (home) city for charging and may select any CP in its home city.This is different from habitual users that are associated with particular clusters of CPs.For each session a sample is taken from the dataset to generate the arrival time, connection duration and disconnection duration.If a CP is occupied, a new CP is randomly sampled from the city and a failed connection attempt is registered.For each session the energy uptake is estimated based on the connection time and a random uniform selection whether the charging speed of the EV is based on single-or three-phase charging by using a method as described in (Mies et al., 2018).
Third, arrival and departure patterns were compared between the subgroup car sharing and the assembled group of all non-habitual users.The comparison shows how the car sharing group forms a good approximation and representativeness of all non-habitual users (Appendix C).

Model sensitivity and validation
In this section the model's performance metrics are described and their relationship to model validation.The metrics are divided into run time and validation metrics.We gain insight into the simulation's computation time by calculating run-time metrics.Additional sensitivity and validation tests on many parameters can be found in the technical report on Arxiv (J.R. Helmus et al., 2019).
As the model is developed to perform large-scale simulations to support policy makers, it is important that the computation time stays within reasonable bounds (a few hours), even when the size of the experiment increases.For this reason, two metrics are introduced that collect the time of the most computationally intensive parts of the model: (i) the initialization time and (ii) simulation execution time.
Validation metrics are stored to be used to validate the simulation results.In this paper, data from 2014 to 1-1 to 2017-12-31 are used as training data to initialize agent behavior and data from 2018 to 1-1 to 2019-1-1 are the test data to validate the model.Note that sampling during the CP selection process and interactions between users cause simulation outcomes to be different each run.Therefore, validation of behavior in the simulation should be performed on both the training as well as the test dataset.We consider two forms of validation: (i) validation of CP activity and (ii) validation of agent activity.
To determine whether the simulated data matches the training and test data, a validation metric is needed.We choose to use one metric for all agent behavior: the activity patterns of the real data (test and training), and we compare these against the activity generated by the simulation.The activity pattern is the aggregated pattern of being connected over all sessions from 00:00 to 00:00 binned using the bin size in the parameter (Appendix B).Per bin the pattern contains the fraction of time based on the total connection time that the user of a CP is connected.Per bin i this fraction is defined as b r i for the real data and b s i for the simulated data.To compare activity patterns, we calculate the error between every bin in the activity pattern of the simulation result against the corresponding bin in the activity pattern of the real data.The maximum possible d max error for bin i of the simulated data b s i and bin i of the real data b r i is: We calculate the error between bin i of the simulated data b s i and bin i of the real data b r i as: The error value of the whole activity pattern can then be viewed as the average of the error values of all its bins.An agent then has an average error per cluster -calculated by comparing cluster activity in simulated and real data.For an experiment with multiple runs, we calculate the mean error of cluster activity for each agent.
For the CP validation, we calculate the same form of error based on the activity patterns at the CP.However, since the data contains transactions from users that are not simulated, we consider only CPs used and transactions made by simulated agents.Note that the validation metric is defined as an error and therefore lower values indicate better validation.
During sensitivity and validation analysis, four different validation metrics were calculated: (i) CP training represents the mean error over all CPs for simulated data vs training data, (ii) EV training represents the mean error over all agents for simulated data vs training data, (iii) CP test represents the mean error metric over all CPs for simulated data vs test data, and (iv) EV test represents the mean error metric over all for simulated data vs test data.

Sensitivity and validation of general parameters
We used One Factor at a Time (OFAT) sensitivity analysis as the validation procedure and the initial default values are stated in the tables of Appendix B. The default values reflect default conditions with limited stress in the system to avoid biased behavior during sensitivity analysis.We tested the sensitivity of several system parameters by checking their effect on the validation metric.In this paper, we present the most significant results.A more detailed analysis can be found in Helmus et al., (2019).
The bin size validation was chosen as first step in validation since varying the bin size affects both simulation run time and the validation metric.The decision for a default bin size is a trade-off between validation requirements and run time.Fig. 4 shows the results of the bin-size variation experiment using the default parameter setting.As shown in Fig. 4 (right y-axis), the time per simulation decreases exponentially for simulation and linearly for initialization.For all validation metrics both the mean value and the standard deviation over the population increase.Based on simulation metrics, a 20-min default bin size was chosen, as this value balances the low validation scores with runtime scores.

Sensitivity and validation of charging decision making
Three parameters were found to be most significant in the charging process: (i) minimum number of transactions per CP, (ii) minimum radius d of the CPs taken into consideration for CP selection, and (iii) the habit probability p h .Fig. 5 shows the effect that the minimum number of sessions per CP has on the formation of clusters (number of centers per user and As the threshold increases, both the walking preparedness and the maximum distance decrease as clusters become sparser.The size of the cluster also decreases as CPs that are less often used are not considered during clustering.The number of centers increases as clusters may be split into separate clusters with limited CPs due to the high threshold.Note that the walking preparedness will, by definition (see section 3.9), not decrease to a value lower than the minimum radius.This parameter strongly influences the number of CPs per cluster and the maximum distance, while influencing less the walking preparedness and the number of clusters per user.We selected the value of 10 based on these results because it is not preferred to reduce the number of CPs per cluster and the maximum distance.
The minimum radius itself influences the number of CPs to be considered while selecting a CP from a cluster.It is expected that this parameter mainly affects the CP validation as sessions may be distributed over more CPs, leading to CPs facilitating more unique users that will have their own activity pattern.From the sensitivity analysis (Fig. 6) the minimum radius seems to have little influence on the agent validation metric.A distance of 200 m was chosen as the default value since at 200 m both the agent validation and CP validation are slightly lower than at 150 m while from values larger than 200 m CP validation are constant.
The habit probability sets the rate between choosing CPs based on habit model or the adaptive model.When the habit probability parameter is low, users will select CPs using the distance method.This will lead more often to new CPs within walking distance of an agent's cluster and these CPs will be used more often.This parameter appeared to have limited effect on agent validation values, and at values greater than 0.9 the CP validation values decreased.This can be explained by reasoning that with a habit probability of one, an agent acts strictly according to the data, and as such, we expect that validation improves.A value of 0.6 was chosen as this gives priority to charging based on habit without the loss of adaptation.With this value an agent with a cluster would be able to shift its preference to a more convenient CP by picking that one based on the adaptive model roughly 40% of the time.For more technical details we refer to the technical report on Arxiv (Helmus et al., 2019).

Model validation
After the model's default parameters are determined, we can run the overall model validation metrics to check validation.Several runs were performed using the chosen default values for the parameters and, on average, the following average validation values were found: agent training validation value of 0.11, agent test validation value of 0.23, CP training validation value of 0.35 and CP test validation value of 0.41.Fig. 7 lists the distribution of validation values for all 4 metrics.The CP training validation values are higher because CP activity patterns are dependent on the decision making of the agents and are therefore more sensitive to the interaction of the agents.For example, a session on a different CP than the CP in the original dataset results in a lower validation value for the CP but an equal value for the agent.A deeper analysis of the second mode (distributed around x-value 1.4) of the CP test and training validation values shows that these occur due to EV user sessions that have taken place at other CPs in the vicinity.Illustrations of the validation metric show that a value around 0.10 (agent training) (Fig. 8) and 0.23 (agent test) show a good match of the activity pattern (

Case study -Stress testing charging infrastructure supply
The validated agent-based model enables the development and analysis of 'what-if' scenarios that examine metrics of the charging infrastructure, such as KPIs, perceived EV user inconvenience, EV user charging behavior under different circumstances, but also the effects of changes in EV user population composition.
In this case study we explore CI performance and its capacity limits under various conditions.We are particularly interested in exploring effects at the boundaries of capacity of an existing CI infrastructure as non-linear effects appear there (Bettencourt et al., 2007).Non-linear utilization patterns may affect CI deployment strategies as these are based on linear demand (Helmus et al., 2018).We hypothesize that performance metrics do not scale linearly with demand.We also expect the inconvenience to reveal a non-linear growth when stressing the system.

Stress test setup
We stress the current charging infrastructure by increasing demand and analyzing how different metrics change as a function of this demand while keeping the supply (number of CPs) constant.Although, in reality, the growth of the EV base will also lead to a growth of previously placed and newly placed CPs, the stress test does provide an opportunity to evaluate the capacity limits in a charging infrastructure and possible effects of growing demand.
In our study we run simulations based on existing charging infrastructures in the G4 cities of the Netherlands during the first quarter of 2019 by adding (1) existing habitual EV user population up to its current size, (2) additional habitual EV users (based on existing habitual users), and (3) varying rates of non-habitual users.Additional habitual users are generated as randomly selected duplicates of existing habitual users that have their own initialization process separate from their originals.As such, the behavioral patterns of these additional habitual users will differ from their originals in terms of CP selection as the simulation progresses.By doing this, we assume that current user behaviors are good estimates of future user behavior.Possible effects of new types of EVs (EVs with larger batteries and subsequent different charging behavior) are not considered and may be part of future work; the stress test is focused on analyzing the capacity limits in the current system with current EV user types.
The amount of non-habitual charging is set by assigning non-habitual users as a percentage of the total user population.The simulation results then generate the actual ratio between habitual and non-habitual charging sessions.In our base case study, we include only simulation results that have a similar ratio of habitual to non-habitual sessions (within the bound of 5%) as the actual charging data (Table 4).
During the stress test we examine what the capacity limits of the current of CI are.For this purpose, we scale up the EV user population but retain a similar population composition (constant ratio between habitual and non-habitual charging sessions) while keeping the current CI constant.We expect that during scale up, performance metrics will tail off, while perceived inconvenience (measured in number of failed connection attempts) continues to increase.We also expect changes in habitual EV user behavior (e.g., in terms of connection duration and number of sessions) as a result of increased competition during the simulation.To deeper understand the effect of non-habitual users, we run the test with a varying ratio between habitual and non-habitual users.
For the stress tests we work from a base case scenario of January 2019.We tuned the input parameters for the simulation model such that the base case simulation -12,160 habitual EV users and 30% non-habitual EV users (mentioned in the results as index = 1)reflects the dataset in January 2019 according to the provided metrics (Table 2).We start from zero users to the base case (Index = 1) up to 30,000 habitual EV users present (Index 2.5).The step size from 0 to base case was 250 EV users and thereafter 1000.During the stress test EV users were added to cities according to the ratio of users in Table 2.This resulted in 492 million simulated charging transactions over all stress tests.When all CPs in any city are all occupied at the time of an agent's arrival, the simulation fails by design, which we note as irreversible stress.
We investigate the results of both stress tests on three levels: (i) performance metrics and inconvenience for CI as a whole (occupancy ratio, total connection duration, kWh, number of sessions and percentage of failed connection attempts), (ii) charging infrastructure per G4 city by using the same metrics as for CI as a whole, and (iii) habitual EV user charging behavior (number of sessions per user, connection duration, arrival time, percentage of failed connection attempts per user).

Stress test results
The simulated transactions and failed connection attempts were aggregated per city and indexed according to the base case scenario that applies for the simulated period (2019-1 to 2019-0-3).Figs.7-11 contain stress test results for G4 cities and all cities combined for several KPIs.In our analysis we focus on occupancy ratio and failed connection attempts of habitual users as perturbation of their habits results in inconvenience.The occupancy ratio shows similar results with connection duration as it is derived from this metric.
The mean occupancy ratio per CP (total hours connected divided by available hours) is a KPI often used by policy makers to deploy charging infrastructure.In Fig. 9 (a), the indexed growth of occupancy ratio is shown for the whole EV user population.This figure also shows that the curves for Amsterdam and Utrecht have the same values from index value 1.8.In both Fig. 9(a) and 9(b), a tail off can be seen.In Fig. 9 (a), the tail off seems to start from 0.75 of the base case and in Fig. 9 (b), the tail off starts from 1.05.This suggests that non-linear dynamics of the EV system are already present in the current EV system.In Fig. 9 (a), it can be seen that adding twice the population size results in 1.5 to 1.6 times growth in occupancy.This is in line with earlier research on charging capacity (Bauer et al., 2019;Kontou et al., 2019).Results for habitual users suggest that each city increases towards a maximum occupancy as the tail seems to grow towards a stable maximum.The height of the maximum per city correlates with the base case occupancy.
We performed a deeper analysis of the absolute connection time divided by the available CP time to understand the effect of growth on the system's total occupancy.In Fig. 9 (b), the occupancy ratio of habitual and non-habitual users is shown (the sum is the total occupancy in the system).Several aspects stand out.First, a tail off is shown for habitual users for all cities.The city of Amsterdam has the strongest curvature and the highest values, while the city of Rotterdam has the least curvature and the lowest values.The strength of the curvature itself may relate to the rate of competition, which may be expressed in the density of arrival time distributions in a specific area.This may find its origin in city design (e.g., concentration of residential or commercial areas versus mixed zones).
Second, non-habitual users grow linearly while scaling up the system.This may be attributed to the way non-habitual behavior is modelled, as non-habitual users always manage to connect as they repeatedly try all CPs within the city.
Third, a 100% utilization was not reached during the stress test for any of the cities.The city of Amsterdam reaches highest total occupancy (0.85) at index value 2.4.We expect that from index values 2.5, the occupancy of non-habitual charging will increase at the expense of habitual users, leading to an expected decline of occupancy for habitual users.
Increasing the user base may lead to increased effects on energy demand as well.We found a more linear pattern for kWh compared to time-based KPIs.A reason may be that the connection time is only partly used for charging (Van Den Hoed et al., 2014).
While the mean connection duration per session per user may be decreasing due to competition effects, there may still be enough time to charge.Experiments focused on the transition of current habitual EV users from PHEV (single-phase charging) to FEV (threephase charging) showed similar results (Vermeulen et al., 2018).The kWh growth metric may therefore be a weak indicator for stress in the system.
Scaling up charging infrastructure demand also affects the inconvenience for EV users.While the KPIs tail off, we see growth in failed connection attempts for both the indexed and the absolute percentage (Fig. 11  second phase from index 0.5 to approximately 1.8, the indexed failed connection attempts increases exponentially and (3) in the third phase from index 1.8, the indexed failed connection attempts returns to linear increase.The reason for exponential growth is that from this second phase, the rate of competition for CPs in the system increases due to saturation.The reason for the third phase is that from that point, each new user leads to an equivalent number of connection attempts that fail due to occupied CPs.We see that the indexed failed connection attempts increase from index 1 to approximately 8 at a population size 2.5 times the base case, while at the same time performance metrics increase to indices of approximately 1.7 (occupancy) to 2.25 (kWh).For the city of Amsterdam at index 2, the ratio between failed connection attempts and successful attempts is approximately1.This implies that, on average, for each habitual user's session, the user tried one other CP.We expect that this rate of failed attempts affects inconvenience and, in the end, may lead to reduced EV adoption.
To gain a deeper understanding of the effect of non-habitual users on both performance metrics and failed connection attempts, we performed simulations from 0 to the point of irreversible stress for rates of non-habitual users varying from 0 (non-habitual users) to 1.8 (1.8 non-habitual per habitual user).Fig. 12 shows that the curvature depends on the ratio of non-habitual users and that a higher share of non-habitual users leads to (i) significantly higher and more linear growth than the lower share of non-habitual users and (ii) irreversible stress at lower index values with lower performance.Fig. 12 indicates that the maximum performance of index approximately 2.2 could be reached if irreversible stress would not occur.Moreover, for ratios greater than 0.6 of non-habitual users, the system irreversible stress occurs at a lower indexed number of users and even before the tail off starts.The failed connection attempts in Fig. 13 show that from a ratio of 0.6, the increase starts to deviate from lower values.This may indicate that in our simulations at higher rates of non-habitual users, different regime of competition may occur.
To gain a more detailed understanding on failed connection attempts, we analyzed the arrival time of the EV user at the CP for different scenarios (Fig. 14 (a-c)).We find that at a limited number of EV users (Fig. 14 (a)), distribution of competition over time differs between the cities.Particularly interesting is that Utrecht has a broad distribution with a peak of competition in the morning, while Amsterdam has a narrow distribution with a peak in the evening.The addition of non-habitual charging (with similar patterns for all cities) shows that failed connection attempts shift towards arrival times of non-habitual users.This shows how non-habitual users may oppress habitual users in specific parts of the charging network.Policy makers may have to provide additional charging capacity in these mixed zones.
As part of the results, we have made a spatial plot of the failed connection attempts (measured in quantiles) for the city of Amsterdam plotted against the local available number of sockets (Fig. 15).This map reveals areas where policy makers may deploy extra CPs to relieve local stress.The dense areas with many red CPs indicate areas where additional CPs are required.The map also indicates that local charging hubs (large circles) with more than 12 sockets may help to relieve local stress.Policy makers may run various future scenarios to develop a spatial deployment strategy based on inconvenience rather than performance.
The stress test illustrates how simulations can provide powerful insights into relevant indicators, such as occupation and failed connection attempts based on situations of peaks in EV growth.The simulation also provides a means to analyze underlying patterns, such as connection times, start connection times and energy uptake (kWh).Finally, the model allows to benchmark CIs of different cities and pinpoint current levels of network effects and competition.
In practice, this model can be used to solve policymakers' challenges in establishing the effect of utilization and failed connection attempts and the effects of adding non-habitual users in large quantities to the CP infrastructure, such as e-carsharing schemes.

Implications for policy makers
Public Charging Infrastructure (CI) deployment is a complex and uncertain project.Complex interactions of EV users and non-linear performance of CI have been investigated by using simulations of a data-driven agent-based model.An important precondition of this work has been the access to a large dataset for both assessing detailed charging profiles and validating the model.We realize that this data is not available for all cities.
The stress test results provide strong evidence that the regime of non-linear relations between utilization and performance or convenience is present in the current configuration of supply and demand for EV charging.The stress tests showed that Key Performance Metrics (KPIs) that can be retrieved from charging data marginally increase while simulated metrics for inconvenience nonlinearly increased.For policy makers, this implies that when they see diminishing marginal performance of KPIs in their monitoring reports, they should be aware of potential exponential increase of inconvenience for EV users.It is therefore important to monitor complaints of EV users regarding failed connection attempts as a proxy for the total system inconvenience.Moreover, policy makers should timely add new CPs in highly occupied areas (based on KPIs) as CP deployment is typically a time-consuming process.The stress test suggests that a combination of both habitual and non-habitual user types leads to higher total utilization.For the scale of infrastructure to which the stress test is applied, it appears that a ratio of approximately 0.6 may indicate a maximum allowed ratio that balances performance with inconvenience.
We expect that interventions of policy makers that promote uptake of specific subpopulations may lead to a local improved utilization and convenience.For instance, policy makers may set a boundary on the maximum level of inconvenience for habitual EV users (based on complaints) and then adjust their deployment strategy or apply interventions, such as parking policies.
For policy makers, the failed connection attempts may set a boundary for EV user expansion without adding CPs.Policy makers may consider network effects (number of alternatives per CP) when deploying city-wide CI.Results of our stress test suggest that a dense infrastructure (high number of alternatives) may lead to a lower amount of failed connection attempts.A deeper analysis of inconvenience, for instance, cascades of failed connection attempts as shown in Glombek et al., (2018) may reveal weak spots in the charging network.
Policy makers in cities that lack necessary charging data may compare their city layout to other cities that have been able to apply simulation models.For instance, a heatmap for inconvenience or performance of a charging infrastructure can be created by using the ratio supply and demand (number of users and number of CPs) and network properties (number of alternatives per CPs).
SEVA provides a rich variety of performance metrics that can be measured at both the individual and the population level.Whereas charging transactions generally reflect only successful charging attempts, the simulation model has provided a way to analyze the effects of competition on scarce charging points.Policy makers may improve their deployment strategy when combining monitoring dashboards on charging data with simulation models (Suresh et al., 2012;van den Hoed et al., 2020).

Limitations and future work
The purpose of our research was to present SEVA, an Agent Based Model (ABM), designed to help optimize public CI rollout.At the core lies the modelling of individual micro-behavior of EV drivers using any charging data set.We believe we provided a powerful tool (SEVA) to allow both practical insights for policy makers developing long-term plans for CI rollout and more theoretical analyses on non-linear behavior in (infrastructure) networks as well as.
A useful extension of our model would be to implement user types with their specific behavior as presented in Helmus et al., (2020).These user types may be dispersed according to local sociodemographic properties.A model that includes behavior of user types in relation to socio-demographics would allow the use of our model based on any local geographic map.
Future iterations in the model are envisaged to include a more realistic relation between battery size, SOC at arrival and the urgency of EV drivers to charge or skip a session.Using our model, investigation of adaptation patterns or development of strategic charging decisions to avoid competition may help to deploy more a robust infrastructure.
Further research can be done on determinants of "walking preparedness", a parameter that has influence on the number of charging stations EV drivers are willing to consider.We expect that walking preparedness, network density as well as arrival times may correlate or be user dependent.For instance, a user may not be willing to walk long distances for charging its EV at late night arrivals.
Apart from competition between EV users, the model does not consider potential collaboration between EV users.Particularly in situations of scarcity, EV users may collaborate with neighbors or relatives to optimize their charging opportunities (Helmus et al., 2020a,b).Local networks of collaborating EV users may positively affect KPIs and increase charging chances.Our current work is looking to further elaborate on developing a more detailed picture on charging behavior and cooperation.
The stress test results provide strong evidence of non-linear and complex micro-behavior in the system.Nonlinearity as an emergent behavior of agent interactions is a characteristic typically exhibited by complex systems.Research that applies knowledge from complex systems theory to the case of charging infrastructure may help to understand how complex phenomena can be managed by policy makers.

Fig. 1 .
Fig. 1.Overview of simulation setup (Italic numbers in brackets refer to sections in the paper).

Fig. 2 .
Fig. 2.An agent's activity loop.The grey boxes present the different states of an agent.The red and green lines indicate the two possible outcomes of the CP selection process: success (green) or failure (red).(For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

Fig. 3 .
Fig. 3.An agent's cluster.The dot indicates the cluster's center, the small orange circle indicates previously visited CPs and the green circle indicates previously unvisited CPs within range of the walking preparedness.(For interpretation of the references to colour in this figure legend, the reader is referred to the web version of this article.)

Fig. 4 .
Fig. 4. Effect of bin size variation on runtime metrics and validation metrics.

Fig. 5 .Fig. 6 .
Fig. 5. Effect of minimum number of sessions per cp on charging decision parameters.

Fig. 7 .
Fig. 7. Distribution validation values for agents and CPs for test and training set for default settings.

Fig. 8 .
Fig. 8. Illustration of an activity pattern for one agent for training and test set for validation value approximately0.10.
Figure E-1 to Figure E-4 in Appendix E).

Fig. 9 .
Fig. 9. Stress test results (a) indexed occupancy ratio at increased demand for all users (b) absolute occupancy ratio for habitual and non-habitual users at base case population composition.

Fig. 10 .
Fig. 10.Indexed stress test results for kWh at increased demand for habitual users at base case population composition.
(a)  and (b)).More precisely, the growth of failed connection attempts contains three phases: (1) in the first phase (index 0 -0.5), the existence of competition is stochastic, (2) in the

Fig. 11 .
Fig. 11.Indexed results for failed connection attempts for (a) habitual all users and (b) absolute percentage failed connection attempts for habitual users.

Fig. 12 .
Fig. 12. Indexed stress results for all cities measuring test total connection duration for various population compositions.

Fig. 13 .
Fig. 13.Indexed stress results for all cities measuring failed connection attempts for various population compositions limited to index 1.2.

Fig. 14 .
Fig. 14.Density plot failed connection attempts over the hours of the day for all cities at (a) 1,200 users (index 0.1), (b) base case (index 1.0) scenario and (c) 24,000 users (index 2.0).

Fig. 15 .
Fig. 15.Spatial distribution of failed connection attempts during base case simulation (index = 1, ratio non-habitual = 0.3) for the city of Amsterdam, size of circles refers to the number of sockets (2-16).

Fig. E1 .
Fig. E1.Differences in distributions for (a) start connection time distribution, (b) disconnection time distribution, and (c) connection duration for non-habitual users and car sharing.

Fig. F1 .
Fig. F1.Effect of threshold of number of sessions per user (in total) on the population size.

Fig. G1 .
Fig. G1.Illustration of activity pattern for one agent for training and test set for validation value approximately 0.10.

Fig. G2 .
Fig. G2.Illustration of activity pattern for one agent for training and test set for validation value approximately 0.50.

Fig. G4 .
Fig. G4.Illustration of activity pattern for one agent for training and test set for validation value approximately 1.50.The high value is due to a limited number of simulated sessions.

Table 1
Example record in available dataset.

Table 3
Overview properties training and test set.

Table 4
overview of the processes for habitual EV users' charging behavior.