<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">64560</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2025.064560</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Fuzzy Logic Based Evaluation of Hybrid Termination Criteria in the Genetic Algorithms for the Wind Farm Layout Design Problem</article-title>
<alt-title alt-title-type="left-running-head">Fuzzy Logic Based Evaluation of Hybrid Termination Criteria in the Genetic Algorithms for the Wind Farm Layout Design Problem</alt-title>
<alt-title alt-title-type="right-running-head">Fuzzy Logic Based Evaluation of Hybrid Termination Criteria in the Genetic Algorithms for the Wind Farm Layout Design Problem</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author" corresp="yes"><contrib-id contrib-id-type="orcid">https://orcid.org/0000-0003-2948-9527</contrib-id>
<name name-style="western"><surname>Khan</surname><given-names>Salman A.</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><email>sakhan@kiet.edu.pk</email></contrib>
<contrib id="author-2" contrib-type="author">
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-7897-1275</contrib-id>
<name name-style="western"><surname>Mohandes</surname><given-names>Mohamed</given-names></name><xref ref-type="aff" rid="aff-2">2</xref><xref ref-type="aff" rid="aff-3">3</xref></contrib>
<contrib id="author-3" contrib-type="author">
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-2209-9617</contrib-id>
<name name-style="western"><surname>Rehman</surname><given-names>Shafiqur</given-names></name><xref ref-type="aff" rid="aff-3">3</xref></contrib>
<contrib id="author-4" contrib-type="author">
<contrib-id contrib-id-type="orcid">https://orcid.org/0000-0002-4933-9553</contrib-id>
<name name-style="western"><surname>Al-Shaikhi</surname><given-names>Ali</given-names></name><xref ref-type="aff" rid="aff-2">2</xref><xref ref-type="aff" rid="aff-4">4</xref></contrib>
<contrib id="author-5" contrib-type="author">
<name name-style="western"><surname>Iqbal</surname><given-names>Kashif</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<aff id="aff-1"><label>1</label><institution>College of Computing and Information Sciences, Karachi Institute of Economics and Technology</institution>, <addr-line>Karachi, 75190</addr-line>, <country>Pakistan</country></aff>
<aff id="aff-2"><label>2</label><institution>Electrical Engineering Department, King Fahd University of Petroleum &#x0026; Minerals, Dhahran</institution>, <addr-line>31261</addr-line>, <country>Saudi Arabia</country></aff>
<aff id="aff-3"><label>3</label><institution>Interdisciplinary Research Center for Renewable Energy and Power Systems Engineering (IRC-REPS), King Fahd University of Petroleum &#x0026; Minerals, Dhahran</institution>, <addr-line>31261</addr-line>, <country>Saudi Arabia</country></aff>
<aff id="aff-4"><label>4</label><institution>Interdisciplinary Research Center for Communication and Systems Sensing (IRC-CSS), King Fahd University of Petroleum &#x0026; Minerals</institution>, <addr-line>Dhahran, 31261</addr-line>, <country>Saudi Arabia</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Salman A. Khan. Email: <email>sakhan@kiet.edu.pk</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2025</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>09</day><month>06</month><year>2025</year>
</pub-date>
<volume>84</volume>
<issue>1</issue>
<fpage>553</fpage>
<lpage>581</lpage>
<history>
<date date-type="received">
<day>19</day>
<month>2</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>30</day>
<month>4</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2025 The Authors.</copyright-statement>
<copyright-year>2025</copyright-year>
<copyright-holder>Published by Tech Science Press.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_64560.pdf"></self-uri>
<abstract>
<p>Wind energy has emerged as a potential replacement for fossil fuel-based energy sources. To harness maximum wind energy, a crucial decision in the development of an efficient wind farm is the optimal layout design. This layout defines the specific locations of the turbines within the wind farm. The process of finding the optimal locations of turbines, in the presence of various technical and technological constraints, makes the wind farm layout design problem a complex optimization problem. This problem has traditionally been solved with nature-inspired algorithms with promising results. The performance and convergence of nature-inspired algorithms depend on several parameters, among which the algorithm termination criterion plays a crucial role. Timely convergence is an important aspect of efficient algorithm design because an inefficient algorithm results in wasted computational resources, unwarranted electricity consumption, and hardware stress. This study provides an in-depth analysis of several termination criteria while using the genetic algorithm as a test bench, with its application to the wind farm layout design problem while considering various wind scenarios. The performance of six termination criteria is empirically evaluated with respect to the quality of solutions produced and the execution time involved. Due to the conflicting nature of these two attributes, fuzzy logic-based multi-attribute decision-making is employed in the decision process. Results for the fuzzy decision approach indicate that among the various criteria tested, the criterion <italic>Phi</italic> achieves an improvement in the range of 2.44% to 32.93% for wind scenario 1. For scenario 2, <italic>Best-worst</italic> termination criterion performed well compared to the other criteria evaluated, with an improvement in the range of 1.2% to 9.64%. For scenario 3, <italic>Hitting bound</italic> was the best performer with an improvement of 1.16% to 20.93%.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Wind energy</kwd>
<kwd>wind farm layout design</kwd>
<kwd>performance evaluation</kwd>
<kwd>genetic algorithms</kwd>
<kwd>fuzzy logic</kwd>
<kwd>multi-attribute decision-making</kwd>
</kwd-group>
<funding-group>
<award-group id="awg1">
<funding-source>King Fahd University of Petroleum &#x0026; Minerals</funding-source>
<award-id>2217</award-id>
</award-group></funding-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>The deterioration of climatic conditions globally, coupled with the depletion of fossil fuel resources, has promoted the use of renewable energy sources in recent years [<xref ref-type="bibr" rid="ref-1">1</xref>]. Scientists and engineers are working relentlessly to develop methods and technologies that improve the efficiency of renewable energy sources. One domain of renewable energy that has received notable interest from researchers is wind energy. There are several reasons to consider wind energy compared to traditional fossil fuel sources. The greatest advantage of wind energy is the financial aspect; the cost of generation, operations, and maintenance is substantially low [<xref ref-type="bibr" rid="ref-1">1</xref>]. In addition, the time frame in which a wind farm is developed and commissioned is much less than that of an energy generation facility that operates on gas, oil, or coal. Another factor that advocates the use of wind energy is that the wind is least affected by geographical boundaries and geopolitical conflicts. This is in contrast to fossil fuels which are owned and controlled by certain countries, and their movement from one point to another is heavily dependent on the logistical resources and geopolitical situation in the regions of interest.</p>
<p>Among the various challenges in the domain of wind energy research, efficient energy generation from a wind farm is the most crucial and focal issue. A factor that plays an important role in efficient energy generation is the layout of a wind farm, which governs the placement and configuration of wind turbines within the farm. Studies have shown that each potential wind farm has its own optimal configuration and a one-size-fits-all strategy does not work due to different topographical and climatic conditions [<xref ref-type="bibr" rid="ref-1">1</xref>]. This observation instigates the need to have techniques that can generate optimal layouts while considering site-specific information.</p>
<p>The wind farm layout design (WFLD) problem is classified as an NP-hard optimization problem [<xref ref-type="bibr" rid="ref-2">2</xref>]. As with many engineering problems, the WFLD problem has two main dimensions: the problem model and the computational model. A significant amount of work has been done on both dimensions during the past three decades. In terms of the engineering model, studies have proposed different wake models, placement strategies of turbines while treating the problem as a continuous or discrete optimization problem, modeling the problem as single-objective or multi-objective optimization, using different turbine types, and other factors such as site topography and climatic conditions. In terms of computational aspects, studies have focused on the use of nature-inspired algorithms (NIAs), which mainly consist of evolutionary computation and swarm intelligence algorithms, to solve the WFLD problem. In contrast to linear search or greedy algorithms, which are simple and computationally efficient, NIAs are computationally expensive. However, a major drawback of simple algorithms is that they often fail to produce efficient or even feasible solutions. This compelled researchers to resort to NIAs which stem from the domain of artificial intelligence and are capable of finding optimal or near-optimal solutions, but at a higher computational cost than simple algorithms. Some well-known NIAs that have been effectively applied to the WFLD problem include the genetic algorithms (GA), differential evolution (DE), particle swarm optimization (PSO), cuckoo search (CS), and many others. Mosetti et al. [<xref ref-type="bibr" rid="ref-3">3</xref>] were the first study to employ GA for the WFLD problem to extract the maximum energy for the minimum installation costs. Grady et al. [<xref ref-type="bibr" rid="ref-4">4</xref>] also developed a GA for maximum production capacity while limiting the number of turbines installed and the physical area occupied by each wind farm. With regard to DE, Ra&#x0161;uo et al. [<xref ref-type="bibr" rid="ref-5">5</xref>] utilized the algorithm for optimal placement of turbines on arbitrary configured terrains to achieve their maximum production effectiveness. Ra&#x0161;uo et al. [<xref ref-type="bibr" rid="ref-6">6</xref>] also proposed DE, while considering two different optimization functions. Rezk et al. [<xref ref-type="bibr" rid="ref-7">7</xref>] presented a comparative study involving DE and many other NIAs. Concerning PSO, Asaah et al. [<xref ref-type="bibr" rid="ref-8">8</xref>] combined the algorithm with a three-step strategy to improve the quality of a wind farm layout. Wu et al. [<xref ref-type="bibr" rid="ref-9">9</xref>] used PSO to design the optimal layout for a wind farm considering its noise, without sacrificing power production. Shin et al. [<xref ref-type="bibr" rid="ref-10">10</xref>] utilized a hybrid PSO for offshore WFLD. Afanasyeva et al. [<xref ref-type="bibr" rid="ref-11">11</xref>] developed a CS algorithm with auxiliary infrastructure and showed that infrastructure cost has an impact on the overall performance of the wind farm. In addition, Rezk et al. [<xref ref-type="bibr" rid="ref-7">7</xref>] applied the water cycle optimization algorithm, Kiamehr et al. [<xref ref-type="bibr" rid="ref-12">12</xref>] employed the imperialist competitive algorithm, and Aggarwal et al. [<xref ref-type="bibr" rid="ref-13">13</xref>] utilized biogeography-based optimization algorithm, all for the WFLD problem.</p>
<p>Traditionally, the NIA-based studies on the WFLD problem have primarily focused on improving/modifying the algorithm design to obtain better (and even optimal) solutions, without giving due consideration to the computational costs involved in the optimization process. An argument that can be given here is that computational time may be a critical issue in optimization problems that involve real-time decisions (such as scheduling), but for problems that do not involve real-time decisions, such as WFLD where the layout optimization is of the utmost importance, execution time is not important. From the problem engineering viewpoint, this argument is valid. However, in the computational sense, the principles of good algorithm design state that an efficient algorithm should be both <italic>time efficient</italic> and <italic>space efficient</italic> [<xref ref-type="bibr" rid="ref-14">14</xref>]. As such, an algorithm that only focuses on solution optimization without considering time optimization is not treated as an effective algorithm, irrespective of whether the problem solicits a real-time solution or not. In the context of time efficiency, a good algorithm is one that is executed just for the right time. That is, the algorithm is neither under-executed nor over-executed.</p>
<p>In terms of application of NIAs to the WFLD problem, the improvements and modifications were made mainly in two fundamental elements which are <italic>exploration</italic> and <italic>exploitation</italic>, and the researchers have paid significant attention to these two elements in almost all studies on WFLD. However, another aspect that deserves researchers&#x2019; attention is the algorithmic parameters that need to be properly tuned so that the algorithm can reach an acceptable (or optimal) solution in as little time as possible. One such important parameter is the algorithm&#x2019;s termination condition, also referred to as the stopping criterion/criteria in the literature.</p>
<p>The stopping condition contributes to the execution of an algorithm so that the desired performance is achieved, and several studies have highlighted the importance of this issue [<xref ref-type="bibr" rid="ref-15">15</xref>,<xref ref-type="bibr" rid="ref-16">16</xref>]. If the algorithm stops prematurely, then a near-optimal/optimal solution may not be obtained which is an undesired scenario. In contrast, if the algorithm runs for a longer duration than what is needed, then the additional execution will result in a waste of resources. This situation has negative implications such as wasted execution cost (in terms of execution time utilization), unwarranted electricity consumption, and hardware stress. However, an inherent limitation of NIAs is that they cannot decide when to terminate the optimization process, and the automatic termination ability is not designed in the original versions of NIAs [<xref ref-type="bibr" rid="ref-15">15</xref>]. The primary reason for the lack of an automated termination process is that the problem solver is not often aware of the behavior of the NIA. To obtain an in-depth understanding of the behavior of an NIA, <italic>fitness landscape analysis</italic> (FLA) [<xref ref-type="bibr" rid="ref-17">17</xref>] is essential. The study of FLA falls in a different domain of research, generally outside the interest of researchers involved in studies on the WFLD optimization problem.</p>
<p>As mentioned above, the over-execution of an NIA results in waste of resources. The first and foremost is the overhead execution time. Since NIAs are iterative and non-deterministic, no notable improvement (or no improvement at all) may be observed for certain iterations during the execution, particularly towards the end of execution. However, computational resources are engaged in computations during such periods. In a uni-processor environment, the processor cannot accept a new processing job if the current process is in progress, and therefore other processes are delayed. With modern computational trends in which <italic>cloud computing</italic> is used, the wastage of computational resources is a more serious issue since the user pays a monetary cost to utilize computational time. More computational time means more financial cost, which is undesired. Furthermore, additional memory is required to keep the data generated during the overhead execution time.</p>
<p>Another concern is the unwarranted electricity consumption by the computing platform that arises due to additional execution of the algorithm beyond what is needed. Not only this, the additional electricity consumption leads to additional heat dissipation, which requires cooling. Thus, more electricity is required to manage the cooling systems. Furthermore, prolonged usage of a central processing unit (CPU) results in <italic>hardware stress</italic>, thus reducing the CPU&#x2019;s lifetime [<xref ref-type="bibr" rid="ref-18">18</xref>,<xref ref-type="bibr" rid="ref-19">19</xref>]. Therefore, contemporary trends in software design and hardware architectures focus on <italic>green computing</italic>, leading to energy-aware algorithm design and computational platforms where the objective is to conserve as much energy as possible. This is achieved through energy-aware computing [<xref ref-type="bibr" rid="ref-20">20</xref>], energy-aware simulations [<xref ref-type="bibr" rid="ref-21">21</xref>], energy-aware software development [<xref ref-type="bibr" rid="ref-22">22</xref>], and other relevant methodologies. Numerous contemporary studies have incorporated energy-aware algorithms in various domains, signifying the importance of the issue.</p>
<p>Ghoreishi et al. [<xref ref-type="bibr" rid="ref-15">15</xref>] reported that over 25 different stopping criteria have been used in studies involving NIAs in various domains. However, in the case of NIAs, as applied to the WFLD problem, only a few have been used. GA is particularly selected as an example since it has been the most utilized algorithm for the WFLD problem in the past [<xref ref-type="bibr" rid="ref-2">2</xref>] and is still actively used for the underlying problem. Furthermore, GA is a versatile algorithm and has been effectively used to solve a variety of optimization problems related to wind energy [<xref ref-type="bibr" rid="ref-23">23</xref>,<xref ref-type="bibr" rid="ref-24">24</xref>]. The table indicates that a huge majority of these studies have employed <italic>fixed number of iterations</italic> (FNI), without giving due consideration to the different wind scenarios encountered in the studies. As such, no justifications have been provided for the selection of the FNI termination criterion. In FNI, the user provides the number of iterations, and once the algorithm reaches the defined number of iterations, the execution is terminated. However, as pointed out by Ravber et al. [<xref ref-type="bibr" rid="ref-25">25</xref>], the FNI approach has several limitations and is therefore not a good approach for solving optimization problems with evolutionary algorithms, as well as GAs. A somewhat modified version of the FNI approach is the <italic>K-iterations</italic> (KIt) termination criterion. In KIt, the algorithm is terminated when no improvement is observed in the best fitness value through a <italic>K</italic> number of consecutive iterations. However, the user has to provide the value of <italic>K</italic> [<xref ref-type="bibr" rid="ref-26">26</xref>]. A review of studies on the use of GA for the WFLD problem between the period 1994 and 2024 is presented in <xref ref-type="table" rid="table-1">Table 1</xref>.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Summary of previous studies</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th align="center">Reference</th>
<th align="center">Year</th>
<th align="center">Termination condition(s)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Mosetti et al. [<xref ref-type="bibr" rid="ref-3">3</xref>]</td>
<td>1994</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Grady et al. [<xref ref-type="bibr" rid="ref-4">4</xref>]</td>
<td>2005</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Huang [<xref ref-type="bibr" rid="ref-27">27</xref>]</td>
<td>2007</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Sisbot et al. [<xref ref-type="bibr" rid="ref-28">28</xref>]</td>
<td>2009</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Huang [<xref ref-type="bibr" rid="ref-29">29</xref>]</td>
<td>2009</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Wan et al. [<xref ref-type="bibr" rid="ref-30">30</xref>]</td>
<td>2009</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Wang et al. [<xref ref-type="bibr" rid="ref-31">31</xref>]</td>
<td>2009</td>
<td>Not specified</td>
</tr>
<tr>
<td>Wang et al. [<xref ref-type="bibr" rid="ref-32">32</xref>]</td>
<td>2009</td>
<td>Not specified</td>
</tr>
<tr>
<td>Herbert-Acero et al. [<xref ref-type="bibr" rid="ref-33">33</xref>]</td>
<td>2009</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Emami and Noghreh [<xref ref-type="bibr" rid="ref-34">34</xref>]</td>
<td>2010</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Kusiak and Song [<xref ref-type="bibr" rid="ref-35">35</xref>]</td>
<td>2010</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Bilbao and alba [<xref ref-type="bibr" rid="ref-36">36</xref>]</td>
<td>2010</td>
<td>Number of solutions evaluations</td>
</tr>
<tr>
<td>Gonzalez et al. [<xref ref-type="bibr" rid="ref-37">37</xref>]</td>
<td>2010</td>
<td>Not specified</td>
</tr>
<tr>
<td>Gonzalez et al. [<xref ref-type="bibr" rid="ref-38">38</xref>]</td>
<td>2011</td>
<td>Not specified</td>
</tr>
<tr>
<td>Gonzalez et al. [<xref ref-type="bibr" rid="ref-39">39</xref>]</td>
<td>2011</td>
<td>Not specified</td>
</tr>
<tr>
<td>Saavedra et al. [<xref ref-type="bibr" rid="ref-40">40</xref>]</td>
<td>2011</td>
<td>No improvement for K generations or max iterations reached</td>
</tr>
<tr>
<td>Kwong et al. [<xref ref-type="bibr" rid="ref-41">41</xref>]</td>
<td>2012</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Yang et al. [<xref ref-type="bibr" rid="ref-42">42</xref>]</td>
<td>2015</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Afanasyeva et al. [<xref ref-type="bibr" rid="ref-11">11</xref>]</td>
<td>2018</td>
<td>Fixed number of iterations, minimum rate of change of cost value</td>
</tr>
<tr>
<td>Kirchner-bossi et al. [<xref ref-type="bibr" rid="ref-43">43</xref>]</td>
<td>2018</td>
<td>Relative improvement in the last 1000 iterations</td>
</tr>
<tr>
<td>Khanali et al. [<xref ref-type="bibr" rid="ref-44">44</xref>]</td>
<td>2018</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Charhouni et al. [<xref ref-type="bibr" rid="ref-45">45</xref>]</td>
<td>2019</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Wang [<xref ref-type="bibr" rid="ref-46">46</xref>]</td>
<td>2019</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Ju and Liu [<xref ref-type="bibr" rid="ref-47">47</xref>]</td>
<td>2019</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Ju et al. [<xref ref-type="bibr" rid="ref-48">48</xref>]</td>
<td>2019</td>
<td>Achievement of convergence efficiency</td>
</tr>
<tr>
<td>Gao et al. [<xref ref-type="bibr" rid="ref-49">49</xref>]</td>
<td>2020</td>
<td>Not specified</td>
</tr>
<tr>
<td>Wen et al. [<xref ref-type="bibr" rid="ref-50">50</xref>]</td>
<td>2020</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Liu et al. [<xref ref-type="bibr" rid="ref-51">51</xref>]</td>
<td>2020</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Aggarwal et al. [<xref ref-type="bibr" rid="ref-13">13</xref>]</td>
<td>2021</td>
<td>Fixed number of iterations or performance criterion is satisfied (criteria not mentioned)</td>
</tr>
<tr>
<td>Al Shereiqi et al. [<xref ref-type="bibr" rid="ref-52">52</xref>]</td>
<td>2021</td>
<td>Fixed number of iterations or<break/>fitness value below threshold<break/>for a number of consecutive steps</td>
</tr>
<tr>
<td>Kirchner-bossi et al. [<xref ref-type="bibr" rid="ref-53">53</xref>]</td>
<td>2021</td>
<td>Not specified</td>
</tr>
<tr>
<td>Asfour et al. [<xref ref-type="bibr" rid="ref-54">54</xref>]</td>
<td>2022</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Guoqing et al. [<xref ref-type="bibr" rid="ref-55">55</xref>]</td>
<td>2022</td>
<td>Not specified</td>
</tr>
<tr>
<td>Mohandes et al. [<xref ref-type="bibr" rid="ref-56">56</xref>]</td>
<td>2023</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Zoric et al. [<xref ref-type="bibr" rid="ref-57">57</xref>]</td>
<td>2023</td>
<td>Fixed number of iterations</td>
</tr>
<tr>
<td>Wang et al. [<xref ref-type="bibr" rid="ref-58">58</xref>]</td>
<td>2024</td>
<td>Fixed number of evaluations</td>
</tr>
<tr>
<td>He et al. [<xref ref-type="bibr" rid="ref-59">59</xref>]</td>
<td>2024</td>
<td>Relative improvement in the last 100 iterations</td>
</tr>
<tr>
<td>Mohandes et al. [<xref ref-type="bibr" rid="ref-60">60</xref>]</td>
<td>2024</td>
<td>St dev, Best-worst, Running mean<break/>Phi, Pop-var, Hitting bound</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In contrast to FNI and KIt, there are methods in which the termination is governed by the convergence of the search process. Some well-known examples are <italic>Standard Deviation</italic> [<xref ref-type="bibr" rid="ref-61">61</xref>], <italic>Best-Worst</italic> [<xref ref-type="bibr" rid="ref-61">61</xref>], <italic>Running Mean</italic> [<xref ref-type="bibr" rid="ref-61">61</xref>], <italic>Phi</italic> [<xref ref-type="bibr" rid="ref-61">61</xref>], <italic>Pop-Var</italic> [<xref ref-type="bibr" rid="ref-26">26</xref>], and <italic>Hitting bound</italic> [<xref ref-type="bibr" rid="ref-61">61</xref>]. However, these methods have their limitations; they also require certain threshold values to be defined by the user. These values are often not known <italic>a priori</italic>, thus making their use as termination criteria less appealing. To address this concern, Mohandes et al. [<xref ref-type="bibr" rid="ref-60">60</xref>] carried out a preliminary study to evaluate several termination criteria for the WFLD problem, but the results required further analysis for concrete outcomes and conclusions.</p>
<p>From the above observation and discussion, several research gaps can be identified. There is a need to assess the impact of termination criteria on the performance and convergence of an NIA. This assessment should not only focus on the quality of solutions generated by an NIA, but should also give due consideration to the computational aspects of a given algorithm. As such, this solicits a comprehensive comparison of several termination criteria while considering various wind scenarios. Furthermore, there exists a need to develop new termination criteria to increase the efficiency of the existing termination criteria. Motivated by the above observations and citing the limitations of the FNI termination criterion, this study strives to further analyze several termination criteria in the context of the WFLD problem. Accordingly, the novel aspects and key contributions of this study are enumerated as follows:
<list list-type="simple">
<list-item><label>1.</label><p>Further insights are presented on the various hybrid termination criteria developed by Mohandes et al. [<xref ref-type="bibr" rid="ref-60">60</xref>] in the context of the genetic algorithm for the WFLD problem. The standard genetic algorithm is employed, as used in several past studies. It is worth mentioning that although the test bench is GA, the criteria are generic and can be used with any NIA in the domain of evolutionary computation or swarm intelligence and with any wake model with minor modifications in the algorithms employed.</p></list-item>
<list-item><label>2.</label><p>A fuzzy logic-based decision measure is proposed that combines the quality of the solution (i.e., <italic>Efficiency</italic>, as defined in <xref ref-type="sec" rid="s4">Section 4</xref>) and the execution time consumed by the genetic algorithm. For this purpose, fuzzy membership functions for efficiency and execution time are developed and aggregated using the fuzzy arithmetic mean operator. Again, the approach can be used with any NIA without any difficulty.</p></list-item>
<list-item><label>3.</label><p>A comparative empirical study is carried out using various commonly employed wind scenarios while utilizing synthetic and real data. These wind scenarios primarily evaluate the impact of different wind speeds and wind directions on the algorithm&#x2019;s performance. The possible correlation between a termination criterion and the given wind scenario is explored. It should be noted that any wind scenario with real or hypothetical data can be used without modification to the problem model or the algorithm design.</p></list-item>
</list></p>
<p>The rest of the paper is organized as follows. The problem background and model are presented in <xref ref-type="sec" rid="s2">Section 2</xref>. This is followed by a discussion of genetic algorithms and termination criteria in <xref ref-type="sec" rid="s3">Section 3</xref>. The proposed termination criteria are also discussed in <xref ref-type="sec" rid="s3">Section 3</xref>. The fuzzy logic-based selection of termination criteria is presented in <xref ref-type="sec" rid="s4">Section 4</xref>. In <xref ref-type="sec" rid="s5">Section 5</xref>, empirical results are discussed. The paper ends with a conclusion and future research directions in <xref ref-type="sec" rid="s6">Section 6</xref>.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Problem Background and Model</title>
<p>Since this study is oriented towards the algorithm design (in the context of the genetic algorithm), and not towards the problem model, the WFLD problem and related concepts are briefly described in this section for the sake of comprehensiveness. First, a primer on the WFLD problem is provided. This is followed by a short discussion on the wake model as well as the optimization function used in the study.</p>
<sec id="s2_1">
<label>2.1</label>
<title>Wind Farm Layout Design Problem</title>
<p>The WFLD problem is concerned with placing the wind turbines in an optimal configuration within a wind farm. This optimal placement is vital for minimizing power loss due to different phenomena such as turbulence, wake decay, and transmission line loss. In addition, an optimal placement of wind turbines significantly affects the costs associated with the installation, operations, and maintenance of these turbines. In broader terms, the wind farm layout design problem can be defined as follows [<xref ref-type="bibr" rid="ref-2">2</xref>]:</p>
<p>&#x201C;Given the location of a wind farm and the number of wind turbines, the aim is to place the turbines in the wind farm such that the design objective(s) are optimized while satisfying the design constraint(s).&#x201D;</p>
<p>A wind farm is categorized as a geographical area that has a strong wind corridor and is therefore capable of producing wind energy through the use of wind turbines. Studies have proposed several wind farm layout structures based on the nature and topography of the terrain. The most prevailing model for a wind farm used in several studies assumes a discrete search space, where the farm is constituted of a planar area in a square form. This square is divided into 100 equally sized cells in a 10 <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula> 10 grid configuration as shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>. These 100 cells lead to <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:msup><mml:mn>2</mml:mn><mml:mrow><mml:mn>100</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> possible solutions [<xref ref-type="bibr" rid="ref-2">2</xref>], thus classifying the WFLD problem as an NP-hard problem. Turbines are placed in the middle of a cell while ensuring that a distance of 3D to 5D (where D is the turbine diameter) is maintained between turbines in all directions.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>A 10 <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula> 10 grid for placing turbines</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64560-fig-1.tif"/>
</fig>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Wake Modeling</title>
<p>Studies have proposed various wake-effect models, such as the Jensen model [<xref ref-type="bibr" rid="ref-62">62</xref>], the Katic model [<xref ref-type="bibr" rid="ref-63">63</xref>], the Frandsen model [<xref ref-type="bibr" rid="ref-64">64</xref>], two-dimensional wake model [<xref ref-type="bibr" rid="ref-65">65</xref>], three-dimensional wake model [<xref ref-type="bibr" rid="ref-66">66</xref>], Gaussian wake model [<xref ref-type="bibr" rid="ref-67">67</xref>], and PARK wake model [<xref ref-type="bibr" rid="ref-68">68</xref>]. In this study, we adopt the wake-effect model used in a recent study by Ju and Liu [<xref ref-type="bibr" rid="ref-47">47</xref>]. This wake effect model is derived from the two most established models which are the Jensen model [<xref ref-type="bibr" rid="ref-62">62</xref>] and the Katic model [<xref ref-type="bibr" rid="ref-63">63</xref>]. The study of Mosetti et al. [<xref ref-type="bibr" rid="ref-3">3</xref>] was the first to use the Jensen model and characterized the phenomenon of wake effect quantitatively. Furthermore, the model in Katic et al. [<xref ref-type="bibr" rid="ref-63">63</xref>] can strike a better balance between positive and negative errors and this wake model is widely used in literature [<xref ref-type="bibr" rid="ref-47">47</xref>].</p>
<p>Assume <italic>N</italic> turbines are to be placed in the wind farm. The prevailing wind has a speed of <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:msub><mml:mi>v</mml:mi><mml:mn>0</mml:mn></mml:msub></mml:math></inline-formula> as shown in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>. The turbines directly facing the wind are under no-wake effect. Therefore, wind speed remains unaffected at these turbines. Turbines that are affected by the wake encounter a wind speed of <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msub><mml:mi>v</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> (<inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>,</mml:mo><mml:mn>2</mml:mn><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mi>N</mml:mi></mml:math></inline-formula>) and <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msub><mml:mi>v</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> &#x003C; <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:msub><mml:mi>v</mml:mi><mml:mn>0</mml:mn></mml:msub></mml:math></inline-formula>. The value of <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:msub><mml:mi>v</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> depends on whether a turbine is affected by a single wake or multiple wakes. If a turbine is affected by the wake of a single turbine, the mathematical representation to calculate this wake is given by the following equation [<xref ref-type="bibr" rid="ref-47">47</xref>]:
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:msub><mml:mi>v</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>v</mml:mi><mml:mn>0</mml:mn></mml:msub><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:mn>2</mml:mn><mml:mn>3</mml:mn></mml:mfrac><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mfrac><mml:msub><mml:mi>R</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:msub><mml:mi>r</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mfrac><mml:mo>)</mml:mo></mml:mrow><mml:mn>2</mml:mn></mml:msup><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:msub><mml:mi>v</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represents wind speed at turbine <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:mi>i</mml:mi></mml:math></inline-formula> under the wake effect of turbine <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mi>j</mml:mi></mml:math></inline-formula>, and <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msub><mml:mi>R</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:math></inline-formula> is the rotor radius of the wind turbine <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:mi>j</mml:mi></mml:math></inline-formula>. Furthermore, <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:msub><mml:mi>r</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:math></inline-formula> is the wake radius and is represented as follows [<xref ref-type="bibr" rid="ref-47">47</xref>]:
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msub><mml:mi>r</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>R</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mi>&#x03B1;</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula></p>

<p>In <xref ref-type="disp-formula" rid="eqn-2">Eq. (2)</xref>, <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula> denotes the entrainment factor while <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the downward distance.</p>
<p>If a turbine <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:mi>i</mml:mi></mml:math></inline-formula> is affected by multiple wakes, the following equation is used to calculate this wake [<xref ref-type="bibr" rid="ref-47">47</xref>].
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:msub><mml:mi>v</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>v</mml:mi><mml:mn>0</mml:mn></mml:msub><mml:mrow><mml:mo>[</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:msqrt><mml:munder><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>j</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msub><mml:mi mathvariant="normal">&#x03A6;</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:mrow></mml:munder><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mfrac><mml:msub><mml:mi>v</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>v</mml:mi><mml:mn>0</mml:mn></mml:msub></mml:mfrac><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:msqrt><mml:mo>]</mml:mo></mml:mrow></mml:math></disp-formula>where <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mi mathvariant="normal">&#x03A6;</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> is a set that includes all indices of turbines that are upwind of turbine <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:mi>i</mml:mi></mml:math></inline-formula>. A detailed discussion on the single and multiple wake models can be found in the study by Ju and Liu [<xref ref-type="bibr" rid="ref-47">47</xref>].</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Optimization Model</title>
<p>As stated earlier, the purpose of the present study is not to evaluate the optimization model or its effectiveness. Therefore, only necessary details are provided herein. For details of the optimization model, the interested reader is referred to the study by Ju and Liu [<xref ref-type="bibr" rid="ref-47">47</xref>].</p>
<p>The number of wind turbines in the wind farm is assumed to be fixed and the direction of the wind is known. With these conditions, the aim is to harness wind energy with maximum efficiency. Therefore, the objective function is defined to maximize the conversion efficiency, represented as follows [<xref ref-type="bibr" rid="ref-47">47</xref>]:
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>z</mml:mi><mml:mi>e</mml:mi><mml:mtext>&#xA0;</mml:mtext><mml:mi>E</mml:mi><mml:mi>f</mml:mi><mml:mi>f</mml:mi><mml:mi>i</mml:mi><mml:mi>c</mml:mi><mml:mi>i</mml:mi><mml:mi>e</mml:mi><mml:mi>n</mml:mi><mml:mi>c</mml:mi><mml:mi>y</mml:mi><mml:mo>=</mml:mo><mml:mfrac><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>u</mml:mi><mml:mi>r</mml:mi><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mfrac></mml:math></disp-formula>where <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>u</mml:mi><mml:mi>r</mml:mi><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is the total power generated by turbines under the wake effect in the current layout and <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:mrow><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mi>o</mml:mi><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:math></inline-formula> is the ideal total power generated by all turbines without the impact of any wake.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Genetic Algorithm and Termination Criteria</title>
<p>This section focuses on the use of termination criteria for GAs. The section first describes GA and its structure. This is followed by a discussion on several termination criteria that have been employed in studies. The section then discusses the termination criteria adopted in the context of the WFLD problem.</p>
<sec id="s3_1">
<label>3.1</label>
<title>Genetic Algorithms</title>
<p>The genetic algorithm is an iterative algorithm based on the theory of evolution. The algorithm was originally proposed by Fraser [<xref ref-type="bibr" rid="ref-69">69</xref>] in 1957 but received popularity through the work by Holland [<xref ref-type="bibr" rid="ref-70">70</xref>]. GAs operate on a set of solutions in parallel. The set of solutions is referred to as a <italic>population</italic>. Each solution, commonly referred to as a <italic>chromosome</italic>, is represented by a string of symbols. A chromosome consists of individual elements known as <italic>genes</italic>. During each iteration, a new set of chromosomes, called <italic>offspring</italic>, is generated.</p>
<p>The effectiveness of search in GA depends on two processes: <italic>exploration</italic> and <italic>exploitation</italic> [<xref ref-type="bibr" rid="ref-71">71</xref>]. Exploration is concerned with traversing the search space with the aim of discovering new regions therein. Exploitation is connected with fine-turning the search, focusing on a directed search in a smaller region of the search space. To make GA carry out the search efficiently, a balance between both processes is crucial during the search. A high level of exploration can lead to inefficient search since the algorithm is prone to missing good solutions, resulting in a higher execution time to reach convergence. In contrast, a high level of exploitation can cause a loss of population diversity and may lead to premature convergence, thus resulting in low-quality solutions [<xref ref-type="bibr" rid="ref-72">72</xref>,<xref ref-type="bibr" rid="ref-73">73</xref>].</p>
<p>The exploration and exploitation in GA are controlled by two distinct mechanisms known as <italic>crossover</italic> and <italic>mutation</italic>. Crossover is responsible for exploitation and is controlled by a parameter called the &#x2018;crossover rate&#x2019;. Similarly, exploration is controlled by another parameter known as the &#x2018;mutation rate&#x2019;. The values of these two parameters are user-defined. For GA to reach convergence to produce an optimal solution, an ample amount of time (and equivalently, the number of iterations) is required so that both exploration and exploitation are fully utilized. However, as stated in <xref ref-type="sec" rid="s1">Section 1</xref>, both over-execution and under-execution of an NIA, vis-<inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:mrow><mml:mover><mml:mi>a</mml:mi><mml:mo>&#x0060;</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula>-vis a GA, are not desired. This leads to the incorporation of different termination criteria in GA as discussed below. The objective is to determine which termination criterion best achieves just the right number of iterations. <xref ref-type="fig" rid="fig-2">Fig. 2</xref> shows the flowchart of GA employed for the WFLD problem.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Flowchart of GA based approach for the WFLD problem</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64560-fig-2.tif"/>
</fig>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Termination Criteria in WFLD Problem</title>
<p>As mentioned in <xref ref-type="sec" rid="s1">Section 1</xref>, several termination criteria have been proposed in the literature, but not utilized in the context of the WFLD problem. Some well-known examples are <italic>Standard Deviation</italic>, <italic>Best-Worst</italic>, <italic>Running Mean</italic>, <italic>Phi</italic>, <italic>Pop-Var</italic>, and <italic>Hitting bound</italic> criteria. These are explained below.</p>
<p>The <bold>Standard deviation</bold> (St dev) based termination criterion [<xref ref-type="bibr" rid="ref-61">61</xref>] measures the standard deviation of the fitness values of all solutions in the current iteration. The execution stops if this standard deviation is equal to or less than a predefined threshold value <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula> <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mo>&#x2265;</mml:mo></mml:math></inline-formula> 0 set by the user.</p>
<p>The <bold>best-worst</bold> termination criterion [<xref ref-type="bibr" rid="ref-61">61</xref>] works on the difference between the best and the worst fitness values in the current iteration. Once this difference is equal to or less than a predefined threshold value <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula><inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:mo>&#x2265;</mml:mo></mml:math></inline-formula> 0, the execution of GA stops. This threshold is predefined by the user.</p>
<p>The <bold>running mean</bold> termination criterion [<xref ref-type="bibr" rid="ref-61">61</xref>] is fulfilled if the difference between the best fitness value of the current iteration and the average of the best fitness values in the last <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>a</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> iterations is equal to or less than a given threshold <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula> <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mo>&#x2265;</mml:mo></mml:math></inline-formula> 0.</p>
<p>The <bold>Phi</bold> termination criterion [<xref ref-type="bibr" rid="ref-61">61</xref>] is satisfied if the quotient of the best fitness value and the mean of all fitness values of the current iteration is equal to or greater than a given threshold 1 &#x2212; <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula>, where 1 <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:mo>&#x226B;</mml:mo></mml:math></inline-formula><inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:mtext>&#x00A0;</mml:mtext><mml:mi>&#x03BB;</mml:mi><mml:mtext>&#x00A0;</mml:mtext></mml:math></inline-formula><inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mo>&#x2265;</mml:mo></mml:math></inline-formula> 0. Once this condition is satisfied, the algorithm stops.</p>
<p>The <bold>Pop-var</bold> termination criterion [<xref ref-type="bibr" rid="ref-26">26</xref>] deals with the variance in the current population. The algorithm terminates once the variance of fitness values of all individuals in the current population becomes equal to or less than a given threshold 1 <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:mo>&#x226B;</mml:mo></mml:math></inline-formula><inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mtext>&#x00A0;</mml:mtext><mml:mi>&#x03BB;</mml:mi><mml:mtext>&#x00A0;</mml:mtext></mml:math></inline-formula><inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mo>&#x2265;</mml:mo></mml:math></inline-formula> 0.</p>
<p>In the <bold>hitting bound</bold> termination criterion [<xref ref-type="bibr" rid="ref-61">61</xref>], the best value of the fitness function is defined by the user. Once this best fitness value by any solution is obtained, the algorithm terminates. In this case, it is expected that the found solution is close enough or equal to the known global optimum.</p>
<p><xref ref-type="table" rid="table-2">Table 2</xref> summarizes the traits used in different termination criteria. Based on the information in the table, the termination criteria can be divided into two groups. The first group consists of criteria that have a single trait. Examples of these criteria are <italic>St dev</italic>, <italic>Pop-var</italic>, and <italic>Hitting bound</italic>. The second group consists of the criteria having two traits. <italic>Best-worst</italic>, <italic>Running mean</italic>, and <italic>Phi</italic> are examples of these termination criteria.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Traits of different termination criteria</title>
</caption>
<table>
<colgroup>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
<col align="center"/>
</colgroup>
<thead>
<tr>
<th align="center">Trait</th>
<th colspan="8">Termination criteria</th>
</tr>
<tr>
<th></th>
<th align="center">FNI</th>
<th align="center">KIt</th>
<th align="center">St dev.</th>
<th align="center">Best-worst</th>
<th align="center">Running mean</th>
<th align="center">Phi</th>
<th align="center">Pop-var</th>
<th align="center">Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>No traits used</td>
<td>&#x2713;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Best fitness in <italic>K</italic> iterations</td>
<td></td>
<td>&#x2713;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Std. deviation in current iteration</td>
<td></td>
<td></td>
<td>&#x2713;</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Best fitness in current iteration</td>
<td></td>
<td></td>
<td></td>
<td>&#x2713;</td>
<td>&#x2713;</td>
<td>&#x2713;</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Worst fitness in the current iteration</td>
<td></td>
<td></td>
<td></td>
<td>&#x2713;</td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Average best fitness in <italic>K</italic> iterations</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>&#x2713;</td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td>Average fitness in current iteration</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>&#x2713;</td>
<td></td>
<td></td>
</tr>
<tr>
<td>Variance in current population</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>&#x2713;</td>
<td></td>
</tr>
<tr>
<td>Best fitness defined by user</td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td>&#x2713;</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>Modified Hybrid Termination Criteria</title>
<p>One obvious and common limitation of most of the aforementioned termination criteria is that the threshold value of <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula> that triggers the termination of GA has to be defined by the user. In most cases, determination of the best threshold value of <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula> is cumbersome. In addition, certain other factors, such as the standard deviation of the population, the difference between the best and worst fitness values, the mean fitness of the solutions in the current iteration, and other simulation-dependent parameters, are not known to the user <italic>a priori</italic>. In the context of the WFLD problem, getting specific information such as the optimal fitness value, the iteration best/worst values, defining the bound, identifying a certain standard deviation or population variance, and other such variables are not possible until the simulation is carried out. This again raises the question of how to terminate the algorithm if problem-specific information is not available or not known. This issue was somewhat addressed by Mohandes et el. [<xref ref-type="bibr" rid="ref-60">60</xref>] by adopting an approach in which the uncertainties about the termination process are at least minimized, if not completely alleviated. They achieved this by utilizing the K-iterations (KIt) termination as identified in <xref ref-type="sec" rid="s1">Section 1</xref>. The KIt criterion ensures termination at a definite instance, provided that the algorithm reaches a stable state where no further improvements are observed in the solution. However, KIt itself cannot be used alone since it is not known in advance as to when the algorithm would achieve convergence. This led to the development of hybrid termination criteria. A brief discussion of these hybrid termination criteria is provided below for the sake of completeness. Further details can be found in Mohandes et al. [<xref ref-type="bibr" rid="ref-60">60</xref>].</p>
<p>The modified criteria evolve from the hybridization between the basic criterion and KIt. With regard to the <italic>hybrid standard deviation</italic> criterion, the standard deviation of the fitness values of all solutions in the current iteration is calculated. These fitness values are recorded for each iteration. If the standard deviation does not change (remains constant) for <italic>K</italic> consecutive iterations, then it signifies that the algorithm has reached convergence and no further diversity is possible in the population. Eventually, the execution of the algorithm stops. In the same sense, the <italic>hybrid best-worst</italic> approach monitors the difference between the best and worst fitness values in the current iteration. The algorithm terminates if the difference between these two extremes does not change for <italic>K</italic> consecutive iterations. The <italic>hybrid running-mean</italic> criterion is satisfied if the difference between the best fitness value of the current iteration and the average of the best fitness values in the last <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:msub><mml:mi>t</mml:mi><mml:mrow><mml:mi>l</mml:mi><mml:mi>a</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> iterations does not change for <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:mi>k</mml:mi></mml:math></inline-formula> consecutive iterations. In the <italic>hybrid Phi</italic> criterion, termination is reached if the quotient of the best fitness value and the mean of all fitness values of the current iteration remains the same for <italic>K</italic> consecutive iterations. Likewise, in the <italic>hybrid Pop-var</italic> approach, the algorithm terminates when the variance of the fitness of solutions in the current population does not change for <italic>K</italic> consecutive iterations. Finally, in the <italic>hybrid hitting bound</italic> criterion, the user defines the threshold of the best fitness value. Once this threshold is achieved by any solution and remains constant for <italic>K</italic> consecutive iterations, the algorithm terminates.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Fuzzy Logic Based Selection of Best Termination Criterion</title>
<p><xref ref-type="disp-formula" rid="eqn-4">Eq. (4)</xref> represents the efficiency of the wind farm. This efficiency denotes the fitness function in GA. If only efficiency is used as the measure for deciding the best termination criterion, there are no confusion or uncertainties. The decision could simply be taken by selecting the termination approach that leads to the best (maximum) efficiency. The problem arises when the execution time is also taken into account. Consider, for example, the following scenario in which the efficiency and execution time of two hypothetical termination criteria are given. From the data in <xref ref-type="table" rid="table-3">Table 3</xref>, we see that termination criterion A has a higher efficiency (as desired) than criterion B, but also has inferior performance in terms of execution time, showing 150 s (which is 20 s more than that of criterion B), indicating an undesirable situation. So, criterion A is better in terms of efficiency, and criterion B is better in execution time. The question is, which one of these criteria is overall better than the other while considering both efficiency and execution time equally important? With the human-based approach, such a decision would be difficult as the approach creates uncertainties in the decision. This motivates us to utilize multi-attribute decision-making (MADM) methods (also referred to as multi-criteria decision-making or MCDM) which stem from the domain of artificial intelligence.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>A hypothetical scenario showing efficiency and execution time of two termination criteria</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Termination criterion</th>
<th>Efficiency</th>
<th>Execution time</th>
</tr>
</thead>
<tbody>
<tr>
<td>A</td>
<td>0.8</td>
<td>150 s</td>
</tr>
<tr>
<td>B</td>
<td>0.75</td>
<td>130 s</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The MADM methods are employed in decision problems involving multiple attributes in the decision-making process. These attributes are both mutually <italic>conflicting</italic> and <italic>incommensurable</italic> [<xref ref-type="bibr" rid="ref-1">1</xref>]. Conflict represents a scenario in which improvement in the quality of a decision in one criterion negatively affects the decision on at least one other decision criterion. Incommensurability refers to attributes having different units and magnitudes. In the example in <xref ref-type="table" rid="table-3">Table 3</xref>, criterion A achieved better efficiency, but at the cost of more execution time which shows a conflicting situation. Furthermore, efficiency has no units and is scaled between 0 and 1, whereas execution time is measured in seconds and could have magnitudes in multiple digits.</p>

<p>In the literature, several MADM methods have been proposed. Some well-known methods include weighted sum, lexicographic ordering, <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:mo>&#x03F5;</mml:mo></mml:math></inline-formula>-constraint method, goal programming, goal attainment, and fuzzy logic. In comparison with fuzzy logic, other methods have several limitations. For example, in the weighted sum method, a small change in weights may result in big changes in the objective vectors. In lexicographic ordering, the main disadvantage is that the method tends to favor certain objectives when many are present, as the decision-maker may have difficulty in defining the order of importance of objectives. The most prominent disadvantage of <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:mo>&#x03F5;</mml:mo></mml:math></inline-formula>-constraint method is that the method is time-consuming. As for goal programming, the main disadvantage is that if the targets are not defined properly, the decision may be misleading. A similar concern goes with the goal attainment method. A detailed discussion on the limitations of the above methods can be found in Miettinen [<xref ref-type="bibr" rid="ref-74">74</xref>].</p>
<p>In contrast to the above methods, the MADM aspect associated with the underlying WFLD problem can be effectively addressed by utilizing the fuzzy logic-based approach. A strong reason to consider the fuzzy logic approach for the WFLD problem is that fuzzy logic conveniently deals with uncertainties in data associated with the underlying problem [<xref ref-type="bibr" rid="ref-1">1</xref>]. Furthermore, the problem-based domain information is easily represented through the concepts of natural language processing (NLP), since NLP can effectively handle human knowledge acquired through experience and understanding of problems [<xref ref-type="bibr" rid="ref-1">1</xref>].</p>
<p>The fuzzy logic-based MADM approach requires both attributes to be aggregated to form a decision function. This decision function, which is in the form of a mathematical equation, represents a decision rule. For the WFLD problem, an appropriate decision rule could be as follows:</p>
<p><italic>Rule 1: IF Efficiency is increased AND Execution time is decreased THEN the Termination Criterion is effective</italic>.</p>
<p>In the above rule, <italic>Efficiency</italic>, <italic>Execution time</italic>, and <italic>Termination Criterion</italic> are the linguistic variables, each of which defines a fuzzy subset of solutions. To implement the above rule using fuzzy logic, membership functions for the linguistic variables have to be defined. A membership function returns a value in the interval [0, 1] which describes the degree of satisfaction with the decision criterion under consideration [<xref ref-type="bibr" rid="ref-1">1</xref>]. Using the arithmetic mean operator [<xref ref-type="bibr" rid="ref-75">75</xref>], Rule 1 translates to the following equation:
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>E</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>+</mml:mo><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mn>2</mml:mn></mml:mfrac></mml:math></disp-formula></p>
<p>In <xref ref-type="disp-formula" rid="eqn-5">Eq. (5)</xref>, <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> defines the membership function for the Termination Criterion. Similarly, <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>E</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> and <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> represent the membership functions for Efficiency and Execution time, respectively. In order to calculate <inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, both <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>E</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> and <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> need to be determined first, as explained below.</p>
<sec id="s4_1">
<label>4.1</label>
<title>Membership Function for Efficiency</title>
<p>The membership function for Efficiency, <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>E</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mrow><mml:mtext mathvariant="italic">x</mml:mtext></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, can be defined as follows. The two extreme values of Efficiency <italic>&#x2018;<inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>&#x2019;</italic> and <italic>&#x2018;<inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>&#x2019;</italic> define the maximum (ideal) and minimum values, respectively. <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is taken as 1 while <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is set at 0. The membership function for Efficiency is mathematically represented as follows.
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mrow><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>E</mml:mi></mml:msub></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mrow><mml:mtext mathvariant="italic">x</mml:mtext></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn></mml:mtd><mml:mtd><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mtext>if&#xA0;</mml:mtext></mml:mstyle><mml:mrow><mml:mi>E</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2265;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mi>E</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mtd><mml:mtd><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mtext>if&#xA0;</mml:mtext></mml:mstyle><mml:mrow><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2264;</mml:mo><mml:mi>E</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x003C;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mtext>if&#xA0;</mml:mtext></mml:mstyle><mml:mrow><mml:mi>E</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x003C;</mml:mo><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula>where the term <italic>E</italic>(<inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:mi>x</mml:mi></mml:math></inline-formula>) represents the Efficiency of the current solution.</p>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Membership Function for Execution Time</title>
<p>The membership function for Execution time, <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>, can be defined as follows. The values <italic>&#x2018;<inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>&#x2019;</italic> and <italic>&#x2018;<inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula>&#x2019;</italic> define the maximum and minimum (ideal) execution time, respectively. The minimum value, <italic><inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></italic> is set at 0, indicating that the execution takes no time at all, which is an ideal (but hypothetical) scenario. The maximum time, <italic><inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></italic> is taken to be the highest execution time taken by any of the termination criteria. Then, the membership value for Execution time is determined as follows.</p>
<p><disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:mrow><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>T</mml:mi></mml:msub></mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mrow><mml:mtext mathvariant="italic">x</mml:mtext></mml:mrow></mml:mrow><mml:mo stretchy="false">)</mml:mo><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn></mml:mtd><mml:mtd><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mtext>if&#xA0;</mml:mtext></mml:mstyle><mml:mrow><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mrow><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mrow></mml:mtd><mml:mtd><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mtext>if&#xA0;</mml:mtext></mml:mstyle><mml:mrow><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>&#x003C;</mml:mo><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&#x2264;</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn></mml:mtd><mml:mtd><mml:mstyle displaystyle="false" scriptlevel="0"><mml:mtext>if&#xA0;</mml:mtext></mml:mstyle><mml:mrow><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo><mml:mo>&gt;</mml:mo><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula>where the term <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> represents the execution time of the current solution.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Results and Discussion</title>
<p>In this section, the empirical results are presented and discussed to evaluate the performance of the various termination criteria proposed herein. In the majority of past studies on the WFLD problem, three standard scenarios were assumed. These included (a) wind with a single speed coming from a single direction, (b) wind with multiple speeds coming from a single direction, and (c) wind with multiple speeds coming from multiple directions. As such, simulations were carried out considering the above three scenarios, using real and hypothetical data. The real data was collected from a potential site of Turaif (located at a height of 827 meters above sea level) in Northern Saudi Arabia. A wind speed of 6.94 m/s at a height of 130 meters was used in the experimentation for Turaif [<xref ref-type="bibr" rid="ref-60">60</xref>]. The following wind scenarios were assumed:
<list list-type="bullet">
<list-item>
<p>Case 1: Wind speed of 6.94 m/s coming from a single direction.</p></list-item>
<list-item>
<p>Case 2: Wind speed of 6.94 m/s coming from four different directions.</p></list-item>
<list-item>
<p>Case 3: Wind speeds of 6.94, 10, and 12 m/s coming from 12 different directions.</p></list-item>
</list></p>
<p>Furthermore, after carrying out parameter sensitivity analysis, the parameters of the genetic algorithm were set as follows: population size &#x003D; 30, crossover rate &#x003D; 0.6, and mutation rate &#x003D; 0.1. Other parameters used in the simulations included grid size &#x003D; 10 <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:mo>&#x00D7;</mml:mo></mml:math></inline-formula> 10, number of turbines &#x003D; 20, and <italic>K</italic> &#x003D; 10.</p>
<p>As per the established approach suggested in the literature [<xref ref-type="bibr" rid="ref-2">2</xref>,<xref ref-type="bibr" rid="ref-76">76</xref>], all experiments were carried out with 30 independent runs, and results were reported as the average of best efficiency in 30 runs as well as standard deviations of these 30 runs, with the corresponding executions times. Furthermore, statistical validation was done using the Wilcoxon ranked-sum test at a 95% level of confidence. Note that GA (and likewise, any other algorithm from the domain of evolutionary algorithm and swarm intelligence) is a non-deterministic algorithm, and the result of a single run cannot lead to the best efficiency. As such, the layout generated by a single run cannot be used to reach a conclusion.</p>
<p>All experiments were done using the same initial solution (seed population) for GA. Furthermore, uniform simulation conditions (with regard to background processes and software platform) and hardware setup were used. Simulations were carried out using the Python programming language, where the open-source Python package developed by Ju and Liu [<xref ref-type="bibr" rid="ref-47">47</xref>] was used as the base code.</p>
<sec id="s5_1">
<label>5.1</label>
<title>Effect of Termination Criteria on Efficiency</title>
<p><xref ref-type="table" rid="table-4">Tables 4</xref>&#x2013;<xref ref-type="table" rid="table-6">6</xref> show the results obtained for Efficiency for the six termination criteria for Case 1, Case 2, and Case 3, respectively. With regard to Case 1, the results presented in <xref ref-type="table" rid="table-4">Table 4</xref> are adopted from Mohandes et al. [<xref ref-type="bibr" rid="ref-60">60</xref>] and are presented here for a comprehensive analysis. It is observed from <xref ref-type="table" rid="table-4">Table 4</xref> that the <italic>running mean</italic> termination criterion produced the best results. More specifically, the maximum values (0.821), minimum values (0.792) and average values (0.803) are all on the high sides compared to the results of the other termination criteria. However, the standard deviation (with a value of 0.0083) is relatively higher than many other termination criteria. On the other hand, if we look at the results produced by the <italic>St dev</italic> criterion, the results indicate a stable behavior since the standard deviation of the 30 runs is the lowest among all criteria, with a value of 0.0055. However, the maximum, minimum, and average values obtained by the <italic>St dev</italic> criterion are not impressive, as they fall on the lower side compared to the results for several other termination criteria. In short, the <italic>St dev</italic> criterion achieved improvements in the range of 0.75% to 5.60%.</p>
<table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Results of fitness (efficiency) values for each termination criterion for Case 1 (adopted from [<xref ref-type="bibr" rid="ref-60">60</xref>])</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>0.808</td>
<td>0.815</td>
<td>0.821</td>
<td>0.816</td>
<td>0.769</td>
<td>0.818</td>
</tr>
<tr>
<td>Min</td>
<td>0.785</td>
<td>0.782</td>
<td>0.792</td>
<td>0.766</td>
<td>0.742</td>
<td>0.785</td>
</tr>
<tr>
<td>Avg</td>
<td>0.797</td>
<td>0.794</td>
<td>0.803</td>
<td>0.785</td>
<td>0.758</td>
<td>0.797</td>
</tr>
<tr>
<td>SD</td>
<td>0.0055</td>
<td>0.0073</td>
<td>0.0083</td>
<td>0.0096</td>
<td>0.0071</td>
<td>0.0073</td>
</tr>
<tr>
<td>% improvement</td>
<td>0.75</td>
<td>1.12</td>
<td>&#x2013;</td>
<td>2.24</td>
<td>5.60</td>
<td>0.75</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Results of fitness (efficiency) values for each termination criterion for Case 2</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>0.734</td>
<td>0.738</td>
<td>0.727</td>
<td>0.736</td>
<td>0.729</td>
<td>0.734</td>
</tr>
<tr>
<td>Min</td>
<td>0.714</td>
<td>0.702</td>
<td>0.710</td>
<td>0.713</td>
<td>0.710</td>
<td>0.708</td>
</tr>
<tr>
<td>Avg</td>
<td>0.721</td>
<td>0.715</td>
<td>0.718</td>
<td>0.730</td>
<td>0.718</td>
<td>0.716</td>
</tr>
<tr>
<td>SD</td>
<td>0.0051</td>
<td>0.0069</td>
<td>0.0044</td>
<td>0.0040</td>
<td>0.0043</td>
<td>0.0056</td>
</tr>
<tr>
<td>% improvement</td>
<td>1.23</td>
<td>2.05</td>
<td>1.64</td>
<td>&#x2013;</td>
<td>1.64</td>
<td>1.92</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>Results of fitness (efficiency) values for each termination criterion for Case 3</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>0.794</td>
<td>0.786</td>
<td>0.790</td>
<td>0.819</td>
<td>0.785</td>
<td>0.779</td>
</tr>
<tr>
<td>Min</td>
<td>0.776</td>
<td>0.766</td>
<td>0.774</td>
<td>0.801</td>
<td>0.771</td>
<td>0.763</td>
</tr>
<tr>
<td>Avg</td>
<td>0.782</td>
<td>0.775</td>
<td>0.782</td>
<td>0.809</td>
<td>0.777</td>
<td>0.771</td>
</tr>
<tr>
<td>SD</td>
<td>0.0035</td>
<td>0.0048</td>
<td>0.0045</td>
<td>0.0052</td>
<td>0.0034</td>
<td>0.0044</td>
</tr>
<tr>
<td>% improvement</td>
<td>3.34</td>
<td>4.20</td>
<td>3.34</td>
<td>&#x2013;</td>
<td>3.96</td>
<td>4.70</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>For Case 2, the results in <xref ref-type="table" rid="table-5">Table 5</xref> indicate that the <italic>Phi</italic> termination criterion was the best, with the highest average efficiency of 0.730. Furthermore, the standard deviation associated with the results of the criterion <italic>Phi</italic> is also the lowest among all other criteria, with a value of 0.0040. This performance translates to improvements in the range of 1.23% to 2.05% achieved by <italic>Phi</italic>.</p>

<p>Finally, the termination criterion <italic>Phi</italic> is also the best for Case 3, as revealed by the results in <xref ref-type="table" rid="table-6">Table 6</xref>. The average conversion efficiency for <italic>Phi</italic> is 0.809, with a standard deviation of 0.0052. Although this standard deviation is the highest among all criteria, it should be noted that even the minimum of <italic>Phi</italic> is greater than the maximum values obtained by all other criteria. Therefore, <italic>Phi</italic> is undoubtedly the best for Case 3, showing an improvement in the range of 3.34% to 4.70%.</p>

<p><xref ref-type="fig" rid="fig-3">Fig. 3</xref> provides more details about the different termination criteria. The figure illustrates the distribution of the best solution for 30 runs with regard to each criterion for the three test cases. These solutions are distributed in five ranges of efficiency, which are 0.7 to 0.729, 0.73 to 0.759, 0.76 to 0.789, 0.79 to 0.819, and 0.82 to 0.849. These five efficiency ranges were carefully chosen to represent the sensitivity of the efficiency change for each termination criterion. As observed in <xref ref-type="fig" rid="fig-3">Fig. 3a</xref>, <italic>Running mean</italic> has solutions in the topmost efficiency range (i.e., 0.82 to 0.849). That is, out of the 30 solutions generated during the 30 runs, <italic>Running mean</italic> had 2 solutions in the top efficiency range, while 28 solutions were in the second topmost range (0.79 to 0.819). Furthermore, the closest contenders to <italic>Running mean</italic> are the <italic>St dev</italic> and <italic>Hitting bound</italic> criteria which produced 29 solutions each in the second topmost range, with one solution each in the middle-efficiency range (0.76 to 0.789). In contrast, <italic>Pop-var</italic> showed the worst performance since the criterion resulted in no solution in the topmost efficiency range, with solutions distributed in the second topmost and the middle-efficiency range. However, in Case 2, all criteria (with the exception of <italic>Phi</italic>) produced huge number of solutions in the lowest range of 0.7 to 0.729, as can be seen in <xref ref-type="fig" rid="fig-3">Fig. 3b</xref>. In contrast, <italic>Phi</italic> is the only criterion that had the majority of results in a higher efficiency range of 0.73 to 0.759. Finally, for Case 3, <xref ref-type="fig" rid="fig-3">Fig. 3c</xref> clearly illustrates that only the <italic>Phi</italic> was able to generate all results in the second topmost efficiency range (0.79 to 0.819), while all other criteria produced results in the lower range of 0.76 to 0.789.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Distribution of efficiency in different ranges vs. termination criteria for (a) Case 1 (b) Case 2 and (c) Case 3</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64560-fig-3.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-4">Fig. 4</xref> shows the progression of efficiency vs. iteration for the three cases. The plots show the progression of the best run (out of the 30 runs) for each termination criterion. For Case 1 (<xref ref-type="fig" rid="fig-4">Fig. 4a</xref>), it is observed that <italic>Running mean</italic> was able to achieve the best efficiency as the criterion allowed the algorithm to execute for a sufficient amount of time. In contrast, <italic>Pop-var</italic> caused GA to terminate in the very early stage of execution which did not allow the algorithm to properly search the solution space. With regard to Case 2, <italic>Best-worst</italic> achieved convergence in the very early stage, whereas <italic>Phi</italic> was also able to reach almost the same efficiency level, but at a later stage, as shown in <xref ref-type="fig" rid="fig-4">Fig. 4b</xref>. In contrast, <italic>Pop-var</italic> made the algorithm execute for a very long duration, yet did not achieve the high efficiency level as that of other termination criteria. For Case 3, the best performance of <italic>Phi</italic> is visible in <xref ref-type="fig" rid="fig-4">Fig. 4c</xref> where the criterion achieved the highest efficiency. This high level of efficiency was achievable since GA had ample time to converge.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Progression of efficiency vs. iterations for (a) Case 1 (b) Case 2 and (c) Case 3</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64560-fig-4.tif"/>
</fig>
<p>Based on the above observations, it can be fairly claimed that for Case 1, the <italic>Running mean</italic> termination criterion was the best among all since it has generated most of the results with the highest efficiency while maintaining a stable behavior as suggested by its small standard deviation associated with the results. Although <italic>St dev</italic> criterion had the lowest standard deviation, it was not able to produce enough results in the high-efficiency ranges. In contrast, the worst performer was <italic>Pop-var</italic>; despite a relatively low standard deviation, the solutions produced by the criterion in terms of efficiency were of the worst quality. For Cases 2 and 3, the <italic>Phi</italic> criterion was the best. For Case 2, the <italic>Best-worst</italic> approach was the worst, although comparable to <italic>Hitting bound</italic>, and for Case 3, <italic>Hitting bound</italic> was the worst.</p>
<p>In order to further strengthen the claims about the best performers, statistical validation was also carried out. The <inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>p</mml:mi></mml:math></inline-formula>-values are shown for all three cases in <xref ref-type="table" rid="table-7">Table 7</xref>. For Case 1, <italic>Running mean</italic> reflected the best output as reported in <xref ref-type="table" rid="table-4">Table 4</xref>, and therefore this termination criterion was used as the benchmark. The <inline-formula id="ieqn-64"><mml:math id="mml-ieqn-64"><mml:mi>p</mml:mi></mml:math></inline-formula>-values in <xref ref-type="table" rid="table-7">Table 7</xref> indicate that the fitness values (i.e., efficiency) of <italic>Running mean</italic> were statistically significant as compared to the other termination criteria since all <inline-formula id="ieqn-65"><mml:math id="mml-ieqn-65"><mml:mi>p</mml:mi></mml:math></inline-formula>-values were less than 0.05. Similarly, for Cases 2 and 3, the <italic>Phi</italic> termination criterion was the best (statistically significant) among all other termination criteria. These outcomes prove the hypothesis that the termination condition has an impact on the quality of solutions produced in terms of efficiency.</p>
<table-wrap id="table-7">
<label>Table 7</label>
<caption>
<title>Results of statistical validation (<inline-formula id="ieqn-66"><mml:math id="mml-ieqn-66"><mml:mi>p</mml:mi></mml:math></inline-formula>-values) for efficiency</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Case</th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Case 1</td>
<td>0.0006</td>
<td>0.000032</td>
<td>&#x2013;</td>
<td>0.0043</td>
<td>0.000008</td>
<td>0.000002</td>
</tr>
<tr>
<td>Case 2</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000003</td>
<td>&#x2013;</td>
<td>0.000004</td>
<td>0.000002</td>
</tr>
<tr>
<td>Case 3</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000002</td>
<td>&#x2013;</td>
<td>0.000002</td>
<td>0.000002</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_2">
<label>5.2</label>
<title>Effect of Termination Criteria on Execution Time</title>
<p>With regard to the impact of the termination criteria on the execution time, results of the 30 runs are summarized in <xref ref-type="table" rid="table-8">Tables 8</xref>&#x2013;<xref ref-type="table" rid="table-10">10</xref> for Case 1, Case 2, and Case 3, respectively. For Case 1 (adopted from Mohandes et al. [<xref ref-type="bibr" rid="ref-60">60</xref>]), it is visible from <xref ref-type="table" rid="table-8">Table 8</xref> that termination criterion <italic>Phi</italic> resulted in the lowest execution time with an average of 164.2 s with a standard deviation of just 5.1, which is also the lowest among all criteria. Although <italic>Pop-var</italic> had a minimum execution time of 90.9 s, the criterion cannot be declared as the best since the average execution time (187.7 s) and standard deviation of 56.4 s are much higher than that of <italic>Phi</italic>. Furthermore, the worst performer was the <italic>Running mean</italic> as the average execution time was the highest (814.5 s) with the highest standard deviation of 210 s. In terms of percentage improvements, <italic>Phi</italic> achieved values in the range of 14.31% to 396.04%.</p>
<table-wrap id="table-8">
<label>Table 8</label>
<caption>
<title>Results of execution time (in seconds) for each termination criterion for Case 1 (adopted from [<xref ref-type="bibr" rid="ref-60">60</xref>])</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St Dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>566.5</td>
<td>655.6</td>
<td>1166.6</td>
<td>175.4</td>
<td>286.3</td>
<td>589.9</td>
</tr>
<tr>
<td>Min</td>
<td>314.3</td>
<td>183.3</td>
<td>288.5</td>
<td>151.7</td>
<td>90.9</td>
<td>87.3</td>
</tr>
<tr>
<td>Avg</td>
<td>452.3</td>
<td>361.3</td>
<td>814.5</td>
<td>164.2</td>
<td>187.7</td>
<td>273.8</td>
</tr>
<tr>
<td>SD</td>
<td>62.2</td>
<td>117.1</td>
<td>210.0</td>
<td>5.1</td>
<td>56.4</td>
<td>138.0</td>
</tr>
<tr>
<td>% improvement</td>
<td>175.46</td>
<td>120.04</td>
<td>396.04</td>
<td>&#x2013;</td>
<td>14.31</td>
<td>66.75</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-9">
<label>Table 9</label>
<caption>
<title>Results of execution time (in seconds) for each termination criterion for Case 2</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>1167.0</td>
<td>275.7</td>
<td>1039.9</td>
<td>700.4</td>
<td>3670.5</td>
<td>445.6</td>
</tr>
<tr>
<td>Min</td>
<td>197.7</td>
<td>171.5</td>
<td>240.8</td>
<td>512.0</td>
<td>173.9</td>
<td>33.4</td>
</tr>
<tr>
<td>Avg</td>
<td>658.1</td>
<td>228.5</td>
<td>596.6</td>
<td>606.2</td>
<td>803.9</td>
<td>260.1</td>
</tr>
<tr>
<td>SD</td>
<td>269.4</td>
<td>25.5</td>
<td>238.6</td>
<td>52.7</td>
<td>631.7</td>
<td>116.4</td>
</tr>
<tr>
<td>% improvement</td>
<td>188.01</td>
<td>&#x2013;</td>
<td>161.09</td>
<td>165.30</td>
<td>251.82</td>
<td>13.83</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-10">
<label>Table 10</label>
<caption>
<title>Results of execution time (in seconds) for each termination criterion for Case 3</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>6674.2</td>
<td>1504.9</td>
<td>11894.7</td>
<td>5613.2</td>
<td>3519.3</td>
<td>1251.5</td>
</tr>
<tr>
<td>Min</td>
<td>79.9</td>
<td>89.4</td>
<td>1219.0</td>
<td>4442.9</td>
<td>81.4</td>
<td>91.3</td>
</tr>
<tr>
<td>Avg</td>
<td>4904.8</td>
<td>916.6</td>
<td>4420.9</td>
<td>5175.4</td>
<td>2274.1</td>
<td>669.0</td>
</tr>
<tr>
<td>SD</td>
<td>1568.6</td>
<td>312.3</td>
<td>2103.0</td>
<td>277.5</td>
<td>927.9</td>
<td>232.9</td>
</tr>
<tr>
<td>% improvement</td>
<td>633.15</td>
<td>37.01</td>
<td>560.82</td>
<td>673.60</td>
<td>239.93</td>
<td>&#x2013;</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>For Case 2, the <italic>Best-worst</italic> criterion resulted in the minimum execution time with an average of 228.5 s. The criterion also showed a standard deviation of 25.5 s, which was the lowest. The worst performer for Case 2 was <italic>Pop-var</italic> with an average execution time of 803.9 s and a standard deviation of 631.7 s. The percentage improvement achieved by <italic>Best-worst</italic> falls in the range of 13.83% to 251.82%.</p>
<p>Finally, for Case 3, the criterion <italic>Hitting bound</italic> displayed the lowest average execution time of 669.0 s, while <italic>Phi</italic> was the worst with the highest average execution time of 5175.4 s. The standard deviation of <italic>Hitting bound</italic> was the lowest with 232.9 s, while that of <italic>Phi</italic> was 277.5 s. One interesting observation is for the <italic>Running mean</italic> criterion which has the highest run time of 11894.7 s, which is the highest among all criteria, as well as the highest standard deviation of 2103 s, indicating an unstable behavior of the criterion. This translates into improvements between 37. 01% and 673. 60% achieved by <italic>Hitting bound</italic> in comparison with other criteria.</p>
<p>A further analysis of the results in <xref ref-type="fig" rid="fig-5">Fig. 5</xref> gives more insight into the behavior of the criteria. For Case 1, <xref ref-type="fig" rid="fig-5">Fig. 5a</xref> indicates that all solutions for <italic>Phi</italic> were spread in the low execution time spectrum (0 to 249 s), while the worst performer was <italic>Running mean</italic> with most of the solutions in the high execution time range (with 6 solutions in the range of 1000 to 1249 s and 13 solutions in the range of 750 to 999 s). For Case 2, as shown in <xref ref-type="fig" rid="fig-5">Fig. 5b</xref>, only <italic>Best-worst</italic> had all its solutions in the range of 0&#x2013;299 s, while <italic>Pop-var</italic> had some solutions above 1200 s. However, most of the solutions of <italic>Pop-var</italic> were spread among different ranges. For Case 3, <italic>Hitting-bound</italic> was the best since it had almost all its solutions in the range of 0 to 999 s, while all other criteria had solutions in higher ranges, particularly in the &#x201C;Above 4000&#x201D; s, as shown in <xref ref-type="fig" rid="fig-5">Fig. 5c</xref>.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Execution time (in seconds) vs. termination criteria for (a) Case 1 (b) Case 2 and (c) Case 3</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64560-fig-5a.tif"/>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_64560-fig-5b.tif"/>
</fig>
<p>To obtain a more accurate picture, the statistical analysis in <xref ref-type="table" rid="table-11">Table 11</xref> reveals that for Case 1, the <italic>Phi</italic> criterion was the best among other criteria since the <inline-formula id="ieqn-67"><mml:math id="mml-ieqn-67"><mml:mi>p</mml:mi></mml:math></inline-formula>-values of the criterion were always less than 0.05. This indicated that the difference in the runtime by <italic>Phi</italic> and other criteria was statistically significant. In Case 2, the difference in execution time between the <italic>Best-worst</italic> criterion and other criteria was statistically significant, indicating that the criterion was the best. An exception here was the <italic>Hitting-bound</italic> criterion where the <inline-formula id="ieqn-68"><mml:math id="mml-ieqn-68"><mml:mi>p</mml:mi></mml:math></inline-formula>-value was 0.158865, indicating that both <italic>Best-worst</italic> and <italic>Hitting-bound</italic> were equally good, in statistical terms. Finally, for Case 3, the <italic>Hitting-bound</italic> criterion performed the best in terms of statistical significance, since all <inline-formula id="ieqn-69"><mml:math id="mml-ieqn-69"><mml:mi>p</mml:mi></mml:math></inline-formula>-values were less than 0.05. Statistical testing indicates that termination criteria have an impact on the execution time of the algorithm.</p>
<table-wrap id="table-11">
<label>Table 11</label>
<caption>
<title>Results of statistical validation (<inline-formula id="ieqn-70"><mml:math id="mml-ieqn-70"><mml:mi>p</mml:mi></mml:math></inline-formula>-values) for execution time</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Case</th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Case 1</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000002</td>
<td>&#x2013;</td>
<td>0.049507</td>
<td>0.00042</td>
</tr>
<tr>
<td>Case 2</td>
<td>0.000002</td>
<td>&#x2013;</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.158865</td>
</tr>
<tr>
<td>Case 3</td>
<td>0.000002</td>
<td>0.001288</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000004</td>
<td>&#x2013;</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_3">
<label>5.3</label>
<title>Fuzzy Logic Based Decision for the Best Criterion</title>
<p>The results presented in <xref ref-type="sec" rid="s5_1">Sections 5.1</xref> and <xref ref-type="sec" rid="s5_2">5.2</xref> suggest that in terms of conversion efficiency, <italic>Running mean</italic> was the best in Case 1, while <italic>Phi</italic> was the best in Cases 2 and 3. On the other hand, in terms of execution time, <italic>Phi</italic> was the best for Case 1, <italic>Best-worst</italic> for Case 2, and <italic>Hitting-bound</italic> for Case 3. This points towards a conflicting situation, whereby the decision about the best termination criterion with regard to both conversion efficiency and execution time couldn&#x2019;t be clearly identified. As such, fuzzy logic-based approach proposed in <xref ref-type="sec" rid="s4">Section 4</xref> was employed to reach a concrete decision.</p>
<p><xref ref-type="table" rid="table-12">Tables 12</xref>&#x2013;<xref ref-type="table" rid="table-14">14</xref> present the results of aggregation of Efficiency and Execution time using the fuzzy arithmetic mean operator, represented by <inline-formula id="ieqn-71"><mml:math id="mml-ieqn-71"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula> in <xref ref-type="disp-formula" rid="eqn-5">Eq. (5)</xref>, for Cases 1, 2, and 3, respectively. The results in <xref ref-type="table" rid="table-12">Table 12</xref> indicate that for Case 1, <italic>Phi</italic> turned out to be the overall best termination criterion since it had the fuzzy value (average) of 0.82 which was the highest among the fuzzy values of other criteria. This translates to an improvement in the range of 2.44% to 32.93% by <italic>Phi</italic> compared to other termination criteria. For Case 2, <xref ref-type="table" rid="table-13">Table 13</xref> signifies that <italic>Best-worst</italic> was the best option with a fuzzy value of 0.83. Although <italic>Hitting-bound</italic> is also comparable with a fuzzy value of 0.82, the criterion had a high standard deviation of 0.015 compared to 0.005 of <italic>Best-worst</italic>. The improvement achieved by <italic>Best-worst</italic> was in the range of 1.2% to 9.64%. As for Case 3, the best performer was <italic>Hitting-bound</italic> with a fuzzy value of 0.86 and a standard deviation of 0.010 as shown in <xref ref-type="table" rid="table-14">Table 14</xref>. For Case 3, <italic>Best-worst</italic> was also the closest contender with a fuzzy value of 0.85 and a standard deviation of 0.012. Overall, <italic>Hitting-bound</italic> was the best performer for Case 3, reflecting an improvement between 1.16% to 20.93% compared to the other termination criteria.</p>
<table-wrap id="table-12">
<label>Table 12</label>
<caption>
<title>Results of fuzzy logic based decision (given by <inline-formula id="ieqn-72"><mml:math id="mml-ieqn-72"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>) for each termination criterion for Case 1</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>0.76</td>
<td>0.82</td>
<td>0.78</td>
<td>0.84</td>
<td>0.83</td>
<td>0.86</td>
</tr>
<tr>
<td>Min</td>
<td>0.66</td>
<td>0.62</td>
<td>0.41</td>
<td>0.81</td>
<td>0.76</td>
<td>0.64</td>
</tr>
<tr>
<td>Avg</td>
<td>0.70</td>
<td>0.74</td>
<td>0.55</td>
<td>0.82</td>
<td>0.80</td>
<td>0.78</td>
</tr>
<tr>
<td>SD</td>
<td>0.027</td>
<td>0.049</td>
<td>0.088</td>
<td>0.006</td>
<td>0.021</td>
<td>0.059</td>
</tr>
<tr>
<td>% improvement</td>
<td>14.63</td>
<td>9.76</td>
<td>32.93</td>
<td>&#x2013;</td>
<td>2.44</td>
<td>4.88</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-13">
<label>Table 13</label>
<caption>
<title>Results of fuzzy logic based decision (given by <inline-formula id="ieqn-73"><mml:math id="mml-ieqn-73"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>) for each termination criterion for Case 2</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>0.83</td>
<td>0.84</td>
<td>0.83</td>
<td>0.79</td>
<td>0.84</td>
<td>0.85</td>
</tr>
<tr>
<td>Min</td>
<td>0.70</td>
<td>0.82</td>
<td>0.72</td>
<td>0.77</td>
<td>0.36</td>
<td>0.80</td>
</tr>
<tr>
<td>Avg</td>
<td>0.77</td>
<td>0.83</td>
<td>0.78</td>
<td>0.78</td>
<td>0.75</td>
<td>0.82</td>
</tr>
<tr>
<td>SD</td>
<td>0.036</td>
<td>0.005</td>
<td>0.032</td>
<td>0.007</td>
<td>0.085</td>
<td>0.015</td>
</tr>
<tr>
<td>% improvement</td>
<td>7.23</td>
<td>&#x2013;</td>
<td>6.02</td>
<td>6.02</td>
<td>9.64</td>
<td>1.20</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-14">
<label>Table 14</label>
<caption>
<title>Results of fuzzy logic based decision (given by <inline-formula id="ieqn-74"><mml:math id="mml-ieqn-74"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula>) for each termination criterion for Case 3</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th></th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Max</td>
<td>0.78</td>
<td>0.88</td>
<td>0.84</td>
<td>0.72</td>
<td>0.87</td>
<td>0.88</td>
</tr>
<tr>
<td>Min</td>
<td>0.61</td>
<td>0.83</td>
<td>0.40</td>
<td>0.67</td>
<td>0.74</td>
<td>0.83</td>
</tr>
<tr>
<td>Avg</td>
<td>0.68</td>
<td>0.85</td>
<td>0.71</td>
<td>0.69</td>
<td>0.79</td>
<td>0.86</td>
</tr>
<tr>
<td>SD</td>
<td>0.053</td>
<td>0.012</td>
<td>0.087</td>
<td>0.012</td>
<td>0.034</td>
<td>0.010</td>
</tr>
<tr>
<td>% improvement</td>
<td>20.93</td>
<td>1.16</td>
<td>17.44</td>
<td>19.77</td>
<td>8.14</td>
<td>&#x2013;</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>In terms of statistical validation, <xref ref-type="table" rid="table-15">Table 15</xref> indicates that <italic>Phi</italic> produced statistically significant results for Case 1 compared to all other criteria. For Case 2, <italic>Best-worst</italic> was the best, with the exception of <italic>Hitting-bound</italic> since the <inline-formula id="ieqn-75"><mml:math id="mml-ieqn-75"><mml:mi>p</mml:mi></mml:math></inline-formula>-value was 0.298952, indicating that both <italic>Best-worst</italic> and <italic>Hitting-bound</italic> were equally good in terms of statistical significance. For Case 3, <italic>Hitting-bound</italic> was the best among all options.</p>
<table-wrap id="table-15">
<label>Table 15</label>
<caption>
<title>Results of statistical validation (<inline-formula id="ieqn-76"><mml:math id="mml-ieqn-76"><mml:mi>p</mml:mi></mml:math></inline-formula>-values) for overall (fuzzy) criterion</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Case</th>
<th>St dev</th>
<th>Best-worst</th>
<th>Running mean</th>
<th>Phi</th>
<th>Pop-var</th>
<th>Hitting bound</th>
</tr>
</thead>
<tbody>
<tr>
<td>Case 1</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000002</td>
<td>&#x2013;</td>
<td>0.000064</td>
<td>003311</td>
</tr>
<tr>
<td>Case 2</td>
<td>0.000004</td>
<td>&#x2013;</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.298952</td>
</tr>
<tr>
<td>Case 3</td>
<td>0.000002</td>
<td>0.001022</td>
<td>0.000002</td>
<td>0.000002</td>
<td>0.000004</td>
<td>&#x2013;</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s5_4">
<label>5.4</label>
<title>Discussion</title>
<p>Based on the statistical analysis presented in <xref ref-type="table" rid="table-7">Tables 7</xref>, <xref ref-type="table" rid="table-11">11</xref>, and <xref ref-type="table" rid="table-15">15</xref>, a summary of the best termination criteria is presented in <xref ref-type="table" rid="table-16">Table 16</xref>. It is observed from <xref ref-type="table" rid="table-16">Table 16</xref> that for the given test scenarios, <italic>Running mean</italic>, <italic>Phi</italic>, <italic>Best-worst</italic>, and <italic>Hitting-bound</italic> produced the best results. One possible explanation for the superior performance of <italic>Phi</italic>, <italic>Best-worst</italic>, and <italic>Running mean</italic> can be attributed to the very structure of the said termination criteria. Note that the three termination criteria are governed by two traits as highlighted in <xref ref-type="table" rid="table-2">Table 2</xref>. Furthermore, the common trait among the three criteria is the best fitness value. An exception was the <italic>Hitting-bound</italic> criterion, which is based on a single attribute. However, in general, termination criteria with a single trait showed poorer performance compared to termination criteria with multiple traits.</p>
<table-wrap id="table-16">
<label>Table 16</label>
<caption>
<title>Summary of best termination criterion for each scenario</title>
</caption>
<table>
<colgroup>
<col/>
<col/>
<col/>
</colgroup>
<thead>
<tr>
<th>Decision variable</th>
<th>Scenario</th>
<th>Best termination criterion</th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
<td>Case 1</td>
<td>Running mean</td>
</tr>
<tr>
<td>Efficiency</td>
<td>Case 2</td>
<td>Phi</td>
</tr>
<tr>
<td></td>
<td>Case 3</td>
<td>Phi</td>
</tr>
<tr>
<td></td>
<td>Case 1</td>
<td>Phi</td>
</tr>
<tr>
<td>Time</td>
<td>Case 2</td>
<td>Best-worst</td>
</tr>
<tr>
<td></td>
<td>Case 3</td>
<td>Hitting bound</td>
</tr>
<tr>
<td></td>
<td>Case 1</td>
<td>Phi</td>
</tr>
<tr>
<td>Fuzzy</td>
<td>Case 2</td>
<td>Best-worst</td>
</tr>
<tr>
<td></td>
<td>Case 3</td>
<td>Hitting bound</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Another observation in <xref ref-type="table" rid="table-16">Table 16</xref> is that the overall decision (i.e., fuzzy decision criterion) is more influenced by the objective <italic>time</italic> objective rather than the <italic>fitness</italic> objective. That is, the best termination criterion for each case is the same for the <italic>time</italic> objective, as well as the fuzzy decision. This is interesting since both <italic>efficiency</italic> and <italic>time</italic> criteria were given equal preference in the decision-making using the arithmetic mean operator (<xref ref-type="disp-formula" rid="eqn-5">Eq. (5)</xref>). To an extent, this also highlights the importance of the execution time in the optimization process for the underlying problem.</p>

</sec>
</sec>
<sec id="s6">
<label>6</label>
<title>Conclusions and Future Directions</title>
<p>The termination criteria play an important role in deciding when the execution of the genetic algorithm should stop. This aspect of GA did not receive the necessary attention in previous studies, particularly in the domain of wind energy. Past studies involving GA for the wind farm layout design problem mainly used a simple termination criterion without using any information from the problem domain. The present study evaluated several hybrid termination criteria with their use in GA adapted to solve the problem of designing the wind farm layout. The evaluation was based on an empirical analysis of two performance measures, which were the efficiency of the wind farm (in terms of power generation) and the execution time GA takes in carrying out the simulation. Due to the conflicting nature of these two attributes, the conventional approach to deciding the best termination criterion was not effective. This led to the development of a fuzzy logic-based decision-making approach which proved effective based on the empirical results. These fuzzy logic-based results indicated that among the various criteria tested, <italic>Phi</italic> achieved improvements in the range of 2.44% to 32.93% for Case 1. For Case 2, <italic>Best-worst</italic> termination criteria performed the best, showing improvements in the range of 1.2% to 9.64%. For Case 3, <italic>The tightening bound</italic> was the best performer, with improvements ranging between 1.16% and 20.93%. These results point towards the correlation between the termination criterion and the wind scenario.</p>
<p>This study can be expanded into several directions. Although the study used GA as the test bench, the proposed approaches can be employed in several other similar algorithms from the domain of evolutionary computation and swarm intelligence. In addition, a comprehensive study of the 25&#x002B; termination criteria, as identified in the literature, can be carried out in the context of the wind farm layout design problem. Furthermore, many other hybridized criteria can be developed to find more effective termination conditions. Another minor research direction is to explore the most appropriate value of <italic>K</italic> (the number of iterations for which GA is run before termination). In addition to fuzzy logic, other multi-attribute decision-making approaches identified in <xref ref-type="sec" rid="s4">Section 4</xref> can also be evaluated for their effectiveness.</p>
</sec>
</body>
<back>
<ack>
<p>The authors thank King Fahd University of Petroleum &#x0026; Minerals and Karachi Institute of Economics and Technology for providing computational resources to conduct this study.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>This study was funded by King Fahd University of Petroleum &#x0026; Minerals, Saudi Arabia under IRC-SES grant # INRE 2217.</p>
</sec>
<sec>
<title>Author Contributions</title>
<p>The authors confirm the contribution to the paper as follows: Conceptualization, Salman A. Khan, Mohamed Mohandes and Shafiqur Rehman; methodology, Salman A. Khan and Mohamed Mohandes; software, Salman A. Khan and Kashif Iqbal; validation, Salman A. Khan, Mohamed Mohandes, Shafiqur Rehman and Ali Al-Shaikhi; formal analysis, Salman A. Khan and Mohamed Mohandes; investigation, Salman A. Khan, Mohamed Mohandes and Ali Al-Shaikhi; resources, Mohamed Mohandes, Shafiqur Rehman and Ali Al-Shaikhi; data curation, Shafiqur Rehman and Kashif Iqbal; writing&#x2014;original draft preparation, Salman A. Khan, Mohamed Mohandes, Shafiqur Rehman, Ali Al-Shaikhi and Kashif Iqbal; writing&#x2014;review and editing, Salman A. Khan, Mohamed Mohandes, Shafiqur Rehman, Ali Al-Shaikhi and Kashif Iqbal; visualization, Kashif Iqbal; supervision, Salman A. Khan and Mohamed Mohandes; project administration, Salman A. Khan and Mohamed Mohandes; funding acquisition, Mohamed Mohandes, Shafiqur Rehman and Ali Al-Shaikhi. All authors reviewed the results and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>Data available on request from the authors. The data that support the findings of this study are available from the corresponding author, SK, upon reasonable request.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The authors declare no conflicts of interest to report regarding the present study.</p>
</sec>
<glossary content-type="abbreviations" id="glossary-1">
<title>Abbreviations</title>
<def-list>
<def-item>
<term>CPU</term>
<def>
<p>Central Processing Unit</p>
</def>
</def-item>
<def-item>
<term>CS</term>
<def>
<p>Cuckoo Search</p>
</def>
</def-item>
<def-item>
<term>D</term>
<def>
<p>Turbine diameter</p>
</def>
</def-item>
<def-item>
<term>DE</term>
<def>
<p>Differential Evolution</p>
</def>
</def-item>
<def-item>
<term>FLA</term>
<def>
<p>Fitness Landscape Analysis</p>
</def>
</def-item>
<def-item>
<term>FNI</term>
<def>
<p>Fixed Number of Iterations</p>
</def>
</def-item>
<def-item>
<term>GA</term>
<def>
<p>Genetic Algorithm</p>
</def>
</def-item>
<def-item>
<term>KIt</term>
<def>
<p>K-iterations</p>
</def>
</def-item>
<def-item>
<term>MADM</term>
<def>
<p>Multi-attribute decision-making</p>
</def>
</def-item>
<def-item>
<term>MCDM</term>
<def>
<p>Multi-criteria decision-making</p>
</def>
</def-item>
<def-item>
<term>N</term>
<def>
<p>Number of turbines in the wind farm</p>
</def>
</def-item>
<def-item>
<term>NIA</term>
<def>
<p>Nature Inspired Algorithm</p>
</def>
</def-item>
<def-item>
<term>NLP</term>
<def>
<p>Natural Language Processing</p>
</def>
</def-item>
<def-item>
<term>PSO</term>
<def>
<p>Particle Swarm Optimization</p>
</def>
</def-item>
<def-item>
<term>WFLD</term>
<def>
<p>Wind Farm Layout Design</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-77"><mml:math id="mml-ieqn-77"><mml:msub><mml:mi>v</mml:mi><mml:mn>0</mml:mn></mml:msub></mml:math></inline-formula></term>
<def>
<p>Prevailing wind speed</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-78"><mml:math id="mml-ieqn-78"><mml:msub><mml:mi>v</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula></term>
<def>
<p>Wind speed under wake effect</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-79"><mml:math id="mml-ieqn-79"><mml:msub><mml:mi>v</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Wind speed at turbine <inline-formula id="ieqn-80"><mml:math id="mml-ieqn-80"><mml:mi>i</mml:mi></mml:math></inline-formula> under wake effect of turbine <inline-formula id="ieqn-81"><mml:math id="mml-ieqn-81"><mml:mi>j</mml:mi></mml:math></inline-formula></p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-82"><mml:math id="mml-ieqn-82"><mml:msub><mml:mi>R</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:math></inline-formula></term>
<def>
<p>Rotor radius of turbine <inline-formula id="ieqn-83"><mml:math id="mml-ieqn-83"><mml:mi>j</mml:mi></mml:math></inline-formula></p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-84"><mml:math id="mml-ieqn-84"><mml:msub><mml:mi>r</mml:mi><mml:mi>j</mml:mi></mml:msub></mml:math></inline-formula></term>
<def>
<p>Wake radius</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-85"><mml:math id="mml-ieqn-85"><mml:mi>&#x03B1;</mml:mi></mml:math></inline-formula></term>
<def>
<p>Entrainment factor</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-86"><mml:math id="mml-ieqn-86"><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mo>,</mml:mo><mml:mi>j</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Distance between turbines <inline-formula id="ieqn-87"><mml:math id="mml-ieqn-87"><mml:mi>i</mml:mi></mml:math></inline-formula> and <inline-formula id="ieqn-88"><mml:math id="mml-ieqn-88"><mml:mi>j</mml:mi></mml:math></inline-formula></p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-89"><mml:math id="mml-ieqn-89"><mml:msub><mml:mi mathvariant="normal">&#x03A6;</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula></term>
<def>
<p>Set of turbines upwind of turbine <inline-formula id="ieqn-90"><mml:math id="mml-ieqn-90"><mml:mi>i</mml:mi></mml:math></inline-formula></p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-91"><mml:math id="mml-ieqn-91"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>c</mml:mi><mml:mi>u</mml:mi><mml:mi>r</mml:mi><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Total power generated by turbines in current layout</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-92"><mml:math id="mml-ieqn-92"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>d</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:mi>l</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Ideal power generated by all turbines</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-93"><mml:math id="mml-ieqn-93"><mml:mi>&#x03BB;</mml:mi></mml:math></inline-formula></term>
<def>
<p>Termination threshold defined by user</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-94"><mml:math id="mml-ieqn-94"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>C</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></term>
<def>
<p>Membership function for termination criterion</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-95"><mml:math id="mml-ieqn-95"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>E</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></term>
<def>
<p>Membership function for Efficiency</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-96"><mml:math id="mml-ieqn-96"><mml:msub><mml:mi>&#x03BC;</mml:mi><mml:mi>T</mml:mi></mml:msub><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></term>
<def>
<p>Membership function for execution time</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-97"><mml:math id="mml-ieqn-97"><mml:mi>E</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></term>
<def>
<p>Efficiency of current solution</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-98"><mml:math id="mml-ieqn-98"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Upper limit of Efficiency</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-99"><mml:math id="mml-ieqn-99"><mml:msub><mml:mi>E</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Lower limit of Efficiency</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-100"><mml:math id="mml-ieqn-100"><mml:mi>T</mml:mi><mml:mo stretchy="false">(</mml:mo><mml:mi>x</mml:mi><mml:mo stretchy="false">)</mml:mo></mml:math></inline-formula></term>
<def>
<p>Execution time of current solution</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-101"><mml:math id="mml-ieqn-101"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Upper limit of Execution time</p>
</def>
</def-item>
<def-item>
<term><inline-formula id="ieqn-102"><mml:math id="mml-ieqn-102"><mml:msub><mml:mi>T</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula></term>
<def>
<p>Lower limit of Execution time</p>
</def>
</def-item>
</def-list>
</glossary>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Rehman</surname> <given-names>S</given-names></string-name>, <string-name><surname>Khan</surname> <given-names>SA</given-names></string-name>, <string-name><surname>Alhems</surname> <given-names>LM</given-names></string-name></person-group>. <article-title>A rule-based fuzzy logic methodology for multi-criteria selection of wind turbines</article-title>. <source>Sustainability</source>. <year>2020</year>;<volume>12</volume>(<issue>20</issue>):<fpage>8467</fpage>. doi:<pub-id pub-id-type="doi">10.3390/su12208467</pub-id>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Khan</surname> <given-names>SA</given-names></string-name>, <string-name><surname>Rehman</surname> <given-names>S</given-names></string-name></person-group>. <article-title>Iterative non-deterministic algorithms in on-shore wind farm design: a brief survey</article-title>. <source>Renew Sustain Energy Rev</source>. <year>2013</year>;<volume>19</volume>:<fpage>370</fpage>&#x2013;<lpage>84</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.rser.2012.11.040</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Mosetti</surname> <given-names>G</given-names></string-name>, <string-name><surname>Poloni</surname> <given-names>C</given-names></string-name>, <string-name><surname>Diviacco</surname> <given-names>B</given-names></string-name></person-group>. <article-title>Optimization of wind turbine positioning in large wind farms by means of a genetic algorithm</article-title>. <source>J Wind Eng Indus Aerodynam</source>. <year>1994</year>;<volume>51</volume>(<issue>1</issue>):<fpage>105</fpage>&#x2013;<lpage>16</lpage>. doi:<pub-id pub-id-type="doi">10.1016/0167-6105(94)90080-9</pub-id>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Grady</surname> <given-names>S</given-names></string-name>, <string-name><surname>Hussaini</surname> <given-names>M</given-names></string-name>, <string-name><surname>Abdullah</surname> <given-names>MM</given-names></string-name></person-group>. <article-title>Placement of wind turbines using genetic algorithms</article-title>. <source>Renew Energy</source>. <year>2005</year>;<volume>30</volume>(<issue>2</issue>):<fpage>259</fpage>&#x2013;<lpage>70</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2004.05.007</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ra&#x0161;uo</surname> <given-names>B</given-names></string-name>, <string-name><surname>Bengin</surname> <given-names>A</given-names></string-name>, <string-name><surname>Veg</surname> <given-names>A</given-names></string-name></person-group>. <article-title>On aerodynamic optimization of wind farm layout</article-title>. <source>PAMM</source>. <year>2010</year>;<volume>10</volume>(<issue>1</issue>):<fpage>539</fpage>&#x2013;<lpage>40</lpage>. doi:<pub-id pub-id-type="doi">10.1002/pamm.201010262</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ra&#x0161;uo</surname> <given-names>BP</given-names></string-name>, <string-name><surname>Bengin</surname> <given-names>A&#x010C;</given-names></string-name></person-group>. <article-title>Optimization of wind farm layout</article-title>. <source>FME Trans</source>. <year>2010</year>;<volume>38</volume>(<issue>3</issue>):<fpage>107</fpage>&#x2013;<lpage>14</lpage>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Rezk</surname> <given-names>H</given-names></string-name>, <string-name><surname>Fathy</surname> <given-names>A</given-names></string-name>, <string-name><surname>Diab</surname> <given-names>AAZ</given-names></string-name>, <string-name><surname>Al-Dhaifallah</surname> <given-names>M</given-names></string-name></person-group>. <article-title>The application of water cycle optimization algorithm for optimal placement of wind turbines in wind farms</article-title>. <source>Energies</source>. <year>2019</year>;<volume>12</volume>(<issue>22</issue>):<fpage>4335</fpage>. doi:<pub-id pub-id-type="doi">10.3390/en12224335</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Asaah</surname> <given-names>P</given-names></string-name>, <string-name><surname>Hao</surname> <given-names>L</given-names></string-name>, <string-name><surname>Ji</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Optimal placement of wind turbines in wind farm layout using particle swarm optimization</article-title>. <source>J Modern Power Syst Clean Energy</source>. <year>2021</year>;<volume>9</volume>(<issue>2</issue>):<fpage>367</fpage>&#x2013;<lpage>75</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2012.12.005</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wu</surname> <given-names>X</given-names></string-name>, <string-name><surname>Hu</surname> <given-names>W</given-names></string-name>, <string-name><surname>Huang</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>C</given-names></string-name>, <string-name><surname>Jacobson</surname> <given-names>MZ</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Optimizing the layout of onshore wind farms to minimize noise</article-title>. <source>Appl Energy</source>. <year>2020</year>;<volume>267</volume>:<fpage>114896</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.apenergy.2020.114896</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Shin</surname> <given-names>J</given-names></string-name>, <string-name><surname>Baek</surname> <given-names>S</given-names></string-name>, <string-name><surname>Rhee</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Wind farm layout optimization using a metamodel and EA/PSO Algorithm in Korea offshore</article-title>. <source>Energies</source>. <year>2020</year>;<volume>14</volume>(<issue>1</issue>):<fpage>146</fpage>. doi:<pub-id pub-id-type="doi">10.3390/en14010146</pub-id>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Afanasyeva</surname> <given-names>S</given-names></string-name>, <string-name><surname>Saari</surname> <given-names>J</given-names></string-name>, <string-name><surname>Pyrh&#x00F6;nen</surname> <given-names>O</given-names></string-name>, <string-name><surname>Partanen</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Cuckoo search for wind farm optimization with auxiliary infrastructure</article-title>. <source>Wind Energy</source>. <year>2018</year>;<volume>21</volume>(<issue>10</issue>):<fpage>855</fpage>&#x2013;<lpage>75</lpage>. doi:<pub-id pub-id-type="doi">10.1002/we.2199</pub-id>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kiamehr</surname> <given-names>K</given-names></string-name>, <string-name><surname>Hannani</surname> <given-names>SK</given-names></string-name></person-group>. <article-title>Wind farm layout optimization using imperialist competitive algorithm</article-title>. <source>J Renew Sustain Energy</source>. <year>2014</year>;<volume>6</volume>(<issue>4</issue>):<fpage>043109</fpage>. doi:<pub-id pub-id-type="doi">10.1063/1.4890376</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Aggarwal</surname> <given-names>SK</given-names></string-name>, <string-name><surname>Saini</surname> <given-names>LM</given-names></string-name>, <string-name><surname>Sood</surname> <given-names>V</given-names></string-name></person-group>. <article-title>Large wind farm layout optimization using nature inspired meta-heuristic algorithms</article-title>. <source>IETE J Res</source>. <year>2021</year>:<fpage>1</fpage>&#x2013;<lpage>18</lpage>. doi:<pub-id pub-id-type="doi">10.1080/03772063.2021.1905082</pub-id>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Cormen</surname> <given-names>TH</given-names></string-name>, <string-name><surname>Leiserson</surname> <given-names>CE</given-names></string-name>, <string-name><surname>Rivest</surname> <given-names>RL</given-names></string-name>, <string-name><surname>Stein</surname> <given-names>C</given-names></string-name></person-group>. <source>Introduction to algorithms</source>. <publisher-loc>Cambridge, MA, USA</publisher-loc>: <publisher-name>MIT Press</publisher-name>; <year>2022</year>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ghoreishi</surname> <given-names>SN</given-names></string-name>, <string-name><surname>Clausen</surname> <given-names>A</given-names></string-name>, <string-name><surname>J&#x00F8;rgensen</surname> <given-names>BN</given-names></string-name></person-group>. <article-title>Termination criteria in evolutionary algorithms: a survey</article-title>. In: <conf-name>9th International Joint Conference on Computational Intelligence</conf-name>; <year>2017 Nov 1&#x2013;3</year>; <publisher-loc>Madeira, Portugal</publisher-loc>. p. <fpage>373</fpage>&#x2013;<lpage>84</lpage>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ong</surname> <given-names>BT</given-names></string-name>, <string-name><surname>Fukushima</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Genetic algorithm with automatic termination and search space rotation</article-title>. <source>Memet Comput</source>. <year>2011</year>;<volume>3</volume>(<issue>2</issue>):<fpage>111</fpage>&#x2013;<lpage>27</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s12293-011-0057-8</pub-id>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Malan</surname> <given-names>KM</given-names></string-name>, <string-name><surname>Engelbrecht</surname> <given-names>AP</given-names></string-name></person-group>. <chapter-title>Fitness landscape analysis for metaheuristic performance prediction</chapter-title>. In: <source>Recent advances in the theory and application of fitness landscapes</source>. <publisher-loc>Berlin/Heidelberg</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2014</year>. p. <fpage>103</fpage>&#x2013;<lpage>32</lpage>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gupta</surname> <given-names>T</given-names></string-name>, <string-name><surname>Bertolini</surname> <given-names>C</given-names></string-name>, <string-name><surname>Heron</surname> <given-names>O</given-names></string-name>, <string-name><surname>Ventroux</surname> <given-names>N</given-names></string-name>, <string-name><surname>Zimmer</surname> <given-names>T</given-names></string-name>, <string-name><surname>Marc</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Impact of power consumption and temperature on processor lifetime reliability</article-title>. <source>J Low Power Electron</source>. <year>2012</year>;<volume>8</volume>(<issue>1</issue>):<fpage>83</fpage>&#x2013;<lpage>94</lpage>. doi:<pub-id pub-id-type="doi">10.1166/jolpe.2012.1174</pub-id>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gellert</surname> <given-names>A</given-names></string-name>, <string-name><surname>Florea</surname> <given-names>A</given-names></string-name>, <string-name><surname>Fiore</surname> <given-names>U</given-names></string-name>, <string-name><surname>Zanetti</surname> <given-names>P</given-names></string-name>, <string-name><surname>Vintan</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Performance and energy optimisation in CPUs through fuzzy knowledge representation</article-title>. <source>Inform Sci</source>. <year>2019</year>;<volume>476</volume>:<fpage>375</fpage>&#x2013;<lpage>91</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.ins.2018.03.029</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Muralidhar</surname> <given-names>R</given-names></string-name>, <string-name><surname>Borovica-Gajic</surname> <given-names>R</given-names></string-name>, <string-name><surname>Buyya</surname> <given-names>R</given-names></string-name></person-group>. <article-title>Energy efficient computing systems: architectures, abstractions and modeling to techniques and standards</article-title>. <source>ACM Comput Surv (CSUR)</source>. <year>2022</year>;<volume>54</volume>(<issue>11s</issue>):<fpage>1</fpage>&#x2013;<lpage>37</lpage>. doi:<pub-id pub-id-type="doi">10.1145/3511094</pub-id>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gu&#x00E9;rout</surname> <given-names>T</given-names></string-name>, <string-name><surname>Monteil</surname> <given-names>T</given-names></string-name>, <string-name><surname>Da Costa</surname> <given-names>G</given-names></string-name>, <string-name><surname>Calheiros</surname> <given-names>RN</given-names></string-name>, <string-name><surname>Buyya</surname> <given-names>R</given-names></string-name>, <string-name><surname>Alexandru</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Energy-aware simulation with DVFS</article-title>. <source>Simul Modell Pract Theory</source>. <year>2013</year>;<volume>39</volume>:<fpage>76</fpage>&#x2013;<lpage>91</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.simpat.2013.04.007</pub-id>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Eder</surname> <given-names>K</given-names></string-name>, <string-name><surname>Gallagher</surname> <given-names>J</given-names></string-name>, <string-name><surname>Fagas</surname> <given-names>G</given-names></string-name>, <string-name><surname>Gammaitoni</surname> <given-names>L</given-names></string-name>, <string-name><surname>Paul</surname> <given-names>D</given-names></string-name></person-group>. <article-title>Energy-aware software engineering</article-title>. <source>ICT-Energy Con Energy Eff Sustain</source>. <publisher-loc>London, UK</publisher-loc>: <publisher-name>IntechOpen</publisher-name>; <year>2017</year>. p. <fpage>103</fpage>&#x2013;<lpage>27</lpage>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Shakhovska</surname> <given-names>N</given-names></string-name>, <string-name><surname>Medykovskyy</surname> <given-names>M</given-names></string-name>, <string-name><surname>Melnyk</surname> <given-names>R</given-names></string-name>, <string-name><surname>Kryvinska</surname> <given-names>N</given-names></string-name></person-group>. <article-title>Optimization of the active composition of the wind farm using genetic algorithms</article-title>. <source>Comput Mater Contin</source>. <year>2021</year>;<volume>69</volume>(<issue>3</issue>):<fpage>3065</fpage>&#x2013;<lpage>78</lpage>. doi:<pub-id pub-id-type="doi">10.32604/cmc.2021.018761</pub-id>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Pholdee</surname> <given-names>N</given-names></string-name>, <string-name><surname>Bureerat</surname> <given-names>S</given-names></string-name>, <string-name><surname>Nuantong</surname> <given-names>W</given-names></string-name></person-group>. <article-title>Kriging surrogate-based genetic algorithm optimization for blade design of a horizontal axis wind turbine</article-title>. <source>Comput Model Eng Sci</source>. <year>2021</year>;<volume>126</volume>(<issue>1</issue>):<fpage>261</fpage>&#x2013;<lpage>73</lpage>. doi:<pub-id pub-id-type="doi">10.32604/cmes.2021.012349</pub-id>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ravber</surname> <given-names>M</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>SH</given-names></string-name>, <string-name><surname>Mernik</surname> <given-names>M</given-names></string-name>, <string-name><surname>&#x010C;repin&#x0161;ek</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Maximum number of generations as a stopping criterion considered harmful</article-title>. <source>Appl Soft Comput</source>. <year>2022</year>;<volume>128</volume>:<fpage>109478</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.asoc.2022.109478</pub-id>.</mixed-citation></ref>
<ref id="ref-26"><label>[26]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bhandari</surname> <given-names>D</given-names></string-name>, <string-name><surname>Murthy</surname> <given-names>C</given-names></string-name>, <string-name><surname>Pal</surname> <given-names>SK</given-names></string-name></person-group>. <article-title>Variance as a stopping criterion for genetic algorithms with elitist model</article-title>. <source>Fundamenta Informaticae</source>. <year>2012</year>;<volume>120</volume>(<issue>2</issue>):<fpage>145</fpage>&#x2013;<lpage>64</lpage>. doi:<pub-id pub-id-type="doi">10.3233/fi-2012-754</pub-id>.</mixed-citation></ref>
<ref id="ref-27"><label>[27]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Huang</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Distributed genetic algorithm for optimization of wind farm annual profits</article-title>. In: <conf-name>Proceedings of IEEE International Conference on Intelligent Systems Applications to Power Systems</conf-name>; Kaohsiung, Taiwan. <publisher-loc>Piscataway, NJ, USA</publisher-loc>; <year>2007</year>. p. <fpage>1</fpage>&#x2013;<lpage>6</lpage>.</mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>&#x015E;i&#x015F;bot</surname> <given-names>S</given-names></string-name>, <string-name><surname>Turgut</surname> <given-names>O</given-names></string-name>, <string-name><surname>Tun&#x00E7;</surname> <given-names>M</given-names></string-name>, <string-name><surname>&#x00C7;amdali</surname> <given-names>U</given-names></string-name></person-group>. <article-title>Optimal positioning of wind turbines on G&#x00F6;k&#x00E7;eada using multi-objective genetic algorithm</article-title>. <source>Wind Energy</source>. <year>2009</year>;<volume>13</volume>(<issue>4</issue>):<fpage>297</fpage>&#x2013;<lpage>306</lpage>. doi:<pub-id pub-id-type="doi">10.1002/we.339</pub-id>.</mixed-citation></ref>
<ref id="ref-29"><label>[29]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Huang</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Efficient hybrid distributed genetic algorithms for wind turbine positioning in large wind farms</article-title>. In: <conf-name>Proceedings of IEEE International Symposium on Industrial Electronics</conf-name>; <comment>Seoul, Republic of Korea</comment>. <publisher-loc>Piscataway, NJ, USA</publisher-loc>;
<year>2009</year>. p. <fpage>2196</fpage>&#x2013;<lpage>201</lpage>.</mixed-citation></ref>
<ref id="ref-30"><label>[30]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wan</surname> <given-names>C</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>G</given-names></string-name>, <string-name><surname>Li</surname> <given-names>X</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>X</given-names></string-name></person-group>. <article-title>Optimal micro-siting of wind turbines by genetic algorithms based on improved wind and turbine models</article-title>. In: <conf-name>Proceedings of the 48th IEEE Conference on Decision and Control</conf-name>; Shanghai, China. <publisher-loc>Piscataway, NJ, USA</publisher-loc>; <year>2009</year>. p. <fpage>5092</fpage>&#x2013;<lpage>6</lpage>.</mixed-citation></ref>
<ref id="ref-31"><label>[31]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>F</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>D</given-names></string-name>, <string-name><surname>Zeng</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Modeling and simulation of optimal wind turbine configurations in wind farms</article-title>. In: <conf-name>Proceedings of IEEE World Non-Grid-Connected Wind Power and Energy Conference</conf-name>; Nanjing, China. <publisher-loc>Piscataway, NJ, USA</publisher-loc>; <year>2009</year>. p. <fpage>1</fpage>&#x2013;<lpage>5</lpage>.</mixed-citation></ref>
<ref id="ref-32"><label>[32]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>F</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>D</given-names></string-name>, <string-name><surname>Zeng</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Study on computational grids in placement of wind turbines using genetic algorithm</article-title>. In: <conf-name>Proceedings of IEEE World Non-Grid-Connected Wind Power and Energy Conference</conf-name>; Nanjing, China. <publisher-loc>Piscataway, NJ, USA</publisher-loc>; <year>2009</year>. p. <fpage>1</fpage>&#x2013;<lpage>4</lpage>.</mixed-citation></ref>
<ref id="ref-33"><label>[33]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Herbert-Acero</surname> <given-names>J</given-names></string-name>, <string-name><surname>Franco-Acevedo</surname> <given-names>J</given-names></string-name>, <string-name><surname>Valenzuela-Rend&#x00F3;n</surname> <given-names>M</given-names></string-name>, <string-name><surname>Probst-Oleszewski</surname> <given-names>O</given-names></string-name></person-group>. <article-title>Linear wind farm layout optimization through computational intelligence</article-title>. In: <conf-name>Proceedings of MICAI 2009, Lecture Notes in AI</conf-name>; Guanajuato, Mexico. <publisher-loc>Berlin/Heidelberg</publisher-loc>; <year>2009</year>. p. <fpage>692</fpage>&#x2013;<lpage>703</lpage>.</mixed-citation></ref>
<ref id="ref-34"><label>[34]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Emami</surname> <given-names>A</given-names></string-name>, <string-name><surname>Noghreh</surname> <given-names>P</given-names></string-name></person-group>. <article-title>New approach on optimization in placement of wind turbines within wind farm by genetic algorithms</article-title>. <source>Renew Energy</source>. <year>2010</year>;<volume>25</volume>:<fpage>1559</fpage>&#x2013;<lpage>64</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2009.11.026</pub-id>.</mixed-citation></ref>
<ref id="ref-35"><label>[35]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kusiak</surname> <given-names>A</given-names></string-name>, <string-name><surname>Song</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Design of wind farm layout for maximum wind energy capture</article-title>. <source>Renew Energy</source>. <year>2010</year>;<volume>35</volume>:<fpage>685</fpage>&#x2013;<lpage>94</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2009.08.019</pub-id>.</mixed-citation></ref>
<ref id="ref-36"><label>[36]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Bilbao</surname> <given-names>M</given-names></string-name>, <string-name><surname>Alba</surname> <given-names>E</given-names></string-name></person-group>. <article-title>CHC and SA applied to wind energy optimization using real data</article-title>. In: <conf-name>IEEE Congress on Evoluionary Computation</conf-name>; Barcelona, Spain. <publisher-loc>Piscataway, NJ, USA</publisher-loc>; <year>2010</year>. p. <fpage>1</fpage>&#x2013;<lpage>8</lpage>.</mixed-citation></ref>
<ref id="ref-37"><label>[37]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Gonz&#x00E1;lez</surname> <given-names>J</given-names></string-name>, <string-name><surname>Santos</surname> <given-names>J</given-names></string-name>, <string-name><surname>Payan</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Wind farm optimal design including risk</article-title>. In: <conf-name>IEEE International Symposium on Modern Electric Power Systems</conf-name>; <comment>Wroclaw, Poland. Piscataway, NJ, USA</comment>; <year>2010</year>. p. <fpage>1</fpage>&#x2013;<lpage>6</lpage>.</mixed-citation></ref>
<ref id="ref-38"><label>[38]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gonzalez</surname> <given-names>JS</given-names></string-name>, <string-name><surname>Payan</surname> <given-names>MB</given-names></string-name>, <string-name><surname>Riquelme-Santos</surname> <given-names>JM</given-names></string-name></person-group>. <article-title>Optimization of wind farm turbine layout including decision making under risk</article-title>. <source>IEEE Syst J</source>. <year>2011</year>;<volume>6</volume>(<issue>1</issue>):<fpage>94</fpage>&#x2013;<lpage>102</lpage>. doi:<pub-id pub-id-type="doi">10.1109/jsyst.2011.2163007</pub-id>.</mixed-citation></ref>
<ref id="ref-39"><label>[39]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gonz&#x00E1;lez</surname> <given-names>JS</given-names></string-name>, <string-name><surname>Rodr&#x00ED;guez</surname> <given-names>&#x00C1;G</given-names></string-name>, <string-name><surname>Mora</surname> <given-names>JC</given-names></string-name>, <string-name><surname>Pay&#x00E1;n</surname> <given-names>MB</given-names></string-name>, <string-name><surname>Santos</surname> <given-names>JR</given-names></string-name></person-group>. <article-title>Overall design optimization of wind farms</article-title>. <source>Renew Energy</source>. <year>2011</year>;<volume>36</volume>(<issue>7</issue>):<fpage>1973</fpage>&#x2013;<lpage>82</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2010.10.034</pub-id>.</mixed-citation></ref>
<ref id="ref-40"><label>[40]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Saavedra-Moreno</surname> <given-names>B</given-names></string-name>, <string-name><surname>Salcedo-Sanz</surname> <given-names>S</given-names></string-name>, <string-name><surname>Paniagua-Tineo</surname> <given-names>A</given-names></string-name>, <string-name><surname>Prieto</surname> <given-names>L</given-names></string-name>, <string-name><surname>Portilla-Figueras</surname> <given-names>A</given-names></string-name></person-group>. <article-title>Seeding evolutionary algorithms with heuristics for optimal wind turbines positioning in wind farms</article-title>. <source>Renew Energy</source>. <year>2011</year>;<volume>36</volume>(<issue>11</issue>):<fpage>2838</fpage>&#x2013;<lpage>44</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2011.04.018</pub-id>.</mixed-citation></ref>
<ref id="ref-41"><label>[41]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Kwong</surname> <given-names>WY</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>PY</given-names></string-name>, <string-name><surname>Romero</surname> <given-names>D</given-names></string-name>, <string-name><surname>Moran</surname> <given-names>J</given-names></string-name>, <string-name><surname>Morgenroth</surname> <given-names>M</given-names></string-name>, <string-name><surname>Amon</surname> <given-names>C</given-names></string-name></person-group>. <article-title>Wind farm layout optimization considering energy generation and noise propagation</article-title>. In: <conf-name>International Design Engineering Technical Conferences and Computers and Information in Engineering Conference</conf-name>; <year>2012</year>. Vol. <volume>45028</volume>. p. <fpage>323</fpage>&#x2013;<lpage>32</lpage>.</mixed-citation></ref>
<ref id="ref-42"><label>[42]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yang</surname> <given-names>J</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>R</given-names></string-name>, <string-name><surname>Sun</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Optimal wind turbines micrositing in onshore wind farms using fuzzy genetic algorithm</article-title>. <source>Math Probl Eng</source>. <year>2015</year>:<fpage>1</fpage>&#x2013;<lpage>9</lpage>.</mixed-citation></ref>
<ref id="ref-43"><label>[43]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kirchner-Bossi</surname> <given-names>N</given-names></string-name>, <string-name><surname>Port&#x00E9;-Agel</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Realistic wind farm layout optimization through genetic algorithms using a Gaussian wake model</article-title>. <source>Energies</source>. <year>2018</year>;<volume>11</volume>(<issue>12</issue>):<fpage>3268</fpage>. doi:<pub-id pub-id-type="doi">10.3390/en11123268</pub-id>.</mixed-citation></ref>
<ref id="ref-44"><label>[44]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Khanali</surname> <given-names>M</given-names></string-name>, <string-name><surname>Ahmadzadegan</surname> <given-names>S</given-names></string-name>, <string-name><surname>Omid</surname> <given-names>M</given-names></string-name>, <string-name><surname>Keyhani Nasab</surname> <given-names>F</given-names></string-name>, <string-name><surname>Chau</surname> <given-names>KW</given-names></string-name></person-group>. <article-title>Optimizing layout of wind farm turbines using genetic algorithms in Tehran province, Iran</article-title>. <source>Int J Energy Environ Eng</source>. <year>2018</year>;<volume>9</volume>(<issue>4</issue>):<fpage>399</fpage>&#x2013;<lpage>411</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s40095-018-0280-x</pub-id>.</mixed-citation></ref>
<ref id="ref-45"><label>[45]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Charhouni</surname> <given-names>N</given-names></string-name>, <string-name><surname>Sallaou</surname> <given-names>M</given-names></string-name>, <string-name><surname>Mansouri</surname> <given-names>K</given-names></string-name></person-group>. <article-title>Realistic wind farm design layout optimization with different wind turbines types</article-title>. <source>Int J Energy Environ Eng</source>. <year>2019</year>;<volume>10</volume>(<issue>3</issue>):<fpage>307</fpage>&#x2013;<lpage>18</lpage>. doi:<pub-id pub-id-type="doi">10.1007/s40095-019-0303-2</pub-id>.</mixed-citation></ref>
<ref id="ref-46"><label>[46]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Comparative study of wind turbine placement methods for flat wind farm layout optimization with irregular boundary</article-title>. <source>Appl Sci</source>. <year>2019</year>;<volume>9</volume>(<issue>4</issue>):<fpage>639</fpage>. doi:<pub-id pub-id-type="doi">10.3390/app9040639</pub-id>.</mixed-citation></ref>
<ref id="ref-47"><label>[47]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ju</surname> <given-names>X</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Wind farm layout optimization using self-informed genetic algorithm with information guided exploitation</article-title>. <source>Appl Energy</source>. <year>2019</year>;<volume>248</volume>:<fpage>429</fpage>&#x2013;<lpage>45</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.apenergy.2019.04.084</pub-id>.</mixed-citation></ref>
<ref id="ref-48"><label>[48]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ju</surname> <given-names>X</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>F</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Lee</surname> <given-names>WJ</given-names></string-name></person-group>. <article-title>Wind farm layout optimization based on support vector regression guided genetic algorithm with consideration of participation among landowners</article-title>. <source>Energy Convers Manag</source>. <year>2019</year>;<volume>196</volume>:<fpage>1267</fpage>&#x2013;<lpage>81</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.enconman.2019.06.082</pub-id>.</mixed-citation></ref>
<ref id="ref-49"><label>[49]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gao</surname> <given-names>X</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhao</surname> <given-names>F</given-names></string-name>, <string-name><surname>Sun</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Comparisons of the accuracy of different wake models in wind farm layout optimization</article-title>. <source>Energy Explor Exploit</source>. <year>2020</year>;<volume>38</volume>(<issue>5</issue>):<fpage>1725</fpage>&#x2013;<lpage>41</lpage>.</mixed-citation></ref>
<ref id="ref-50"><label>[50]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Wen</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Song</surname> <given-names>M</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>J</given-names></string-name></person-group>. <article-title>A customized binary-coded genetic algorithm for wind-farm layout optimization</article-title>. In: <conf-name>2020 IEEE Conference on Control Technology and Applications (CCTA)</conf-name>; Montreal, Canada. <publisher-loc>Piscataway, NJ, USA</publisher-loc>: <publisher-name>IEEE</publisher-name>; <year>2020</year>. p.  <fpage>1</fpage>&#x2013;<lpage>9</lpage>.</mixed-citation></ref>
<ref id="ref-51"><label>[51]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Liu</surname> <given-names>F</given-names></string-name>, <string-name><surname>Ju</surname> <given-names>X</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>N</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Lee</surname> <given-names>WJ</given-names></string-name></person-group>. <article-title>Wind farm macro-siting optimization with insightful bi-criteria identification and relocation mechanism in genetic algorithm</article-title>. <source>Energy Convers Manag</source>. <year>2020</year>;<volume>217</volume>:<fpage>112964</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.enconman.2020.112964</pub-id>.</mixed-citation></ref>
<ref id="ref-52"><label>[52]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Al Shereiqi</surname> <given-names>A</given-names></string-name>, <string-name><surname>Mohandes</surname> <given-names>B</given-names></string-name>, <string-name><surname>Al-Hinai</surname> <given-names>A</given-names></string-name>, <string-name><surname>Bakhtvar</surname> <given-names>M</given-names></string-name>, <string-name><surname>Al-Abri</surname> <given-names>R</given-names></string-name>, <string-name><surname>El Moursi</surname> <given-names>M</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Co-optimisation of wind farm micro-siting and cabling layouts</article-title>. <source>IET Renew Power Gen</source>. <year>2021</year>;<volume>15</volume>(<issue>8</issue>):<fpage>1848</fpage>&#x2013;<lpage>60</lpage>. doi:<pub-id pub-id-type="doi">10.1049/rpg2.12154</pub-id>.</mixed-citation></ref>
<ref id="ref-53"><label>[53]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Kirchner-Bossi</surname> <given-names>N</given-names></string-name>, <string-name><surname>Port&#x00E9;-Agel</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Wind farm area shape optimization using newly developed multi-objective evolutionary algorithms</article-title>. <source>Energies</source>. <year>2021</year>;<volume>14</volume>(<issue>14</issue>):<fpage>4185</fpage>. doi:<pub-id pub-id-type="doi">10.3390/en14144185</pub-id>.</mixed-citation></ref>
<ref id="ref-54"><label>[54]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Asfour</surname> <given-names>R</given-names></string-name>, <string-name><surname>Brahimi</surname> <given-names>T</given-names></string-name>, <string-name><surname>El-Amin</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Wind farm layout: modeling and optimization using genetic algorithm</article-title>. <source>IOP Conf Series Earth Environ Sci</source>. <year>2022</year>;<volume>1008</volume>:<fpage>012004</fpage>. doi:<pub-id pub-id-type="doi">10.1088/1755-1315/1008/1/012004</pub-id>.</mixed-citation></ref>
<ref id="ref-55"><label>[55]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><surname>Guoqing</surname> <given-names>H</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>S</given-names></string-name>, <string-name><surname>Li</surname> <given-names>K</given-names></string-name></person-group>. <article-title>Optimization of wind farm regular layout based on grid coordinate genetic algorithm</article-title>. In: <conf-name>The 2022 World Congress on Advances in Civil, Environmental, &#x00026; Materials Research (ACEM22)</conf-name>; <year>2022 Aug 16&#x2013;19</year>; <publisher-loc>GECE, Seoul, Republic of Korea</publisher-loc>.</mixed-citation></ref>
<ref id="ref-56"><label>[56]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Mohandes</surname> <given-names>M</given-names></string-name>, <string-name><surname>Khan</surname> <given-names>SA</given-names></string-name>, <string-name><surname>Rehman</surname> <given-names>S</given-names></string-name>, <string-name><surname>Al</surname> <given-names>SA</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>B</given-names></string-name>, <string-name><surname>Iqbal</surname> <given-names>K</given-names></string-name></person-group>. <article-title>GARM: a stochastic evolution based genetic algorithm with rewarding mechanism for wind farm layout optimization</article-title>. <source>FME Trans</source>. <year>2023</year>;<volume>51</volume>(<issue>4</issue>):<fpage>575</fpage>&#x2013;<lpage>84</lpage>. doi:<pub-id pub-id-type="doi">10.5937/fme2304575m</pub-id>.</mixed-citation></ref>
<ref id="ref-57"><label>[57]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zori&#x0107;</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Optimizing wind farm layouts with genetic algorithms (Enhancing efficiency in wind energy planning and utilization in Bosnia and Herzegovina)</article-title>. <source>Ajrsp</source>. <year>2023</year>;<volume>5</volume>(<issue>51</issue>):<fpage>51</fpage>&#x2013;<lpage>73</lpage>.</mixed-citation></ref>
<ref id="ref-58"><label>[58]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Tu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>K</given-names></string-name>, <string-name><surname>Han</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Cao</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhou</surname> <given-names>D</given-names></string-name></person-group>. <article-title>An optimization framework for wind farm layout design using CFD-based Kriging model</article-title>. <source>Ocean Eng</source>. <year>2024</year>;<volume>293</volume>:<fpage>116644</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.oceaneng.2023.116644</pub-id>.</mixed-citation></ref>
<ref id="ref-59"><label>[59]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>He</surname> <given-names>J</given-names></string-name>, <string-name><surname>Ge</surname> <given-names>M</given-names></string-name>, <string-name><surname>&#x017E;arkovi&#x0107;</surname> <given-names>SD</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Hilber</surname> <given-names>P</given-names></string-name></person-group>. <article-title>A novel integrated optimization method of micrositing and cable routing for offshore wind farms</article-title>. <source>Energy</source>. <year>2024</year>;<volume>306</volume>:<fpage>132443</fpage>.</mixed-citation></ref>
<ref id="ref-60"><label>[60]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Mohandes</surname> <given-names>M</given-names></string-name>, <string-name><surname>Khan</surname> <given-names>SA</given-names></string-name>, <string-name><surname>Rehman</surname> <given-names>S</given-names></string-name>, <string-name><surname>Al-Shaikhi</surname> <given-names>A</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>B</given-names></string-name>, <string-name><surname>Iqbal</surname> <given-names>K</given-names></string-name></person-group>. <article-title>A preliminary empirical analysis of termination criteria in the genetic algorithms for wind farm micrositing</article-title>. In: <conf-name>2024 6th International Symposium on Advanced Electrical and Communication Technologies (ISAECT)</conf-name>; <publisher-loc>San Francisco, CA, USA</publisher-loc>: <publisher-name>IEEE</publisher-name>; <year>2024</year>. p. <fpage>1</fpage>&#x2013;<lpage>6</lpage>.</mixed-citation></ref>
<ref id="ref-61"><label>[61]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Jain</surname> <given-names>BJ</given-names></string-name>, <string-name><surname>Pohlheim</surname> <given-names>H</given-names></string-name>, <string-name><surname>Wegener</surname> <given-names>J</given-names></string-name></person-group>. <article-title>On termination criteria of evolutionary algorithms</article-title>. In: <conf-name>Proceedings of the 3rd Annual Conference on Genetic and Evolutionary Computation</conf-name>; <year>2001</year>. p. <fpage>768</fpage>&#x2013;<lpage>8</lpage>.</mixed-citation></ref>
<ref id="ref-62"><label>[62]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Jensen</surname> <given-names>NO</given-names></string-name></person-group>. <source>A note on wind generator interaction</source>. <publisher-name>Roskilde, Denmark</publisher-name>; <year>1983</year>.</mixed-citation></ref>
<ref id="ref-63"><label>[63]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Katic</surname> <given-names>I</given-names></string-name>, <string-name><surname>H&#x00F8;jstrup</surname> <given-names>J</given-names></string-name>, <string-name><surname>Jensen</surname> <given-names>NO</given-names></string-name></person-group>. <chapter-title>A simple model for cluster efficiency</chapter-title>. In: <source>European wind energy association conference and exhibition</source>. <publisher-loc>Rome, Italy</publisher-loc>: <publisher-name>A. Raguzzi</publisher-name>; <year>1987</year>. p. <fpage>407</fpage>&#x2013;<lpage>10</lpage>.</mixed-citation></ref>
<ref id="ref-64"><label>[64]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Frandsen</surname> <given-names>S</given-names></string-name>, <string-name><surname>Barthelmie</surname> <given-names>R</given-names></string-name>, <string-name><surname>Pryor</surname> <given-names>S</given-names></string-name>, <string-name><surname>Rathmann</surname> <given-names>O</given-names></string-name>, <string-name><surname>Larsen</surname> <given-names>S</given-names></string-name>, <string-name><surname>H&#x00F8;jstrup</surname> <given-names>J</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Analytical modelling of wind speed deficit in large offshore wind farms</article-title>. <source>Wind Energy: Int J Progress Appl Wind Power Conv Technol</source>. <year>2006</year>;<volume>9</volume>(<issue>1&#x2013;2</issue>):<fpage>39</fpage>&#x2013;<lpage>53</lpage>. doi:<pub-id pub-id-type="doi">10.1002/we.189</pub-id>.</mixed-citation></ref>
<ref id="ref-65"><label>[65]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Gao</surname> <given-names>X</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>H</given-names></string-name>, <string-name><surname>Lu</surname> <given-names>L</given-names></string-name></person-group>. <article-title>Optimization of wind turbine layout position in a wind farm using a newly-developed two-dimensional wake model</article-title>. <source>Appl Energy</source>. <year>2016</year>;<volume>174</volume>:<fpage>192</fpage>&#x2013;<lpage>200</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.apenergy.2016.04.098</pub-id>.</mixed-citation></ref>
<ref id="ref-66"><label>[66]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Sun</surname> <given-names>H</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Study on an innovative three-dimensional wind turbine wake model</article-title>. <source>Appl Energy</source>. <year>2018</year>;<volume>226</volume>:<fpage>483</fpage>&#x2013;<lpage>93</lpage>.</mixed-citation></ref>
<ref id="ref-67"><label>[67]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Parada</surname> <given-names>L</given-names></string-name>, <string-name><surname>Herrera</surname> <given-names>C</given-names></string-name>, <string-name><surname>Flores</surname> <given-names>P</given-names></string-name>, <string-name><surname>Parada</surname> <given-names>V</given-names></string-name></person-group>. <article-title>Wind farm layout optimization using a Gaussian-based wake model</article-title>. <source>Renew Energy</source>. <year>2017</year>;<volume>107</volume>:<fpage>531</fpage>&#x2013;<lpage>41</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2017.02.017</pub-id>.</mixed-citation></ref>
<ref id="ref-68"><label>[68]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Vasel-Be-Hagh</surname> <given-names>A</given-names></string-name>, <string-name><surname>Archer</surname> <given-names>CL</given-names></string-name></person-group>. <article-title>Wind farm hub height optimization</article-title>. <source>Appl Energy</source>. <year>2017</year>;<volume>195</volume>:<fpage>905</fpage>&#x2013;<lpage>21</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.apenergy.2017.03.089</pub-id>.</mixed-citation></ref>
<ref id="ref-69"><label>[69]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Fraser</surname> <given-names>AS</given-names></string-name></person-group>. <article-title>Simulation of genetic systems by automatic digital computers I. Introduction</article-title>. <source>Aust J Biol Sci</source>. <year>1957</year>;<volume>10</volume>(<issue>4</issue>):<fpage>484</fpage>&#x2013;<lpage>91</lpage>.</mixed-citation></ref>
<ref id="ref-70"><label>[70]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Holland</surname> <given-names>JH</given-names></string-name></person-group>. <source>Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence</source>. <publisher-loc>Cambridge, MA, USA</publisher-loc>: <publisher-name>MIT Press</publisher-name>; <year>1992</year>.</mixed-citation></ref>
<ref id="ref-71"><label>[71]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>&#x010C;repin&#x0161;ek</surname> <given-names>M</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>SH</given-names></string-name>, <string-name><surname>Mernik</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Exploration and exploitation in evolutionary algorithms: a survey</article-title>. <source>ACM Comput Surv (CSUR)</source>. <year>2013</year>;<volume>45</volume>(<issue>3</issue>):<fpage>1</fpage>&#x2013;<lpage>33</lpage>. doi:<pub-id pub-id-type="doi">10.1145/2480741.2480752</pub-id>.</mixed-citation></ref>
<ref id="ref-72"><label>[72]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Fister</surname> <given-names>I</given-names></string-name>, <string-name><surname>Strnad</surname> <given-names>D</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>XS</given-names></string-name></person-group>. <chapter-title>Adaptation and hybridization in nature-inspired algorithms</chapter-title>. In: <source>Adaptation and hybridization in computational intelligence</source>. <publisher-loc>Cambridge, MA, USA</publisher-loc>: <publisher-name>Springer</publisher-name>; <year>2015</year>. p. <fpage>3</fpage>&#x2013;<lpage>50</lpage>.</mixed-citation></ref>
<ref id="ref-73"><label>[73]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Engelbrecht</surname> <given-names>AP</given-names></string-name></person-group>. <source>Fundamentals of computational swarm intelligence</source>. <publisher-loc>Hoboken, NJ, USA</publisher-loc>: <publisher-name>John Wiley Sons</publisher-name>; <year>2005</year>.</mixed-citation></ref>
<ref id="ref-74"><label>[74]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Miettinen</surname> <given-names>K</given-names></string-name></person-group>. <article-title>Some methods for nonlinear multi-objective optimization</article-title>. In: <conf-name>Evolutionary Multi-Criterion Optimization: First International Conference, EMO 2001 Zurich, Switzerland; 2001 Mar 7&#x2013;9</conf-name>. p. <fpage>1</fpage>&#x2013;<lpage>20</lpage>.</mixed-citation></ref>
<ref id="ref-75"><label>[75]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Pavla&#x010D;ka</surname> <given-names>O</given-names></string-name>, <string-name><surname>Pavla&#x010D;kov&#x00E1;</surname> <given-names>M</given-names></string-name>, <string-name><surname>Hetflei&#x0161;</surname> <given-names>V</given-names></string-name></person-group>. <article-title>Fuzzy weighted average as a fuzzified aggregation operator and its properties</article-title>. <source>Kybernetika</source>. <year>2017</year>;<volume>53</volume>(<issue>1</issue>):<fpage>137</fpage>&#x2013;<lpage>60</lpage>. doi:<pub-id pub-id-type="doi">10.14736/kyb-2017-1-0137</pub-id>.</mixed-citation></ref>
<ref id="ref-76"><label>[76]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Derrac</surname> <given-names>J</given-names></string-name>, <string-name><surname>Garc&#x00ED;a</surname> <given-names>S</given-names></string-name>, <string-name><surname>Molina</surname> <given-names>D</given-names></string-name>, <string-name><surname>Herrera</surname> <given-names>F</given-names></string-name></person-group>. <article-title>A practical tutorial on the use of nonparametric statistical tests as a methodology for comparing evolutionary and swarm intelligence algorithms</article-title>. <source>Swarm Evol Comput</source>. <year>2011</year>;<volume>1</volume>(<issue>1</issue>):<fpage>3</fpage>&#x2013;<lpage>18</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.swevo.2011.02.002</pub-id>.</mixed-citation></ref>
</ref-list>
</back></article>

















