Chapter 5 Development of an optimisation framework for smart EV charging scheduling
5.2 Single-objective optimisation
In this section, basic definitions required for mathematical/numerical optimisation are provided, along with algorithms for non-linear optimisation. The reason for such classification is simple: the majority of the mathematical models defined in Chapter 3 and 4 are non-linear. As will be shown, this decision adds considerable complexity in the optimisation algorithms adopted in this research, which is directly translated into computational time. If linear programming approaches could be adopted, the computational effort may be drastically reduced. Another aspect afflicting non-linear optimisation is the scale issue: due to the complexity associated with non-linearity, the available algorithms are sensitive to the scale of the problem in terms of number of variables and constraints. These types of problems do not scale well with increasing number of decision makers/agents as computational time is at the very least directly proportional (as will be seen in MOO quadratic) to this number. Therefore, whenever possible, linearization techniques should be adopted to simplify the nature of the problem. However, as the aim of this research is to provide an operational optimisation framework, linearization techniques are beyond the set scope, hence they constitute a relevant but future work. In addition, the work conducted in this research is on deterministic optimisation, hence stochastic processes and robust optimisation are not within the scope of this research. The definition of a mathematical optimisation problem can be found in appendix A2.
5.2.1 Solution of a mathematical optimisation problem
Given a generic non-linear optimisation problem
min
154
βπ(π₯)= 0, π = 1,2, β¦ , π (5.1.b)
ππ(π₯)β₯ ππ, π = π + 1, β¦ , π (5.1.c)
where 5.1.b and 5.1.c are the equality and inequality constraints, respectively. The above optimisation problem can also be transformed in standard form by considering slack variables: ππ(π₯)β π πβ₯ ππ and π πβ₯ 0 (now the vector π₯ will also include the π π).
min
π₯ββππ(π₯) s.t. (5.2.a)
ππ(π₯)= ππ, π = 1,2, β¦ , π (5.2.b)
π₯ β₯ 0 (5.2.c)
In this research, the interior point algorithm (IP) is implemented for the non-linear convex optimisation problems as it is an efficient and widely adopted method [127]. Under this approach, a class of penalty function methods are then used which transform the constrained convex optimisation problem in a sequence of unconstrained minimisation problems. There are two classes: exterior point penalty and interior point penalty. The former calculates iteratively a series of infeasible points and reaches an end when it generates a feasible point. The latter, generates a series of feasible points, which are then converted in optimal descent points. As an example, let us consider
ππ(π₯)= 0 (5.2.d)
If a solution π₯1β βπ is infeasible, that is ππ(π₯1)β 0 at least for one π, then there is the incurrence of a penalty in the form Β΅πππ2(π₯1), where Β΅π β₯ 0.
There are other more suitable penalty functions that can be utilised, normally called barrier functions of the following form:
i) Inverse barrier function
π½π= βπ1
π(π₯)
(5.3)
155
π½π= log[ππ(π₯)] (5.4)
Consequently, the minimisation problem defined in (5.2) is transformed in a new augmented version defined in (5.5). The aim is to obtain the optimal solution as the penalty terms become nil: β 0 β π₯πβ β π₯β, where π is the number of iterations.
min
π₯ββπ π(π₯)+β Β΅ππ½π π
π=1 (5.5)
The above optimisation problem is solved by defining a Lagrangian function and a system of equations that satisfies the Karush-Kuhn Tucker (KKT) optimality conditions [128] as defined by the following equations.
ππ(πβ)β π π = 0 , βπ (5.6) βπ(πβ) β β π π β βπ π(πβ) π π=1 β ππβ 1 π₯π π π=1 = 0 (5.7) ππβ(ππ(πβ)β π π)= 0, βπ (5.8) ππβ β₯ 0, βπ (5.9)
Where (5.6) is the feasibility condition, (5.7) is the optimality condition, (5.8) represents the complementarity slackness (only if there are inequality constraints) consideration:= and (5.9) impose positive Lagrange multipliers.
The method for solving the system of non-linear equations may be the Newton-Raphson method presented in Chapter 3, which is not repeated here. The algorithm for IP is outlined in the Appendix A3 Algorithms for mathematical optimisation
The above single-objective optimisation method was applied in [P2] for an optimal stationary energy storage and EV charging scheduling, with the latter including battery degradation. As it was previously hinted, the computational burden of such solution algorithm lies in the iterative process. This is because, the optimal solution is iteratively approximated since the system of equations is non-linear.
As some objective functions may be not convex (concave), for them, the IP algorithm will only find local minima (maxima). In the recent decades a class of algorithms has overcome
156 this limitation, as they do not require any gradient calculations, hence are not trapped in local minima.
5.2.1.1
Metaheuristic algorithms - particle swarm optimisation
Metaheuristic algorithms make use of population behaviour to search the global optimum point in the feasible region. Among metaheuristic algorithms evolutionary algorithms and swarm-based algorithms are among the most popular and have been adopted in a wide variety of applications, including MOO. Evolutionary algorithms are inspired by the Darwinβs theory of survival of the fittest, where only the strongest genes in a population can reproduce. On the other hand, swarm based methods make use of a population that moves in the feasible space searching for the optimum point and the direction of the swarm members is updated according to the best candidate solution. Due to the intuitivity and flexibility of the latter, particle swarm optimisation (PSO) has been adopted in this research for the minimisation (maximisation) of convex (concave) functions [129]. Given the optimisation problem:
min
π₯ββππ(π₯) s.t. (5.10.a)
βπ(π₯)= 0, π = 1,2, β¦ , π (5.10.b)
ππ(π₯)β₯ ππ, π = π + 1, β¦ , π (5.10.c)
where The PSO algorithm is generally based upon few iterative steps as listed below:
β Generation of a random population of candidate solutions, within the feasible region,
P
π ={
π₯ β βπ|β(
π₯)
= 0βπ(
π₯)
β₯ 0}
, where π is the number of particles.β Evaluation of a fitness (objective) function on the population π(
P
π)β
Find the best member (solution) for the swarm ππ,π and the personal best position for each particle in all the iterations thus far,ππ,π,π,
where π is the index of the particle, π indicatesthe dimension and π is the iteration step.
157 π£π,π,π+1= π π£π,π,π+ ππ,π ππ(ππ,π,πβ π₯π,π,π) + ππ,π ππ(ππ,πβ π₯π,π,π) (5.11)
where, ππ,π and ππ,π are the damping coefficients for the personal best and global best directions, respectively, and ππ and ππ are randomly generated numbers, with ππ, ππ~π(0,1).
β Update the positions of the members as defined by the expression below
π₯π,π,π+1= π₯π,π,π+ π£π,π,π+1 (5.12)
β Check convergence criteria; if met, finish, otherwise repeat from the second step.
It should be noted that the above description accounts for the constraints only at the first step, while in the latter computations, only optimality is checked. To this end, the original objective function can be updated with the already discussed barrier functions that penalise violations of the constraints and ensures convergence to an optimal and feasible point. Based on the above description, the steps for implementing PSO is presented in Appendix A3 Algorithms for mathematical optimisation.