
@InProceedings{merelo26:ola,
  author =       {JJ Merelo and Cecilia Merelo Molina},
  title =        {Best practices in measuring energy consumption in population-based metaheuristics},
  booktitle = {Proceedings OLA'26 International Conference on Optimization and Learning},
  year =      2026,
  pages =     {183--194}}

@ARTICLE{merelo2016statistical,
	author = {Merelo, J.J. and Chelly, Zeineb and Mora, Antonio and Fernández-Ares, Antonio and Esparcia-Alcázar, Anna I. and Cotta, Carlos and de las Cuevas, P. and Rico, Nuria},
	title = {A statistical approach to dealing with noisy fitness in evolutionary algorithms},
	year = {2016},
	journal = {Studies in Computational Intelligence},
	volume = {620},
	pages = {79 – 95},
	doi = {10.1007/978-3-319-26393-9_6},
	url = {https://www.scopus.com/inward/record.uri?eid=2-s2.0-84949818091&doi=10.1007%2f978-3-319-26393-9_6&partnerID=40&md5=5c243b4b43eb1159ab92938624c16aa7},
	type = {Book chapter},
	publication_stage = {Final},
	source = {Scopus},
}

@InProceedings{lion24,
author="Merelo-Guerv{\'o}s, Juan J.
and Garc{\'i}a-Valdez, Mario",
editor="Festa, Paola
and Ferone, Daniele
and Pastore, Tommaso
and Pisacane, Ornella",
title="How Evolutionary Algorithms Consume Energy Depending on the Language and its Level",
booktitle="Learning and Intelligent Optimization",
year="2025",
publisher="Springer Nature Switzerland",
address="Cham",
pages="254--268",
abstract="Making evolutionary algorithms greener implies tackling implementation issues from different angles. Practitioners need to focus on those that can be more easily leveraged, such as the choice of the language that is going to be used; high-level (interpreted), mid-level (based on multi-platform virtual machines), and low-level (native) languages will need power in different ways, and choosing one or the other will have an impact on energy consumption. We will be looking at the implementation of key evolutionary algorithm functions, in three languages at three different levels: the high-level JavaScript, the mid-level Kotlin, which runs on the Java Virtual Machine, and the low-level Zig. Looking beyond the obvious, as the lower the level, the less energy consumption should be expected, we will try to have a more holistic view of the implementation of the algorithms in order to extract best practices regarding its green implementation.",
isbn="978-3-031-75623-8"
}

@misc{lion26,
author={Merelo-Guervós, Juan J. and Merelo-Molina, Cecilia and García-Sánchez, Pablo and García-Valdez, Mario},
title={Is there a (carbon-) free lunch? Energy/performance tradeoffs in population-based metaheuristics},
note={Accepted, LION 20},
year=2026,
month="January"}

@misc{bna25,
year = {2025},
month = {11},
url = {https://hdl.handle.net/10481/107864},
abstract = {Green computing tries to push a series of best practices that, in general, reduce the amount of energy consumed to perform a given piece of work. There are no fixed rules for {\em greening} an algorithm implementation, which means that we need to create a methodology that, after profiling the energy spent by an algorithm implementation, comes up with specific rules that will optimize the amount of energy spent. In population based algorithms, the exploration/exploitation balance is one of the most critical aspects. The algorithm we will be working with in this paper called Brave New Algorithm was designed with the main objective of keeping that balance in an optimal way through the stratification of the population. In this paper we will analyze how this balance affects the energy consumption of the algorithm.},
organization = {University of Granada},
keywords = {Green Computing},
keywords = {Energy profiling},
keywords = {Metaheuristics},
title = {Analyzing how the exploration/exploitation trade off in biologically-inspired algorithms affects energy consumption},
author = {Merelo Guervos, Juan Julián and Merelo-Molina, Cecilia},
}

@InProceedings{merelo25:time,
  author =       {Juan J. Merelo-Guervós and Gustavo Romero-López and Mario García-Valdez},
  title =        {Time-related effects in the measurement of energy consumption in evolutionary algorithms},
  booktitle = {Europar 2025: Parallel Processing Workshops, Euro-Par 2025},
  year =      2025}

@inproceedings{merelo25,
  author       = {Juan Juli{\'{a}}n Merelo-Guerv{\'{o}}s and
                  Gustavo Romero-L{\'{o}}pez and
                  Mario Garc{\'{\i}}a{-}Valdez},
  editor       = {Pablo Garc{\'{\i}}a{-}S{\'{a}}nchez and
                  Emma Hart and
                  Sarah L. Thomson},
  title        = {Measuring Energy Consumption of {BBOB} Fitness Functions},
  booktitle    = {Applications of Evolutionary Computation - 28th European Conference,
                  EvoApplications 2025, Held as Part of EvoStar 2025, Trieste, Italy,
                  April 23-25, 2025, Proceedings, Part {II}},
  series       = {Lecture Notes in Computer Science},
  volume       = {15613},
  pages        = {240--254},
  publisher    = {Springer},
  year         = {2025},
  doi          = {10.1007/978-3-031-90065-5_15},
  timestamp    = {Fri, 09 May 2025 20:28:52 +0200},
  biburl       = {https://dblp.org/rec/conf/evoapps/GuervosLG25.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{icsoft,
  author       = {Juan Juli{\'{a}}n Merelo-Guerv{\'{o}}s and
                  Mario Garc{\'{\i}}a{-}Valdez and
                  Pedro A. Castillo},
  editor       = {Hans{-}Georg Fill and
                  Francisco Jos{\'{e}} Dom{\'{\i}}nguez Mayo and
                  Marten van Sinderen and
                  Leszek A. Maciaszek},
  title        = {An Analysis of Energy Consumption of {JavaScript} Interpreters with
                  Evolutionary Algorithm Workloads},
  booktitle    = {Proceedings of the 18th International Conference on Software Technologies,
                  {ICSOFT} 2023, Rome, Italy, July 10-12, 2023},
  pages        = {175--184},
  publisher    = {{SCITEPRESS}},
  year         = {2023},
  url          = {https://doi.org/10.5220/0012128100003538},
  doi          = {10.5220/0012128100003538},
  timestamp    = {Mon, 31 Jul 2023 15:40:15 +0200},
  biburl       = {https://dblp.org/rec/conf/icsoft/GuervosGC23.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@misc{zig1,
year = {2024},
month = {4},
url = {https://hdl.handle.net/10481/90507},
abstract = {The most fruitful way of making evolutionary algorithms
spend the least amount of energy is to consider all possible program-
ming techniques and platform choices that could, theoretically, affect
performance, and carry out experiments using EA workloads in different
platforms, eventually choosing those techniques that yield the minimum
amount of energy expenses. These techniques include a choice of differ-
ent data structures, as well as affecting compilation in such a way that
energy footprint is reduced; they have to be replicated in different com-
puting platforms because these expenditures may be affected by all the
layers of the operating system and runtime framework used. In this paper
we will experiment with different data structures and code refactoring
techniques in the low-level language zig, trying to design rules of thumb
that will help developers create green evolutionary algorithms. We will
include two different hardware platforms, looking for the one that spends
the least energy.},
organization = {Ministerio de Economía y competitividad, PID2020-115570GB-C22 (DemocratAI::UGR)},
keywords = {Green computing},
keywords = {Software engineering},
title = {Best practices for energy-thrifty evolutionary algorithms in the low-level language zig},
author = {Merelo-Guervos, Juan Julián and Mora-García, Antonio Miguel and García-Valdez, Mario},
}

@misc{zig2,
year = {2024},
month = {5},
url = {https://hdl.handle.net/10481/91923},
abstract = {Managing energy resources in scientific computing implies awareness of a wide range of software engineering techniques that, when applied, can minimize the energy footprint of experiments. In the case of evolutionary computation, we are talking about a specific workload that includes the generation of chromosomes and operations that change parts of them or access and operate on them to obtain a fitness value. In a low-level language such as Zig, we will show how different choices will affect the energy consumption of an experiment.},
organization = {PID2020-115570GB-C22 (DemocratAI::UGR)},
keywords = {Green computing},
keywords = {Metaheuristic},
keywords = {Energy-aware computing},
keywords = {Evolutionary algorithms},
keywords = {Zig},
title = {Minimizing evolutionary algorithms energy consumption in the low-level language Zig},
author = {Merelo-Guervós, Juan Julián},
}


@inproceedings{icsoft23,
  author       = {Juan Juli{\'{a}}n Merelo-Guerv{\'{o}}s and
                  Mario Garc{\'{\i}}a{-}Valdez and
                  Pedro A. Castillo},
  editor       = {Hans{-}Georg Fill and
                  Francisco Jos{\'{e}} Dom{\'{\i}}nguez Mayo and
                  Marten van Sinderen and
                  Leszek A. Maciaszek},
  title        = {Green Evolutionary Algorithms and JavaScript: {A} Study on Different
                  Software and Hardware Architectures},
  booktitle    = {Software Technologies - 18th International Conference, {ICSOFT} 2023,
                  Rome, Italy, July 10-12, 2023, Revised Selected Papers},
  series       = {Communications in},
  volume       = {2104},
  pages        = {1--18},
  publisher    = {Springer},
  year         = {2023},
  url          = {https://doi.org/10.1007/978-3-031-61753-9\_1},
  doi          = {10.1007/978-3-031-61753-9\_1},
  timestamp    = {Tue, 28 May 2024 17:36:34 +0200},
  biburl       = {https://dblp.org/rec/conf/icsoft/GuervosGC23a.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{wivace23,
  author       = {Juan Juli{\'{a}}n Merelo-Guerv{\'{o}}s and
                  Mario Garc{\'{\i}}a{-}Valdez and
                  Pedro A. Castillo},
  editor       = {Marco Villani and
                  Stefano Cagnoni and
                  Roberto Serra},
  title        = {Energy Consumption of Evolutionary Algorithms in {JavaScript}},
  booktitle    = {Artificial Life and Evolutionary Computation - 17th Italian Workshop,
                  {WIVACE} 2023, Venice, Italy, September 6-8, 2023, Revised Selected
                  Papers},
  series       = {Communications in Computer and Information Science},
  volume       = {1977},
  pages        = {3--15},
  publisher    = {Springer},
  year         = {2023},
  url          = {https://doi.org/10.1007/978-3-031-57430-6\_1},
  doi          = {10.1007/978-3-031-57430-6\_1},
  timestamp    = {Fri, 31 May 2024 21:05:33 +0200},
  biburl       = {https://dblp.org/rec/conf/wivace/Merelo-GuervosG23.bib},
  bibsource    = {dblp computer science bibliography, https://dblp.org}
}

@inproceedings{cpp.vs.zig-anon,
author = {Hidden Authors},
title = {Hidden title},
year = {2025},
publisher = {Hidden Publisher}
}

@inproceedings{cpp.vs.zig,
author = {Merelo, Juan Juli\'{a}n and Romero L\'{o}pez, Gustavo and Garc\'{\i}a-Valdez, Mario},
title = {Analyzing per-component energy consumption of evolutionary algorithms implemented in low-level languages: Comparison of {C++} and zig in key evolutionary algorithm functions},
year = {2025},
isbn = {9798400714641},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3712255.3726694},
doi = {10.1145/3712255.3726694},
abstract = {Trying to design software systems in such a way that they consume a minimal amount of energy is simply good engineering practice. Scientific software is no exception; in this case, we will put our focus on evolutionary algorithms and the energy consumption patterns in memory and CPU for two different, low-level languages: The mainstream C++ and the emerging zig. By setting up a methodology that gives us a precise measure of the energy spent by key evolutionary algorithm functions, we can give the scientific software engineer some actionable insights on how to write energy-conscious, and thus energy-thrifty, evolutionary algorithms. Our experiments show that, even with very low energy consumption in both cases, C++ can achieve a significant reduction in energy consumption for some integer-based fitness functions, as well as very good performance on classical genetic operators. Besides, the experimental results have a low variability, as compared to zig, making it in the short and medium run the best of the two languages for evolutionary algorithms.},
booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
pages = {139–142},
numpages = {4},
keywords = {green computing, software engineering, evolutionary algorithms, genetic algorithms, energy-aware algorithms},
location = {NH Malaga Hotel, Malaga, Spain},
series = {GECCO '25 Companion}
}

@inproceedings{10.1145/3712255.3726764,
author = {Romero L\'{o}pez, Gustavo and Merelo Guervos, Juan Juli\'{a}n},
title = {Energy Efficiency of C++ Standard Random Number Generators},
year = {2025},
isbn = {9798400714641},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3712255.3726764},
doi = {10.1145/3712255.3726764},
abstract = {Random number generation is widely used in many different algorithms, yet its inner workings and performance are poorly understood among many of its users. In this paper, we aim to explore one of its lesser-known aspects: energy consumption. Most studies on the subject tend to focus on the quality of the generators or on measuring their execution times. However, energy consumption is a critical concern today, particularly for mobile devices.In this work, we have measured the energy consumption of standard C++ random number generators. The results reveal differences in energy usage of over a thousand-fold, which could be significant for applications that require the generation of large quantities of random numbers, such as learning algorithms and metaheuristics.},
booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
pages = {163–166},
numpages = {4},
keywords = {green computing, software engineering, evolutionary algorithms, genetic algorithms, energy-aware algorithms, RNGs},
location = {NH Malaga Hotel, Malaga, Spain},
series = {GECCO '25 Companion}
}

@InProceedings{10.1007/978-3-031-90065-5_15,
author="Merelo-Guerv{\'o}s, Juan J.
and Romero L{\'o}pez, Gustavo
and Garc{\'i}a-Valdez, Mario",
editor="Garc{\'i}a-S{\'a}nchez, Pablo
and Hart, Emma
and Thomson, Sarah L.",
title="Measuring Energy Consumption of BBOB Fitness Functions",
booktitle="Applications of Evolutionary Computation",
year="2025",
publisher="Springer Nature Switzerland",
address="Cham",
pages="240--254",
abstract="Making software greener is a process that includes identifying the functions that consume the most energy, developing a methodology that can measure precisely that energy consumption and eventually measuring that energy under different design decisions and circumstances to be able to, eventually, produce best practices for minimizing said consumption. In this paper we are focusing on well-known floating-point fitness functions: some functions included in the black box optimization benchmark that cover all different types of functions under study. In general, these fitness functions will be the single operation that consumes the most energy; this is why in this paper we use them to test a methodology that is able to measure the energy consumed by their implementation in a low-level language C++. We test different single-element representations (single and double precision) as well as individual level representation (fixed size vs. variable size), drawing conclusions on the adequacy and accuracy of the methodology as well as which combination of the above elements would consume the least.",
isbn="978-3-031-90065-5"
}

@inproceedings{low-level,
author = {Merelo, Juan Juli\'{a}n and Garcia Valdez, Mario and Romero L\'{o}pez, Gustavo},
title = {Energy consumption of evolutionary algorithms implemented in low-level languages},
year = {2025},
isbn = {9798400706295},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3672608.3707829},
doi = {10.1145/3672608.3707829},
abstract = {In this paper, we focus on how the main operations in evolutionary algorithms spend energy in two different languages: C++ and zig. By setting up a methodology that gives us a precise measure of the energy spent by key evolutionary algorithm functions, we can give the scientific software engineer some actionable insights on how to write energy-conscious evolutionary algorithms. Our experiments show that C++ using the well-known GNU compiler can achieve a 50\% reduction in energy consumption for some integer-based fitness functions, as well as very good performance on classical genetic operators.},
booktitle = {Proceedings of the 40th ACM/SIGAPP Symposium on Applied Computing},
pages = {157–160},
numpages = {4},
keywords = {green computing, evolutionary algorithms},
location = {Catania International Airport, Catania, Italy},
series = {SAC '25}
}

@inproceedings{low-level-anon,
author = {No Author},
title = {No title},
year = {2025}
}

@incollection{merelo2022brave,
  title={A Brave New Algorithm to Maintain the Exploration/Exploitation Balance},
  author={Merelo, Cecilia and Merelo, Juan J and Garc{\'\i}a-Valdez, Mario},
  booktitle={New Perspectives on Hybrid Intelligent System Design based on Fuzzy Logic, Neural Networks and Metaheuristics},
  pages={305--316},
  year={2022},
  publisher={Springer}
}

@incollection{merelo2022brave-anon,
title={Anonymous title},
author={Anonymous authors},
booktitle={Anonymous book title}
}

@inproceedings{merelo2016comparison,
  title={A comparison of implementations of basic evolutionary algorithm operations in different languages},
  author={Merelo-Guerv{\'o}s, Juan-Julian and Blancas-{\'A}lvarez, Israel and Castillo, Pedro A and Romero, Gustavo and Rivas, Victor M and Garc{\'\i}a-Valdez, Mario and Hern{\'a}ndez-{\'A}guila, Amaury and Rom{\'a}n, Mario},
  booktitle={2016 IEEE Congress on Evolutionary Computation (CEC)},
  pages={1602--1609},
  year={2016},
  organization={IEEE}
}

@inproceedings{merelo2011implementation,
  title={Implementation matters: Programming best practices for evolutionary algorithms},
  author={Merelo, JJ and Romero, Gustavo and Arenas, Maribel Garc{\'\i}a and Castillo, Pedro A and Mora, Antonio Miguel and Laredo, Juan Luis Jim{\'e}nez},
  booktitle={International Work-Conference on Artificial Neural Networks},
  pages={333--340},
  year={2011},
  organization={Springer}
}
