# Energy-Aware Evolutionary Algorithm for Scheduling Jobs of Charging Electric Vehicles in an Autonomous Charging Station

^{*}

^{†}

## Abstract

**:**

## 1. Introduction

## 2. Theoretical Background

#### 2.1. Variable-Speed Processors

- It is possible to change the speed during the execution of a computational task;
- Change of speed means different power usage of the processor and shortening/lengthening the computations;
- By controlling the power usage of the processor, we have an impact on the time of computations and the energy consumed by them.

#### 2.2. Computational Task

#### 2.2.1. Size of a Computational Task

_{j}the number of operations performed in the j-th iteration (generation) of the algorithm and the total number of operations by no, then the size of the program implementing the evolutionary algorithm as a computational task is

#### 2.2.2. Convergence of a Metaheuristic Algorithm

- Avoid interrupting computations during the exploration of a very promising area of potential solutions to the problem;
- Not to carry out computations when there is no chance to improve the best previously found solution (perhaps the optimal one).

#### 2.2.3. Model of the Computational Task

_{j}of the processor in iteration $j,j=1,\dots ,no$ is fixed and depends on the power used in iteration p

_{j}, according to relation (2). This speed is determined before the iteration starts. The power ${p}_{j},j=\mathrm{1,2},\dots ,no$ is limited in advance by a known value of the maximum power $P$. This means that the maximum speed of the operation in each iteration is also limited, up to some known value:

#### 2.3. Exemplary Scheduling Problem

## 3. Materials and Methods

#### 3.1. Model of an Autonomous Charging Station

- The station consists of two modules: a computing one and an executive one;
- The computing module is equipped with a VSP processor made with CMOS technology;
- The result of the execution of the computational task performed by the computing module is a schedule of charging jobs, and the corresponding algorithm takes into account the adopted scheduling criterion;
- The computational task has to be finshed before the first charging job starts;
- The executive module performing energy charging jobs does not have a fixed limit of charging slots (theoretically, it is possible to charge any number of drones simultaneously);
- Both modules are powered by the same electric power source (energy storage) with a known capacity;
- There is an upper limit $P$ of power usage common to the computing and executive modules;
- The energy storage is not replenished either during computations or during the execution of the charging jobs.

#### 3.2. Problem Formulation

- The allocation of power (and, consequently, the processing speed of the computational task) in each iteration, as well as the stopping criterion of the computational task.

- The resulting schedule of charging jobs ends before the given deadline $D$ and has the minimum length.

#### 3.3. Approaches

#### 3.3.1. Safe Approach

#### 3.3.2. Aggressive Approach

#### 3.3.3. Aggressive Approach with Stopping

## 4. Discussion

- 1.
- We calculate the length and the energy consumption for the initial schedule of charging jobs.
- 2.
- We calculate the remaining amount of energy that may be used for computations and the maximum computation time, taking into account two known values: the deadline $D$ and the total available amount of energy $E$.
- 3.
- Based on the amount of energy and the computation time, we calculate the maximum possible power used for computations (i.e., the maximum speed of computations in order to perform as many iterations as possible) and run the evolutionary algorithm.
- 4.
- After each generation of EA, we calculate the energy consumption and the length of the best schedule found and adjust the power needed for computations to those two calculated values.
- 5.
- The computations are interrupted when we run out of either energy or time for further computations.

- 1.
- We calculate the energy consumption for the initial order of charging jobs.
- 2.
- We calculate the amount of energy remaining for computations.
- 3.
- We perform the computational task at full speed as long as energy is still available.

- 1.
- We calculate the energy consumption for the initial order of charging jobs.
- 2.
- We calculate the amount of energy remaining for computations.
- 3.
- We perform the computational task at full speed until either the obtained solution is feasible with respect to deadline $D$ or we run out of energy.

## 5. Case Study Simulation of Dynamic Power Allocation

- (a)
- a fixed allocation of the maximum available power to the processor, which corresponds to a fixed maximum possible processing speed;
- (b)
- a fixed allocation of power to the processor equal to 20% of the maximum available power amount, which corresponds to a fixed slight processing speed;
- (c)
- a dynamic power allocation, which corresponds to a variable, is adjusted to a particular situation’s processing speed.

- –
- The processing speed $s$:$$s={p}^{1/3}$$
- –
- Time $t$ of performing a single EA iteration of size $w$:$$t=w\xb7{p}^{-1/3}$$
- –
- Energy $e$ consumed within the iteration:$$e=w\xb7{p}^{2/3}$$

- The initial schedule length (e.g., found by a constructive heuristic): 90;
- The EA convergence: given in the example in Figure 3;
- The size of a single EA iteration (measured as the number of processor instructions executed within the iteration): 10;
- The maximum available amount of power: 1;
- The total available amount of energy (including the energy needed for charging drones): 150;
- The amount of energy available for computations (excluding the energy for charging drones): 50;
- Deadline (time limit for charging): 140.

- –
- A fixed power amount used for computations during each iteration: $p=1$;
- –
- The processing speed in each iteration (from Formula (14)): $s=1$;
- –
- The time of computation in each iteration (from Formula (15)): $t=10$;
- –
- The amount of energy consumed for computations in each iteration (from Formula (16)): $e=10$;

- –
- A fixed power amount used for computations during each iteration: $p=0.2$;
- –
- The processing speed in each iteration (from Formula (14)): $s=0.585$;
- –
- The time of computations in each iteration (from Formula (15)): $t=17.1$;
- –
- The amount of energy consumed for computations in each iteration (from Formula (16)): $e=3.42$;

## 6. Conclusions

## Author Contributions

## Funding

## Data Availability Statement

## Conflicts of Interest

## Abbreviations

IoT | Internet of Things |

EMV | Electric Motor Vehicle |

UAV | Unmanned Aerial Vehicle |

EA | Evolutionary Algorithm |

DFS | Dynamic Frequency Scaling |

DVS | Dynamic Voltage Scaling |

VSP | Variable Speed Processor |

CMOS | Complementary Metal-Oxide-Semiconductor |

## References

- Davis, A.; Parikh, J.; Weihl, W.E. Edge computing: Extending enterprise applications to the edge of the internet. In Proceedings of the 13th International World Wide Web Conference on Alternate Track Papers & Posters, New York, NY, USA, 17–20 May 2004; pp. 180–187. [Google Scholar] [CrossRef]
- Khan, W.Z.; Ahmed, E.; Hakak, S.; Yaqoob, I.; Ahmed, A. Edge computing: A survey. Future Gener. Comput. Syst.
**2019**, 97, 219–235. [Google Scholar] [CrossRef] - Atzori, L.; Iera, A.; Morabito, G. The Internet of Things: A survey. Comput. Netw.
**2010**, 54, 2787–2805. [Google Scholar] [CrossRef] - Mansour, M.; Gamal, A.; Ahmed, A.I.; Said, L.A.; Elbaz, A.; Herencsar, N.; Soltan, A. Internet of Things: A Comprehensive Overview on Protocols, Architectures, Technologies, Simulation Tools, and Future Directions. Energies
**2023**, 16, 3465. [Google Scholar] [CrossRef] - Luo, Q.; Hu, S.; Li, C.; Li, G.; Shi, W. Resource Scheduling in Edge Computing: A Survey. IEEE Commun. Surv. Tutor.
**2021**, 23, 2131–2165. [Google Scholar] [CrossRef] - Onoufriou, G.; Bickerton, R.; Pearson, S.; Leontidis, G. Nemesyst: A hybrid parallelism deep learning-based framework applied for internet of things enabled food retailing refrigeration systems. Comput. Ind.
**2019**, 113, 103133. [Google Scholar] [CrossRef] - Gao, Y.; Chang, D.; Chen, C.H.; Xu, Z. Design of digital twin applications in automated storage yard scheduling. Adv. Eng. Inform.
**2022**, 51, 101477. [Google Scholar] [CrossRef] - Han, W.; Xu, J.; Sun, Z.; Liu, B.; Zhang, K.; Zhang, Z.; Mei, X. Digital Twin-Based Automated Guided Vehicle Scheduling: A Solution for Its Charging Problems. Appl. Sci.
**2022**, 12, 3354. [Google Scholar] [CrossRef] - Tian, M.-W.; Yan, S.-R.; Guo, W.; Mohammadzadeh, A.; Ghaderpour, E. A New Task Scheduling Approach for Energy Conservation in Internet of Things. Energies
**2023**, 16, 2394. [Google Scholar] [CrossRef] - Hafeez, G.; Islam, N.; Ali, A.; Ahmad, S.; Usman, M.; Alimgeer, K.S. A Modular Framework for Optimal Load Scheduling under Price-Based Demand Response Scheme in Smart Grid. Processes
**2019**, 7, 499. [Google Scholar] [CrossRef] - Imran, A.; Hafeez, G.; Khan, I.; Usman, M.; Shafiq, Z.; Qazi, A.B.; Khalid, A.; Thoben, K.D. Heuristic-Based Programable Controller for Efficient Energy Management Under Renewable Energy Sources and Energy Storage System in Smart Grid. IEEE Access
**2020**, 8, 139587–139608. [Google Scholar] [CrossRef] - Ali, S.; Ullah, K.; Hafeez, G.; Khan, I.; Albogamy, F.R.; Haider, S.I. Solving day-ahead scheduling problem with multi-objective energy optimization for demand side management in smart grid. Eng. Sci. Technol. Int. J.
**2022**, 36, 101135. [Google Scholar] [CrossRef] - Boyer, F.R.; Epassa, H.G.; Savaria, Y. Embedded power-aware cycle by cycle variable speed processor. IEE Proc.-Comput. Digit. Tech.
**2006**, 153, 283–290. [Google Scholar] [CrossRef] - Irani, S.; Pruhs, K. Algorithmic Problems in Power Management. ACM SIGACT News
**2005**, 36, 63–76. [Google Scholar] [CrossRef] - Bansal, N.; Kimbrel, T.; Pruhs, K. Dynamic Speed Scaling to Manage Energy and Temperature. In Proceedings of the 45th Annual IEEE Symposium on Foundations of Computer Science, Rome, Italy, 17–19 October 2004. [Google Scholar]
- Józefowska, J.; Mika, M.; Różycki, R.; Waligóra, G.; Węglarz, J. Discrete-continuous scheduling to minimize the makespan for power processing rates of jobs. Discret. Appl. Math.
**1999**, 94, 263–285. [Google Scholar] [CrossRef] - Różycki, R.; Węglarz, J. On job models in power management problems. Bull. Pol. Acad. Sci. Tech. Sci.
**2009**, 57, 147–151. [Google Scholar] [CrossRef] - Michalewicz, Z. Genetic Algorithms + Data Structures = Evolution Programs; Springer: Berlin/Heidelberg, Germany, 1992. [Google Scholar]
- Buchmann, I. Batteries in a Portable World—A Handbook on Rechargeable Batteries for Non-Engineers, 4th ed.; Cadex Electronics Inc.: Richmond, BC, Canada, 2016. [Google Scholar]
- Różycki, R.; Waligóra, G.; Węglarz, J. Scheduling battery charging jobs with linearly decreasing power demands to minimize the total time. Bull. Pol. Acad. Sci.-Tech. Sci.
**2020**, 68, 299–306. [Google Scholar] - Bae, H.; Park, S. Assessment of the Electromagnetic Radiation Exposure at EV Charging Facilities. Sensors
**2023**, 23, 162. [Google Scholar] [CrossRef] [PubMed]

**Figure 1.**Dependence of processing time t and energy consumption e when performing one processor operation on power p used by the CMOS processor (α = 3).

**Figure 2.**Parametric curve indicating the dependence of energy consumption e during the execution of processor operations at processing time t.

**Figure 3.**Exemplary relationship of quality (makespan) vs. number of iterations for a schedule length minimization.

**Figure 6.**(

**a**) Graphical presentation of solution methodology—part 1. (

**b**) Graphical presentation of solution methodology—part 2.

**Figure 7.**Example of solutions in successive iterations with active constraints on computation time (sufficient energy for computations).

**Figure 8.**Example of solutions in successive iterations with active constraints on energy available for computations (sufficient time for computations).

**Figure 9.**Example of solutions in successive iterations with active constraints on energy and time available for computations.

**Figure 10.**Example of solutions in successive iterations in the aggressive approach—computations failed (no feasible solution found).

**Figure 11.**Example of solutions in successive iterations in the aggressive approach with stopping—computations terminated when a feasible solution is reached.

Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |

© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Różycki, R.; Waligóra, G.
Energy-Aware Evolutionary Algorithm for Scheduling Jobs of Charging Electric Vehicles in an Autonomous Charging Station. *Energies* **2023**, *16*, 6502.
https://doi.org/10.3390/en16186502

**AMA Style**

Różycki R, Waligóra G.
Energy-Aware Evolutionary Algorithm for Scheduling Jobs of Charging Electric Vehicles in an Autonomous Charging Station. *Energies*. 2023; 16(18):6502.
https://doi.org/10.3390/en16186502

**Chicago/Turabian Style**

Różycki, Rafał, and Grzegorz Waligóra.
2023. "Energy-Aware Evolutionary Algorithm for Scheduling Jobs of Charging Electric Vehicles in an Autonomous Charging Station" *Energies* 16, no. 18: 6502.
https://doi.org/10.3390/en16186502