The EV model object defined by evprof is generated
with function get_ev_model()
. This function returns an
object of class evmodel
. This object prints a summary of
its components. The package provides an example of evmodel
created in the California
study case article, using the charging sessions data provided by ACN.
evprof::california_ev_model
## EV sessions model of class "evmodel", created on 2024-01-29
## Timezone of the model: America/Los_Angeles
## The Gaussian Mixture Models of EV user profiles are built in:
## - Connection Models: logarithmic scale
## - Energy Models: logarithmic scale
##
## Model composed by 2 time-cycles:
## 1. Workday:
## Months = 1-12, Week days = 1-2
## User profiles = Visit, Worktime
## 2. Weekend:
## Months = 1-12, Week days = 6-7
## User profiles = Visit
The evmodel
object has two components:
metadata
: creation date, data time zone, if the scale of connection/energy models is natural or logarithmic, …-
models
: tibble containing the different time-cycles models and information. The columns of this tibble are:time_cycle
: character, given name to the time-cyclemonths
: integer vector, corresponding months of the time-cyclewdays
: integer vector, corresponding days of the time-cycle (week starting on day 1)-
user_profiles
: tibble with every user profile GMM models. The columns of this tibble are:-
profile
: character vector, given name to the user profile -
ratio
: numeric, share of daily sessions corresponding to this profile -
connection_models
: tibble with the connection bi-variate GMM -
energy_models
: tibble with the energy uni-variate GMM
-
The model itself is composed by multiple Gaussian models (GMM). The
connection_models
are Gaussian models of two variables
(connection start time and connection duration) and the
energy_models
are built with a single variable (energy).
Thus, the statistic features of connection_models
are a
centroid (\(\mu\)), a covariance matrix
(\(\Sigma\)) and the weight or ratio of
the corresponding model. Besides, the statistic features of
energy_models
are a mean (\(\mu\)), a standard deviation (\(\sigma\)) and the weight or ratio of the
corresponding model.
Let’s take a look to these statistical features of the Worktime user profile for Working days in the California model:
california_ev_model$models
## # A tibble: 2 × 4
## time_cycle months wdays user_profiles
## <chr> <list> <list> <list>
## 1 Workday <int [12]> <int [5]> <tibble [2 × 4]>
## 2 Weekend <int [12]> <int [2]> <tibble [1 × 4]>
workday_model <- california_ev_model$models$user_profiles[[1]]
workday_model
## # A tibble: 2 × 4
## profile ratio connection_models energy_models
## <chr> <dbl> <list> <list>
## 1 Visit 0.460 <tibble [3 × 3]> <tibble [1 × 3]>
## 2 Worktime 0.540 <tibble [3 × 3]> <tibble [1 × 3]>
worktime_model <- workday_model[2, ]
The connection model is a mixture of 3 bi-variate Gaussian Models:
worktime_model$connection_models
## [[1]]
## # A tibble: 3 × 3
## mu sigma ratio
## <list> <list> <dbl>
## 1 <dbl [2]> <dbl [2 × 2]> 0.305
## 2 <dbl [2]> <dbl [2 × 2]> 0.428
## 3 <dbl [2]> <dbl [2 × 2]> 0.267
On the other hand, the energy models can be based on the charging
rate (Power
variable) of the sessions. It has been observed
that the energy demand increases together with the charging power (big
vehicles have larger batteries and can charge at higher rates). Thus,
function get_energy_models
has the logical parameter
by_power
to fit the Energy Gaussian Models for the
different groups of charging powers separately. In the case of
California study case, we set by_power=FALSE
, that’s why we
got the Unknown
in the energy_models
tibble
with a ratio
of 1:
worktime_model$energy_models[[1]]
## # A tibble: 1 × 3
## charging_rate ratio energy_models
## <chr> <int> <list>
## 1 Unknown 1 <tibble [8 × 3]>
Thus, the energy model of all Worktime sessions is a mixture of 9 Gaussian models:
worktime_model$energy_models[[1]]$energy_models[[1]]
## # A tibble: 8 × 3
## mu sigma ratio
## <dbl> <dbl> <dbl>
## 1 1.34 0.129 0.0204
## 2 1.78 0.129 0.164
## 3 2.11 0.129 0.167
## 4 2.48 0.129 0.158
## 5 2.63 0.129 0.179
## 6 3.01 0.129 0.0969
## 7 3.35 0.129 0.0941
## 8 3.65 0.129 0.120