<?xml version="1.0" encoding="utf-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.0 20120330//EN" "JATS-journalpublishing1.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">INFORMATICA</journal-id>
<journal-title-group><journal-title>Informatica</journal-title></journal-title-group>
<issn pub-type="epub">1822-8844</issn><issn pub-type="ppub">0868-4952</issn><issn-l>0868-4952</issn-l>
<publisher>
<publisher-name>Vilnius University</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">INFO1168</article-id>
<article-id pub-id-type="doi">10.15388/Informatica.2018.156</article-id>
<article-categories><subj-group subj-group-type="heading">
<subject>Research Article</subject></subj-group></article-categories>
<title-group>
<article-title>Optimizing the Heliostat Field Layout by Applying Stochastic Population-Based Algorithms</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Cruz</surname><given-names>Nicolas C.</given-names></name><email xlink:href="ncalvocruz@ual.es">ncalvocruz@ual.es</email><xref ref-type="aff" rid="j_info1168_aff_001"/><xref ref-type="corresp" rid="cor1">∗</xref><bio>
<p><bold>N.C. Cruz</bold> is a predoctoral researcher at the Informatics Department at University of Almería, Spain. He studied the degree and master in computer engineering at the University of Almería. He is currently doing his PhD thanks to the Spanish FPU program. His publications and more information about him can be found in <uri>www.hpca.ual.es/~ncalvo</uri>. His research interests are solar energy, global optimization and high performance computing.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Redondo</surname><given-names>Juana L.</given-names></name><email xlink:href="jlredondo@ual.es">jlredondo@ual.es</email><xref ref-type="aff" rid="j_info1168_aff_001"/><bio>
<p><bold>J.L. Redondo</bold> is a researcher at the Informatics Department at University of Almerría, Spain. She is a fellow of the Spanish ‘Ramón y Cajal’ contract program, co-financed by the European Social Fund. Some of her publications are available at <ext-link ext-link-type="uri" xlink:href="http://www.scopus.com/authid/detail.uri?authorId=35206862500">www.scopus.com/authid/detail.uri?authorId=35206862500</ext-link>. Her research interests include high performance computing, global optimization and applications.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Álvarez</surname><given-names>Jose D.</given-names></name><email xlink:href="jhervas@ual.es">jhervas@ual.es</email><xref ref-type="aff" rid="j_info1168_aff_001"/><bio>
<p><bold>J.D. Álvarez</bold> is a postdoctoral researcher of Informatics Department at the University of Almería, Spain. He obtained, in 2008, from the same university, the PhD degree in Automatic Control in Solar Plants. Currently, he is a fellow of the Spanish ‘Ramón y Cajal’ contract program, co-financed by the European Social Fund. Some of his publications can be found in <ext-link ext-link-type="uri" xlink:href="http://www.scopus.com/authid/detail.uri?authorId=16303147700">www.scopus.com/authid/detail.uri?authorId=16303147700</ext-link>. His research interests cover automatic control, solar energy and energy efficient in buildings.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Berenguel</surname><given-names>Manuel</given-names></name><email xlink:href="beren@ual.es">beren@ual.es</email><xref ref-type="aff" rid="j_info1168_aff_001"/><bio>
<p><bold>M. Berenguel</bold> is a professor of automatic control and systems engineering and head of the research group ‘Automatic Control, Robotics and Mechatronics’ at the University of Almería, Spain. Some of his publications can be found in <ext-link ext-link-type="uri" xlink:href="http://www.scopus.com/authid/detail.uri?authorId=6701834872">www.scopus.com/authid/detail.uri?authorId=6701834872</ext-link>. His research interests are in control education and in predictive and hierarchical control, with applications to solar energy systems, agriculture and biotechnology.</p></bio>
</contrib>
<contrib contrib-type="author">
<name><surname>Ortigosa</surname><given-names>Pilar M.</given-names></name><email xlink:href="ortigosa@ual.es">ortigosa@ual.es</email><xref ref-type="aff" rid="j_info1168_aff_001"/><bio>
<p><bold>P.M. Ortigosa</bold> is a professor at the Informatics Department at University of Almería, Spain. She obtained her PhD from the University of Málaga. Her publications can be found in <ext-link ext-link-type="uri" xlink:href="http://www.scopus.com/authid/detail.uri?authorId=6602759441">www.scopus.com/authid/detail.uri?authorId=6602759441</ext-link>. Her research interests include high performance computing, global optimization and applications.</p></bio>
</contrib>
<aff id="j_info1168_aff_001">Informatics Department, <institution>University of Almería (ceiA3)</institution>, <country>Spain</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>∗</label>Corresponding author.</corresp>
</author-notes>
<pub-date pub-type="ppub"><year>2018</year></pub-date><pub-date pub-type="epub"><day>1</day><month>1</month><year>2018</year></pub-date><volume>29</volume><issue>1</issue><fpage>21</fpage><lpage>39</lpage><history><date date-type="received"><month>5</month><year>2017</year></date><date date-type="accepted"><month>12</month><year>2017</year></date></history>
<permissions><copyright-statement>© 2018 Vilnius University</copyright-statement><copyright-year>2018</copyright-year>
<license license-type="open-access" xlink:href="http://creativecommons.org/licenses/by/4.0/">
<license-p>Open access article under the <ext-link ext-link-type="uri" xlink:href="http://creativecommons.org/licenses/by/4.0/">CC BY</ext-link> license.</license-p></license></permissions>
<abstract>
<p>The heliostat field of Solar Central Receiver Systems takes up to 50% of the initial investment and can cause up to 40% of energetic loss in operation. Hence, it must be carefully optimized. Design procedures usually rely on particular heliostat distribution models. In this work, optimization of the promising biomimetic distribution model is studied. Two stochastic population-based optimizers are applied to maximize the optical efficiency of fields: a genetic algorithm, micraGA, and a memetic one, UEGO. As far as the authors know, they have not been previously applied to this problem. However, they could be a good option according to their structure. Additionally, a Brute-Force Grid is used to estimate the global optimum and a Pure-Random Search is applied as a baseline reference. Our empirical results show that many different configurations of the distribution model lead to very similar solutions. Although micraGA exhibits poor performance, UEGO achieves the best results in a reduced time and seems appropriate for the problem at hand.</p>
</abstract>
<kwd-group>
<label>Key words</label>
<kwd>heliostat field</kwd>
<kwd>optimization</kwd>
<kwd>population-based algorithms</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="j_info1168_s_001">
<label>1</label>
<title>Introduction</title>
<p>Solar Central Receiver Systems, SCRS in what follows, are an interesting and promising technology in the field of solar-based renewable energies. They were initially proposed in 1957 and, since then, they have been under continuous development (Gordon, <xref ref-type="bibr" rid="j_info1168_ref_014">2013</xref>; p. 618). This kind of power facilities is especially characterized by its scalability, operating efficiency and output stability (Avila-Marin <italic>et al.</italic>, <xref ref-type="bibr" rid="j_info1168_ref_002">2013</xref>; Besarati and Goswami, <xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>; Collado and Guallar, <xref ref-type="bibr" rid="j_info1168_ref_008">2012</xref>, <xref ref-type="bibr" rid="j_info1168_ref_009">2013</xref>).</p>
<p>In simple terms, SCRS consist of a set of high reflectance mirrors, called ‘heliostats’, and a radiation receiver which is usually on top of a tower. Heliostats track the apparent movement of the Sun throughout days to concentrate solar incident radiation over the receiver. Consequently, it is under high-density solar radiation. Then, a heat-interchange process is carried out in it to heat a working fluid. This fluid can be finally used in a classic turbine cycle to generate electric energy. Due to the high temperatures reached, thermodynamic performance is high (Besarati and Goswami, <xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>; Collado and Guallar, <xref ref-type="bibr" rid="j_info1168_ref_008">2012</xref>). In Fig. <xref rid="j_info1168_fig_001">1</xref>, a simple SCRS facility is depicted. Further information about them can be found in Alexopoulos and Hoffschmidt (<xref ref-type="bibr" rid="j_info1168_ref_001">2017</xref>), Behar <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_003">2013</xref>), Camacho <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_006">2012</xref>), Müller-Steinhagen (<xref ref-type="bibr" rid="j_info1168_ref_022">2013</xref>), Reddy <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_031">2013</xref>), Stine and Geyer (<xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>).</p>
<fig id="j_info1168_fig_001">
<label>Fig. 1</label>
<caption>
<p>Scheme of a SCRS system.</p>
</caption>
<graphic xlink:href="info1168_g001.jpg"/>
</fig>
<p>This work deals with optimizing the heliostat field of SCRS facilities, which is also known as ‘collector subsystem’. The set of heliostats and their configuration define this part of facilities. This subsystem can cause up to 40% of operating energetic loss and can take up to 50% of the initial investment according to Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Jones <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_019">2007</xref>). Therefore, it must be carefully optimized when designing a SCRS power facility. Several optimization objectives are possible. For instance, optical efficiency maximization, as studied in Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>), is one of them. Production cost reduction, as mentioned in Ramos and Ramos (<xref ref-type="bibr" rid="j_info1168_ref_029">2012</xref>), Sánchez and Romero (<xref ref-type="bibr" rid="j_info1168_ref_035">2006</xref>), is another valid option. Finally, some variations and combinations of the previous ones, as studied in Zhang (<xref ref-type="bibr" rid="j_info1168_ref_040">2007</xref>), are also common objective functions.</p>
<p>As summarized in Carrizosa <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_007">2014</xref>), the design of heliostat fields is usually based on two basic strategies. The first one is to apply and optimize a certain heuristic distribution pattern. The classic radial staggered model, proposed by the University of Houston (Stine and Geyer, <xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>; Chap. 10), and the biomimetic spiral, recently proposed by Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>), are two examples of patterns. In Mutuberria <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_023">2015</xref>), where several patterns are compared, more examples and references can be found. The second strategy is to select final heliostat positions from a defined set (as iteratively done in Sánchez and Romero, <xref ref-type="bibr" rid="j_info1168_ref_035">2006</xref>). However, a mixed approach is usually applied: An over-sized field is initially generated by following a particular distribution model to get a set of available positions over the ground. Then, the best ones are finally selected until the real power requirements are fulfilled. In fact, this strategy is quite common and it has been used, for instance, in Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>), Ramos and Ramos (<xref ref-type="bibr" rid="j_info1168_ref_029">2012</xref>), Pitz-Paal <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_028">2011</xref>), Sánchez and Romero (<xref ref-type="bibr" rid="j_info1168_ref_035">2006</xref>). This latter approach permits more degrees of freedom to get optimal fields.</p>
<p>In this work, parametric optimization of the biomimetic spiral pattern is studied. The design objective is to maximize the optical efficiency of fields. This distribution scheme could be ultimately applied to both directly generate final fields and in a hybrid design methodology. Thus, it is important to rely on an efficient and reliable optimizer to adjust its design variables. In this context, two stochastic population-based algorithms, called micraGA and UEGO, are applied to solve the problem at hand. Their structure seems to be especially suitable to solve it. However, as far as the authors know, none of them had been previously used in this situation. Hence, the main goal of this work is to study their behaviour in it. Additionally, a Pure-Random Search algorithm is used to study the complexity of the problem and to get a baseline perspective of the quality of solutions. Finally, a Brute-Force Grid is applied to approximate where the optimal solution is deterministically. In contrast to the active trend of deploying large fields with several thousands of heliostats (e.g. 4120 units in Khi Solar One and 173500 ones in Ivanpah), this paper considers small and medium size fields. Specifically, facilities with several hundreds of heliostats, like CESA-I and PS10, with 300 and 624 units respectively, define the scope of interest. This is due to their lower requirements of space and initial investment, i.e. higher applicability. However, the size of the different problems is gradually increased, which makes it possible to discover general patterns. The results obtained seem scalable.</p>
<p>The rest of the paper is organized as follows: In Section <xref rid="j_info1168_s_002">2</xref>, the optimization problem and the objective function are exposed. In Section <xref rid="j_info1168_s_007">3</xref>, the different optimizers applied to the problem are described. In Section <xref rid="j_info1168_s_012">4</xref>, the experiments carried out and the results obtained are shown. Finally, in Section <xref rid="j_info1168_s_013">5</xref>, conclusions are drawn and future work is exposed.</p>
</sec>
<sec id="j_info1168_s_002">
<label>2</label>
<title>Objective Function</title>
<p>The design of heliostat fields, as introduced, will be aimed at maximizing yearly irradiance weighted efficiency, <inline-formula id="j_info1168_ineq_001"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">y</mml:mi>
<mml:mi mathvariant="italic">e</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{year,I}}$]]></tex-math></alternatives></inline-formula>. It is a common objective function which is used, for instance, in Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>). It is focused on the optical efficiency of the heliostat field, while also considering the available solar radiation at every instant through the year. This magnitude can be formulated as Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>): 
<disp-formula id="j_info1168_eq_001">
<label>(1)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">year</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">day</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>365</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∫</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">sunrise</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">sunset</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mspace width="0.1667em"/>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∑</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">day</mml:mi>
<mml:mo>=</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mn>365</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:msubsup>
<mml:mrow>
<mml:mo largeop="false" movablelimits="false">∫</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">sunrise</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">sunset</mml:mi>
</mml:mrow>
</mml:msubsup>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mspace width="0.1667em"/>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:mi mathvariant="italic">t</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\eta _{\mathit{year},I}}=\frac{{\textstyle\textstyle\sum _{\mathit{day}=1}^{365}}{\textstyle\textstyle\int _{\mathit{sunrise}}^{\mathit{sunset}}}{I_{b}}(t)\eta (t)\hspace{0.1667em}dt}{{\textstyle\textstyle\sum _{\mathit{day}=1}^{365}}{\textstyle\textstyle\int _{\mathit{sunrise}}^{\mathit{sunset}}}{I_{b}}(t)\hspace{0.1667em}dt}\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_info1168_ineq_002"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${I_{b}}(t)$]]></tex-math></alternatives></inline-formula> is the instantaneous beam irradiance and <inline-formula id="j_info1168_ineq_003"><alternatives><mml:math>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\eta (t)$]]></tex-math></alternatives></inline-formula> is the instantaneous optical efficiency. It must be noted that Eq. (<xref rid="j_info1168_eq_001">1</xref>) is defined in abstract terms. Hence, it must be configured by selecting the appropriate model for every encapsulated concept. These aspects are detailed in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>), where the unweighted version of the equation is also included.</p>
<p>The optical efficiency of a field, <inline-formula id="j_info1168_ineq_004"><alternatives><mml:math>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\eta (t)$]]></tex-math></alternatives></inline-formula>, measures its performance in redirecting and concentrating incident solar radiation over the receiver at every instant <italic>t</italic> (Stine and Geyer, <xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>; Chap. 10). In this context, an instant is equivalent to a certain solar position and incident radiation density on a particular day and time. It defines the heliostat field configuration. As an efficiency factor, <inline-formula id="j_info1168_ineq_005"><alternatives><mml:math>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\eta (t)$]]></tex-math></alternatives></inline-formula> is defined between 0 and 1 (minimum and maximum possible efficiency, respectively). It is internally formed by a selected set of sub-factors which model different sources of energy loss in heliostat fields. Discarding any of them is equivalent to assume it as 1, i.e. not causing energy loss. For the scope of this work, <italic>η</italic> is defined for every heliostat as in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>): 
<disp-formula id="j_info1168_eq_002">
<label>(2)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo>=</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">cos</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">itc</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>·</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ref</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ \eta ={\eta _{\mathit{cos}}}\cdot {\eta _{sb}}\cdot {\eta _{\mathit{itc}}}\cdot {\eta _{aa}}\cdot {\eta _{\mathit{ref}}}\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_info1168_ineq_006"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">cos</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{\mathit{cos}}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_info1168_ineq_007"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{sb}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_info1168_ineq_008"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">itc</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{\mathit{itc}}}$]]></tex-math></alternatives></inline-formula>, <inline-formula id="j_info1168_ineq_009"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{aa}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_info1168_ineq_010"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ref</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{\mathit{ref}}}$]]></tex-math></alternatives></inline-formula> are the cosine, shadowing and blocking, interception, atmospheric attenuation and reflectivity efficiency, respectively. These concepts will be summarized later in this section while also including the particular model applied to their calculation. Thus, <inline-formula id="j_info1168_ineq_011"><alternatives><mml:math>
<mml:mi mathvariant="italic">η</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\eta (t)$]]></tex-math></alternatives></inline-formula> in Eq. (<xref rid="j_info1168_eq_001">1</xref>) is referred to the average obtained from the values of every active heliostat. Further information about these efficiency factors can be found in Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Stine and Geyer (<xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>), Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>). Additionally, the alternative definition of Eq. (<xref rid="j_info1168_eq_002">2</xref>) used in Collado and Guallar (<xref ref-type="bibr" rid="j_info1168_ref_008">2012</xref>) is very descriptive. Its nomenclature not only includes time and the coordinates of heliostats but also the effect of their neighbours.</p>
<p>Instantaneous beam solar radiation, <inline-formula id="j_info1168_ineq_012"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">t</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[${I_{b}}(t)$]]></tex-math></alternatives></inline-formula>, weights pure optical efficiency. As introduced, it adds an energetic perspective to Eq. (<xref rid="j_info1168_eq_001">1</xref>). It modifies the instantaneous optical efficiency of a certain field considering the availability of solar radiation at every instant studied. This factor is also abstractly defined and the selected model will be described later in this section.</p>
<p>The instantaneous component, <italic>t</italic>, encompasses a year, which is also divided into days. Days are finally considered as raw sets of instants, i.e. apparent solar positions. The way in which days are discretized is also abstract and configurable. For instance, in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>), some interesting notes about considering a variable time step are presented. However, those strategies are out of the scope of this work and a constant time step will be used to compare the selected optimizers.</p>
<fig id="j_info1168_fig_002">
<label>Fig. 2</label>
<caption>
<p>Global scheme of the problem to solve.</p>
</caption>
<graphic xlink:href="info1168_g002.jpg"/>
</fig>
<p>Figure <xref rid="j_info1168_fig_002">2</xref> gives an overview of the problem to solve. Eq. (<xref rid="j_info1168_eq_001">1</xref>), which directly depends on the heliostat field design, is the objective function to be maximized. It can be seen as simulation procedure of this part of SCRS facilities. A common context defined by the number of time steps per year, the configuration of every internal model, etc., is assumed. Therefore, it is necessary to define the design of candidate fields to be analysed with the underlying objective function while optimizing. As introduced, fields will be designed by directly applying the biomimetic spiral pattern proposed in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>). Consequently, the optimizers applied will need to find the parameters of this pattern, ‘<italic>a</italic>’ and ‘<italic>b</italic>’, that generates a field with a maximum value of Eq. (<xref rid="j_info1168_eq_001">1</xref>). As usual in engineering problems, the objective function does not directly depend on the design variables. Next, the internal models selected for Eq. (<xref rid="j_info1168_eq_001">1</xref>) and the biomimetic pattern are described.</p>
<sec id="j_info1168_s_003">
<label>2.1</label>
<title>Sun Positioning</title>
<p>The configuration of heliostat fields is defined by the apparent solar position at every instant, <italic>t</italic>. The model explained in Stine and Geyer (<xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>; Chap. 3) has been selected to calculate the apparent solar position throughout the year. Its coordinate system and conventions have been followed too. Any apparent solar position is defined by its azimuth and altitude angles, <italic>A</italic> and <italic>α</italic>, respectively. They are calculated depending on solar declination (<italic>δ</italic>), latitude (<italic>ϕ</italic>) and hour angle (<italic>ω</italic>): <disp-formula-group id="j_info1168_dg_001">
<disp-formula id="j_info1168_eq_003">
<label>(3)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="left">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:mi mathvariant="italic">α</mml:mi>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo movablelimits="false">sin</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mo movablelimits="false">sin</mml:mo>
<mml:mi mathvariant="italic">δ</mml:mi>
<mml:mo movablelimits="false">sin</mml:mo>
<mml:mi mathvariant="italic">ϕ</mml:mi>
<mml:mo>+</mml:mo>
<mml:mo movablelimits="false">cos</mml:mo>
<mml:mi mathvariant="italic">δ</mml:mi>
<mml:mo movablelimits="false">cos</mml:mo>
<mml:mi mathvariant="italic">ω</mml:mi>
<mml:mo movablelimits="false">cos</mml:mo>
<mml:mi mathvariant="italic">ϕ</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ \alpha ={\sin ^{-1}}(\sin \delta \sin \phi +\cos \delta \cos \omega \cos \phi ),\]]]></tex-math></alternatives>
</disp-formula>
<disp-formula id="j_info1168_eq_004">
<label>(4)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="left">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mo movablelimits="false">sin</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo maxsize="2.03em" minsize="2.03em" fence="true" mathvariant="normal">(</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mo movablelimits="false">cos</mml:mo>
<mml:mi mathvariant="italic">δ</mml:mi>
<mml:mo movablelimits="false">sin</mml:mo>
<mml:mi mathvariant="italic">ω</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo movablelimits="false">cos</mml:mo>
<mml:mi mathvariant="italic">α</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo maxsize="2.03em" minsize="2.03em" fence="true" mathvariant="normal">)</mml:mo>
<mml:mo>;</mml:mo>
<mml:mspace width="1em"/>
<mml:mtable columnspacing="4.0pt" equalrows="false" columnlines="none" equalcolumns="false" columnalign="left left">
<mml:mtr>
<mml:mtd class="array">
<mml:mi mathvariant="italic">A</mml:mi>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>180</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>∘</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo>−</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mspace width="1em"/>
</mml:mtd>
<mml:mtd class="array">
<mml:mtext>if</mml:mtext>
<mml:mspace width="2.5pt"/>
<mml:mo movablelimits="false">cos</mml:mo>
<mml:mi mathvariant="italic">ω</mml:mi>
<mml:mo>⩾</mml:mo>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true" mathvariant="normal">(</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:mo movablelimits="false">tan</mml:mo>
<mml:mi mathvariant="italic">δ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo movablelimits="false">tan</mml:mo>
<mml:mi mathvariant="italic">ϕ</mml:mi>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo maxsize="1.61em" minsize="1.61em" fence="true" mathvariant="normal">)</mml:mo>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="array">
<mml:mi mathvariant="italic">A</mml:mi>
<mml:mo>=</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>360</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>∘</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>′</mml:mo>
</mml:mrow>
</mml:msup>
<mml:mspace width="1em"/>
</mml:mtd>
<mml:mtd class="array">
<mml:mtext>otherwise</mml:mtext>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {A^{\prime }}={\sin ^{-1}}\bigg(\frac{-\cos \delta \sin \omega }{\cos \alpha }\bigg);\hspace{1em}\begin{array}{l@{\hskip4.0pt}l}A={180^{\circ }}-{A^{\prime }}\hspace{1em}& \text{if}\hspace{2.5pt}\cos \omega \geqslant \Big(\frac{\tan \delta }{\tan \phi }\Big),\\ {} A={360^{\circ }}+{A^{\prime }}\hspace{1em}& \text{otherwise}.\end{array}\]]]></tex-math></alternatives>
</disp-formula>
</disp-formula-group></p>
</sec>
<sec id="j_info1168_s_004">
<label>2.2</label>
<title>Solar Radiation</title>
<p>The impact of the optical performance of a certain field depends on incident solar radiation density. Independently of their design, fields cannot concentrate much power on the receiver when there is no much solar energy to be profited. Therefore, it is important to weigh optical efficiency values with solar radiation density at every instant <italic>t</italic>. The model used to estimate direct solar radiation density depends on the concept of ‘air mass’ (<inline-formula id="j_info1168_ineq_013"><alternatives><mml:math>
<mml:mi mathvariant="italic">AM</mml:mi></mml:math><tex-math><![CDATA[$\mathit{AM}$]]></tex-math></alternatives></inline-formula>) (explained in Stine and Geyer, <xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>; Chap. 2) and the location height above sea level. The expression of this model, in (kW/m<inline-formula id="j_info1168_ineq_014"><alternatives><mml:math>
<mml:msup>
<mml:mrow/>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${^{2}}$]]></tex-math></alternatives></inline-formula>), is (Laue, <xref ref-type="bibr" rid="j_info1168_ref_020">1970</xref>): 
<disp-formula id="j_info1168_eq_005">
<label>(5)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>1.353</mml:mn>
<mml:mo>·</mml:mo>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true">{</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>1</mml:mn>
<mml:mo>−</mml:mo>
<mml:mn>0.14</mml:mn>
<mml:mi mathvariant="italic">h</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mn>0</mml:mn>
<mml:mo>.</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>7</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">M</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>0.678</mml:mn>
</mml:mrow>
</mml:msup>
</mml:mrow>
</mml:msup>
<mml:mo>+</mml:mo>
<mml:mn>0.14</mml:mn>
<mml:mi mathvariant="italic">h</mml:mi>
<mml:mo maxsize="1.19em" minsize="1.19em" fence="true">}</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {I_{b}}=1.353\cdot \big\{(1-0.14h)0.{7^{A{M^{0.678}}}}+0.14h\big\}\]]]></tex-math></alternatives>
</disp-formula> 
where <italic>h</italic> is the location height above sea level in kilometers. It must be noted that <inline-formula id="j_info1168_ineq_015"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">I</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${I_{b}}$]]></tex-math></alternatives></inline-formula> depends on time because air mass varies with solar altitude.</p>
</sec>
<sec id="j_info1168_s_005">
<label>2.3</label>
<title>Field Efficiency</title>
<p>The optical efficiency of heliostat fields depends on these concepts, which are defined for every single heliostat and averaged to compute Eq. (<xref rid="j_info1168_eq_002">2</xref>): 
<def-list><def-item><term><bold>Cosine efficiency,</bold> <inline-formula id="j_info1168_ineq_016"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo movablelimits="false">cos</mml:mo>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{\cos }}$]]></tex-math></alternatives></inline-formula><bold>:</bold></term><def>
<p>profitable reflective area of heliostats due to their orientation. According to the Law of Reflection, it is derived from the cosine of the angle formed by the incident solar beam with the heliostat normal direction: 
<disp-formula id="j_info1168_eq_006">
<label>(6)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo movablelimits="false">cos</mml:mo>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">S</mml:mi>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\eta _{\cos }}=S\cdot H\]]]></tex-math></alternatives>
</disp-formula> 
where <italic>S</italic> and <italic>H</italic> are unit vectors expressing the solar and heliostat normal directions (the coordinate system used is described in Stine and Geyer, <xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>; Sec. 8.5).</p></def></def-item><def-item><term><bold>Shadowing and blocking efficiency,</bold> <inline-formula id="j_info1168_ineq_017"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{sb}}$]]></tex-math></alternatives></inline-formula><bold>:</bold></term><def>
<p>reflective area of heliostats neither shadowed nor blocked by any other one. As proposed in Ramos and Ramos (<xref ref-type="bibr" rid="j_info1168_ref_030">2014</xref>), its computation is addressed as a polygon clipping problem. Once every heliostat has been oriented for the simulated instant, the <inline-formula id="j_info1168_ineq_018"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{sb}}$]]></tex-math></alternatives></inline-formula> factor of a certain one, <inline-formula id="j_info1168_ineq_019"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>, is computed after four steps. First, the four vertexes of the <inline-formula id="j_info1168_ineq_020"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${P_{s}}$]]></tex-math></alternatives></inline-formula> potentially shadowing heliostats are projected, in the direction of sunlight, on the plane defined by the reflective surface of <inline-formula id="j_info1168_ineq_021"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>. By proceeding this way, <inline-formula id="j_info1168_ineq_022"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${P_{s}}$]]></tex-math></alternatives></inline-formula> polygons are generated over the plane of <inline-formula id="j_info1168_ineq_023"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>. This step is depicted in Fig. <xref rid="j_info1168_fig_003">3</xref>. Second, the four vertexes of the <inline-formula id="j_info1168_ineq_024"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${P_{b}}$]]></tex-math></alternatives></inline-formula> potentially blocking heliostats are also projected on the plane of <inline-formula id="j_info1168_ineq_025"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>, but in the direction of their target vector. Similarly, <inline-formula id="j_info1168_ineq_026"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">P</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${P_{b}}$]]></tex-math></alternatives></inline-formula> polygons are generated over the plane of <inline-formula id="j_info1168_ineq_027"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>. Third, every generated polygon is subtracted from the rectangle of the reflective surface of <inline-formula id="j_info1168_ineq_028"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>, which is on its infinite plane. Finally, <inline-formula id="j_info1168_ineq_029"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{sb}}$]]></tex-math></alternatives></inline-formula> of <inline-formula id="j_info1168_ineq_030"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula> is the ratio of the area of the polygon obtained after subtraction, <inline-formula id="j_info1168_ineq_031"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${A_{S}}$]]></tex-math></alternatives></inline-formula>, to the original one, <inline-formula id="j_info1168_ineq_032"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${A_{T}}$]]></tex-math></alternatives></inline-formula>, as expressed in Eq. (<xref rid="j_info1168_eq_007">7</xref>). 
<disp-formula id="j_info1168_eq_007">
<label>(7)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">s</mml:mi>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">S</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\eta _{sb}}=\frac{{A_{S}}}{{A_{T}}}.\]]]></tex-math></alternatives>
</disp-formula>
</p>
<p>The heliostats previously labelled as ‘potentially shadowing/blocking’ are selected, for every heliostat <inline-formula id="j_info1168_ineq_033"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula>, by applying an adaptation of the ‘bounding sphere’ method mentioned in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>). Specifically, <inline-formula id="j_info1168_ineq_034"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">h</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">i</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${h_{i}}$]]></tex-math></alternatives></inline-formula> is wrapped in a sphere and projected on the plane. After that, it is translated towards the Sun and the receiver. If the sphere of any other heliostat can intercept the translation trajectory, that one is considered a candidate. The type will be of ‘shadowing’ or ‘blocking’ when the translation is towards the Sun or the receiver, respectively. This procedure is depicted in Fig. <xref rid="j_info1168_fig_004">4</xref>: <inline-formula id="j_info1168_ineq_035"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${H_{2}}$]]></tex-math></alternatives></inline-formula> could block <inline-formula id="j_info1168_ineq_036"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${H_{1}}$]]></tex-math></alternatives></inline-formula> because the distance <italic>d</italic> to the trajectory of <inline-formula id="j_info1168_ineq_037"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">H</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>1</mml:mn>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${H_{1}}$]]></tex-math></alternatives></inline-formula> towards the receiver is less than the sum of the radii of both spheres. Further information regarding aspects such as the way in which heliostats are oriented can be found in Stine and Geyer (<xref ref-type="bibr" rid="j_info1168_ref_037">2001</xref>; Sec. 8.5). Polygon clipping methods are also out of the scope of this work. However, the algorithms of Greiner and Hormann (<xref ref-type="bibr" rid="j_info1168_ref_015">1998</xref>) and Vatti (<xref ref-type="bibr" rid="j_info1168_ref_038">1992</xref>) are good options for the interested reader. Whereas the algorithm of Greiner–Hormann was used in Ramos and Ramos (<xref ref-type="bibr" rid="j_info1168_ref_030">2014</xref>), the method of Vatti has been used in this work through the implementation of Johnson (<xref ref-type="bibr" rid="j_info1168_ref_018">2012</xref>). 
<fig id="j_info1168_fig_003">
<label>Fig. 3</label>
<caption>
<p>Shadowing heliostat projection on the studied one.</p>
</caption>
<graphic xlink:href="info1168_g003.jpg"/>
</fig>
</p>
<p>
<fig id="j_info1168_fig_004">
<label>Fig. 4</label>
<caption>
<p>Selection of candidate heliostats ‘bounding sphere’.</p>
</caption>
<graphic xlink:href="info1168_g004.jpg"/>
</fig>
</p></def></def-item><def-item><term><bold>Interception efficiency,</bold> <inline-formula id="j_info1168_ineq_038"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">itc</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{\mathit{itc}}}$]]></tex-math></alternatives></inline-formula><bold>:</bold></term><def>
<p>ratio of success in targeting the receiver. It is estimated once depending on the dimensions of the heliostats and the receiver as in Cristóbal (<xref ref-type="bibr" rid="j_info1168_ref_011">2011</xref>), where the model proposed by Collado and Turégano (<xref ref-type="bibr" rid="j_info1168_ref_010">1989</xref>) is implemented: 
<disp-formula id="j_info1168_eq_008">
<label>(8)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">int</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo><mml:mstyle displaystyle="true">
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="italic">l</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msqrt>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mo>·</mml:mo>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">H</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo><mml:mstyle displaystyle="false">
<mml:mfrac>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msqrt>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mo>−</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
<mml:mrow>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
</mml:mrow>
</mml:mfrac>
</mml:mstyle>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\eta _{\mathit{int}}}=\frac{pH(\frac{l{w_{r}}}{2\sqrt{2}{\sigma _{r}}},-{a_{r}},{a_{r}})\cdot pH(\frac{d{w_{r}}}{2\sqrt{2}{\sigma _{r}}},-{a_{r}},{a_{r}})}{{a_{r}^{2}}}\]]]></tex-math></alternatives>
</disp-formula> 
where <inline-formula id="j_info1168_ineq_039"><alternatives><mml:math>
<mml:mi mathvariant="italic">l</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$l{w_{r}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_info1168_ineq_040"><alternatives><mml:math>
<mml:mi mathvariant="italic">d</mml:mi>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">w</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[$d{w_{r}}$]]></tex-math></alternatives></inline-formula> are the height and diameter of the receiver, respectively. <inline-formula id="j_info1168_ineq_041"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\sigma _{r}}$]]></tex-math></alternatives></inline-formula> is the standard deviation of sunshape. <inline-formula id="j_info1168_ineq_042"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${a_{r}}$]]></tex-math></alternatives></inline-formula> is a compound parameter defined for convenience and computed as <inline-formula id="j_info1168_ineq_043"><alternatives><mml:math>
<mml:msqrt>
<mml:mrow>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:msub>
</mml:mrow>
</mml:msqrt>
<mml:mo mathvariant="normal" stretchy="false">/</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mn>2</mml:mn>
<mml:msqrt>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msqrt>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">σ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$\sqrt{{A_{T}}}/(2\sqrt{2}{\sigma _{r}})$]]></tex-math></alternatives></inline-formula>, where <inline-formula id="j_info1168_ineq_044"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">A</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">T</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${A_{T}}$]]></tex-math></alternatives></inline-formula> is the same area previously defined. Finally, <inline-formula id="j_info1168_ineq_045"><alternatives><mml:math>
<mml:mi mathvariant="italic">p</mml:mi>
<mml:mi mathvariant="italic">H</mml:mi></mml:math><tex-math><![CDATA[$pH$]]></tex-math></alternatives></inline-formula> is an auxiliary function and further information about it is available in Cristóbal (<xref ref-type="bibr" rid="j_info1168_ref_011">2011</xref>), Collado and Turégano (<xref ref-type="bibr" rid="j_info1168_ref_010">1989</xref>).</p></def></def-item><def-item><term><bold>Atmospheric attenuation efficiency,</bold> <inline-formula id="j_info1168_ineq_046"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{aa}}$]]></tex-math></alternatives></inline-formula><bold>:</bold></term><def>
<p>effect of the atmosphere on radiation reflected by heliostats. It has been selected the same model applied in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>). It depends on the distance between every heliostat and the receiver, <inline-formula id="j_info1168_ineq_047"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mi mathvariant="italic">e</mml:mi>
<mml:mi mathvariant="italic">c</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${d_{rec}}$]]></tex-math></alternatives></inline-formula>, as expressed in Eq. (<xref rid="j_info1168_eq_009">9</xref>). 
<disp-formula id="j_info1168_eq_009">
<label>(9)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true">
<mml:mtr>
<mml:mtd>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mi mathvariant="italic">a</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mfenced separators="" open="{" close="">
<mml:mrow>
<mml:mtable columnspacing="4.0pt" equalrows="false" columnlines="none" equalcolumns="false" columnalign="left left">
<mml:mtr>
<mml:mtd class="array">
<mml:mn>0.99321</mml:mn>
<mml:mo>−</mml:mo>
<mml:mn>0.0001176</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">rec</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>+</mml:mo>
<mml:mn>1.97</mml:mn>
<mml:mo>·</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>8</mml:mn>
</mml:mrow>
</mml:msup>
<mml:msubsup>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">rec</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msubsup>
<mml:mo>;</mml:mo>
<mml:mspace width="1em"/>
</mml:mtd>
<mml:mtd class="array">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">rec</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>⩽</mml:mo>
<mml:mn>1000</mml:mn>
<mml:mspace width="2.5pt"/>
<mml:mtext>m</mml:mtext>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
<mml:mtr>
<mml:mtd class="array">
<mml:mo movablelimits="false">exp</mml:mo>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>0.0001106</mml:mn>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">d</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">rec</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
<mml:mspace width="1em"/>
</mml:mtd>
<mml:mtd class="array">
<mml:mtext>otherwise</mml:mtext>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable>
</mml:mrow>
</mml:mfenced>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\eta _{aa}}=\left\{\begin{array}{l@{\hskip4.0pt}l}0.99321-0.0001176{d_{\mathit{rec}}}+1.97\cdot {10^{-8}}{d_{\mathit{rec}}^{2}};\hspace{1em}& {d_{\mathit{rec}}}\leqslant 1000\hspace{2.5pt}\text{m},\\ {} \exp (-0.0001106{d_{\mathit{rec}}})\hspace{1em}& \text{otherwise}.\end{array}\right.\]]]></tex-math></alternatives>
</disp-formula>
</p></def></def-item><def-item><term><bold>Reflectivity efficiency,</bold> <inline-formula id="j_info1168_ineq_048"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">η</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">ref</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\eta _{\mathit{ref}}}$]]></tex-math></alternatives></inline-formula><bold>:</bold></term><def>
<p>energy loss caused by the physical properties of reflective surfaces. It is assumed to be a common constant of heliostats.</p></def></def-item></def-list></p>
</sec>
<sec id="j_info1168_s_006">
<label>2.4</label>
<title>Biomimetic Distribution Model</title>
<p>The available heliostats are distributed according to the promising biomimetic layout proposed in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>). It has been successfully used to design fields of several hundreds of heliostats in Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>), which is the main target of the present study. This distribution pattern is also characterized by achieving a good trade-off between land use and field efficiency. For instance, in Mutuberria <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_023">2015</xref>), its good properties are also observed. The method is inspired by the spiral patterns of the phyllotaxis disc, like florets on the head of sunflowers. This pattern consists of two equations that define the position of every heliostat in polar coordinates (Noone <italic>et al.</italic>, <xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>):
<disp-formula-group id="j_info1168_dg_002">
<disp-formula id="j_info1168_eq_010">
<label>(10a)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="left">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">θ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mn>2</mml:mn>
<mml:mi mathvariant="italic">π</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">φ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mi mathvariant="italic">k</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {\theta _{k}}=2\pi {\varphi ^{-2}}k,\]]]></tex-math></alternatives>
</disp-formula>
<disp-formula id="j_info1168_eq_011">
<label>(10b)</label><alternatives><mml:math display="block">
<mml:mtable displaystyle="true" columnalign="left">
<mml:mtr>
<mml:mtd class="align-odd">
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub>
<mml:mo>=</mml:mo>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:msup>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">b</mml:mi>
</mml:mrow>
</mml:msup>
<mml:mo>.</mml:mo>
</mml:mtd>
</mml:mtr>
</mml:mtable></mml:math><tex-math><![CDATA[\[ {r_{k}}=a{k^{b}}.\]]]></tex-math></alternatives>
</disp-formula>
</disp-formula-group></p>
<p><inline-formula id="j_info1168_ineq_049"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">θ</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${\theta _{k}}$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_info1168_ineq_050"><alternatives><mml:math>
<mml:msub>
<mml:mrow>
<mml:mi mathvariant="italic">r</mml:mi>
</mml:mrow>
<mml:mrow>
<mml:mi mathvariant="italic">k</mml:mi>
</mml:mrow>
</mml:msub></mml:math><tex-math><![CDATA[${r_{k}}$]]></tex-math></alternatives></inline-formula> are the azimuthal and radial distance, respectively. <italic>k</italic> is the index of any heliostat as part of the spiral and <italic>φ</italic> is the golden ratio. However, <italic>a</italic> and <italic>b</italic> are the parameters of the pattern which are adjusted to vary the density of fields. Hence, they will be determined through optimization. Finally, it must be noted that azimuth values are measured clockwise from North direction, in radians. Radial distances are measured from the tower base, in meters. For instance, the field shown in Fig. <xref rid="j_info1168_fig_002">2</xref> follows this pattern.</p>
</sec>
</sec>
<sec id="j_info1168_s_007">
<label>3</label>
<title>Optimization Algorithms</title>
<p>The optimization problem described has been solved with four different algorithms: a genetic algorithm (called micraGA), a memetic global optimizer (called UEGO), a Pure-Random Search (that will be referred as PRS) and a Brute-Force Grid (named as BFG in what follows).</p>
<sec id="j_info1168_s_008">
<label>3.1</label>
<title>Genetic Algorithm: micraGA</title>
<p>Genetic algorithms, proposed by J. Holland in the late seventies (Holland, <xref ref-type="bibr" rid="j_info1168_ref_016">1975</xref>), are frequently used for complex black-box optimization problems. This is because their principles are not linked to any particular problem but to the evolution of species. This kind of algorithms is also usually applied to heliostat field optimization. For instance, they have been successfully used in Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), Ramos and Ramos (<xref ref-type="bibr" rid="j_info1168_ref_029">2012</xref>), Pitz-Paal <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_028">2011</xref>).</p>
<p>In this work, a genetic algorithm called micraGA has been designed to solve the problem summarized in Fig. <xref rid="j_info1168_fig_002">2</xref>. Each individual consists of: (i) a couple of values for variables <italic>a</italic> and <italic>b</italic> and (ii) the weighted efficiency of the corresponding field according to Eq. (<xref rid="j_info1168_eq_001">1</xref>). Three individuals can be seen in Fig. <xref rid="j_info1168_fig_005">5</xref>. Initial individuals are generated by randomly selecting their values for <italic>a</italic> and <italic>b</italic> in Eq. (10) within the search space. In case that random couples lead to inconsistent fields where some heliostats are too near each other, these couples are discarded and re-generated. The population size, defined by an input parameter, will be kept constant during the search. Once the initial population has been defined, this evolutionary procedure is repeated a given number of cycles: 
<def-list><def-item><term><bold>Selection:</bold></term><def>
<p>A certain even number of sets of randomly selected individuals is formed. Both the number of sets and their cardinality are user-defined parameters. Their values will be commented later in Section <xref rid="j_info1168_s_012">4</xref>. Then, the best individuals of all consecutive sets are paired to form a couple every two. This strategy, called ‘tournament selection’ (Redondo, <xref ref-type="bibr" rid="j_info1168_ref_032">2009</xref>), is more likely to attenuate strong genetic drifts in the population.</p></def></def-item><def-item><term><bold>Reproduction:</bold></term><def>
<p>A new descendant is generated from every previous couple. They result from averaging the values of the progenitors for <italic>a</italic> and <italic>b</italic>. This approach aims to obtain individuals that point to unknown local optima in the search space. Figure <xref rid="j_info1168_fig_005">5</xref> contains a depiction of this step.</p>
<p>
<fig id="j_info1168_fig_005">
<label>Fig. 5</label>
<caption>
<p>Reproduction step of micraGA.</p>
</caption>
<graphic xlink:href="info1168_g005.jpg"/>
</fig>
</p></def></def-item><def-item><term><bold>Mutation:</bold></term><def>
<p>Every existing individual is altered by adding a random increment to its values for <italic>a</italic> and <italic>b</italic>. However, to get a cooling procedure, increments are previously divided by a parameter raised to the current number of cycle. The limits considered when generating random increments and the cooling factor are part of the input parameters of micraGA. Any mutation is discarded if the altered individual is worse than the initial one.</p></def></def-item><def-item><term><bold>Replacement:</bold></term><def>
<p>At the end of every cycle, the population for the next one is formed by selecting the best individuals from the current population and its descendants. Tournament selection is applied again for this purpose.</p></def></def-item></def-list> Finally, it must be noted that reproduction and mutation might lead to unfeasible individuals. However, in contrast to correctness required at population initialization, this kind of individuals is permitted during the search. This approach aims to maintain as many explored zones as possible to be able to reach isolated optimal solutions. Nevertheless, the aptitude of this kind of individuals is heavily penalized by setting it to 0.</p>
</sec>
<sec id="j_info1168_s_009">
<label>3.2</label>
<title>Universal Evolutionary Global Optimizer: UEGO</title>
<p>The ‘Universal Evolutionary Global Optimizer’ (UEGO) is a memetic (Moscato, <xref ref-type="bibr" rid="j_info1168_ref_021">1989</xref>; Dawkins, <xref ref-type="bibr" rid="j_info1168_ref_013">1976</xref>) multi-modal optimization algorithm. It was presented in Jelasity (<xref ref-type="bibr" rid="j_info1168_ref_017">1998</xref>) as a method especially suitable to be parallelized and highly adaptable to different problems (Jelasity, <xref ref-type="bibr" rid="j_info1168_ref_017">1998</xref>; Ortigosa <italic>et al.</italic>, <xref ref-type="bibr" rid="j_info1168_ref_026">2001b</xref>, <xref ref-type="bibr" rid="j_info1168_ref_027">2007</xref>; Redondo <italic>et al.</italic>, <xref ref-type="bibr" rid="j_info1168_ref_033">2009a</xref>, <xref ref-type="bibr" rid="j_info1168_ref_034">2009b</xref>). The algorithm defines that of ‘species’ as its fundamental concept. Every species is the aggregation of a candidate solution and a certain attraction radius over the search space. The structure of UEGO is divided into two separate levels, a global and a local one. At the former one, an iterative management process of the set of species is defined. This procedure, which includes a cooling component to enhance convergence, is independent of the problem. However, the local level needs to be adjusted to the considered problem by selecting a local optimizer to use. This is an iconic property of memetic algorithms. This layered design is also determinant for the adaptability of UEGO to different problems.</p>
<p>For the problem at hand, species consist of: i) a couple of candidates values for <italic>a</italic> and <italic>b</italic>, ii) its aptitude according to Eq. (<xref rid="j_info1168_eq_001">1</xref>) and iii) its attraction radius. Figure <xref rid="j_info1168_fig_006">6</xref> shows a species adapted to this problem. Algorithm <xref rid="j_info1168_fig_007">1</xref> enumerates the steps of UEGO. As can be seen, its parameters are the maximum population size and executions of the objective function (<italic>MSpec</italic> and <italic>MEv</italic>, respectively), the number of search levels (<italic>NLev</italic>) and the minimum attraction radius (<italic>MR</italic>).</p>
<fig id="j_info1168_fig_006">
<label>Fig. 6</label>
<caption>
<p>UEGO species for the problem at hand.</p>
</caption>
<graphic xlink:href="info1168_g006.jpg"/>
</fig>
<p>According to Algorithm <xref rid="j_info1168_fig_007">1</xref>, at line 1, UEGO starts by randomly generating a species whose radius covers the whole search space. Next, it is locally optimized by applying the Solis &amp; Wets’ SASS algorithm (Solis and Wets, <xref ref-type="bibr" rid="j_info1168_ref_036">1981</xref>). This optimizer has been selected because it does not require any specific properties of the objective function. Besides, it has been previously and successfully coupled with UEGO (Redondo, <xref ref-type="bibr" rid="j_info1168_ref_032">2009</xref>). Then, at line 3, the main loop of UEGO is repeated for the remaining levels. As shown at line 4, every level <italic>i</italic> starts with the computation of three reference values. The first one, <inline-formula id="j_info1168_ineq_051"><alternatives><mml:math>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$r[i]$]]></tex-math></alternatives></inline-formula>, is the attraction radius that will be linked to every new species. Radii are progressively reduced, according to an exponential progression, until the minimum value defined by the user. The second one, <inline-formula id="j_info1168_ineq_052"><alternatives><mml:math>
<mml:mi mathvariant="italic">new</mml:mi>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$\mathit{new}[i]$]]></tex-math></alternatives></inline-formula>, is the number of objective function evaluations allowed to create new species. The last one, <inline-formula id="j_info1168_ineq_053"><alternatives><mml:math>
<mml:mi mathvariant="italic">n</mml:mi>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$n[i]$]]></tex-math></alternatives></inline-formula>, is the maximum number of objective function evaluations allowed to optimize species locally. Next, at line 5, new promising species are created within the zones defined by the existing ones. After that, at line 6, any overlapping species are fused depending on <inline-formula id="j_info1168_ineq_054"><alternatives><mml:math>
<mml:mi mathvariant="italic">r</mml:mi>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mi mathvariant="italic">i</mml:mi>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$r[i]$]]></tex-math></alternatives></inline-formula> and the Euclidean distance between their centres, i.e. the <inline-formula id="j_info1168_ineq_055"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">a</mml:mi>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mi mathvariant="italic">b</mml:mi>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$(a,b)$]]></tex-math></alternatives></inline-formula> points in the search space. Figure <xref rid="j_info1168_fig_008">7</xref> includes a depiction of this step. At line 7, if the maximum number of species has been exceeded, the most recent ones, which have the shortest radius, are removed. This approach makes premature convergence more difficult to occur because the search scope is kept wide. Later, at line 8, the existing species are locally optimized. It must be noted that this can cause that their centres are moved in the search space. Finally, the possibility of fusing nearby species is re-analysed at line 9.</p>
<fig id="j_info1168_fig_007">
<label>Algorithm 1:</label>
<caption>
<p>UEGO algorithm</p>
</caption>
<graphic xlink:href="info1168_g007.jpg"/>
</fig>
<fig id="j_info1168_fig_008">
<label>Fig. 7</label>
<caption>
<p>Fusion of two species in UEGO.</p>
</caption>
<graphic xlink:href="info1168_g008.jpg"/>
</fig>
<p>Unfeasible solutions are allowed but penalized in the same way as in micraGA. Further information about UEGO and its configuration can be found in Redondo (<xref ref-type="bibr" rid="j_info1168_ref_032">2009</xref>), Ortigosa <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_025">2001a</xref>).</p>
</sec>
<sec id="j_info1168_s_010">
<label>3.3</label>
<title>Pure-Random Search: PRS</title>
<p>Pure-Random Search, PRS in what follows, is the simplest global optimization algorithm (Brooks, <xref ref-type="bibr" rid="j_info1168_ref_005">1958</xref>). It consists in randomly generating solutions in the search space while the best one achieved so far is kept as a reference. Despite its simplicity, when the number of iterations allowed increases to infinity, the probability of finding a global optimum tends to 1 (Brooks, <xref ref-type="bibr" rid="j_info1168_ref_005">1958</xref>). However, this approach is more theoretically interesting than applicable.</p>
<p>For the problem at hand, PRS simply needs to generate a random couple of parameters <italic>a</italic> and <italic>b</italic> for Eq. (10) at each iteration. The corresponding field of that candidate solution is then evaluated according to Eq. (<xref rid="j_info1168_eq_001">1</xref>). In case that it outperforms the previous reference, the new one is registered as the best solution known. This procedure is repeated for an user-defined number of iterations. After that, PRS finally returns the reference as the solution.</p>
<p>In this work, PRS has been initially selected to get a baseline reference for analysing the results of population-based optimizers. It can also be used to appreciate the problem complexity.</p>
</sec>
<sec id="j_info1168_s_011">
<label>3.4</label>
<title>Brute-Force Grid: BFG</title>
<p>Since all the previous methods are stochastic, they do not guarantee to obtain the same results after different executions. Furthermore, the optimal configuration of Eq. (10) is not formally known for the considered conditions. Consequently, a Brute-Force Grid (BFG) is applied to get a configurable and deterministic perspective of the search space.</p>
<p>BFG, given a discretization step in each dimension, systematically generates and evaluates all possible combinations of the variables under optimization. This approach seems to be successfully used by the tool HFLD in Wei <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_039">2007</xref>) for parametric optimization of distribution models. It could have also been used in Noone <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_024">2012</xref>) to generate the set of combinations of <italic>a</italic> and <italic>b</italic>.</p>
<p>On the one hand, this strategy is interesting due to its deterministic nature. Moreover, its accuracy can be precisely configured by adjusting the discretization steps. On the other hand, it will be extremely time-consuming for most configurations. Thus, its application to large problems or as part of complex field designs procedures might be unfeasible.</p>
<p>For the problem at hand, dimensions <italic>a</italic> and <italic>b</italic> of Eq. (10) are discretized for a given resolution. Then, all possible combinations are formed and evaluated according to Eq. (<xref rid="j_info1168_eq_001">1</xref>). The best one is finally selected as the optimal solution. BFG will be applied to get an approximated idea of the structure of the search space and where its optimal point is.</p>
</sec>
</sec>
<sec id="j_info1168_s_012">
<label>4</label>
<title>Experimentation and Results</title>
<p>The problem context has been implemented in C++. The objective function, which requires simulating the candidate fields throughout the year, has been parallelized due to its significant computational cost. The simulation of instants has been distributed among concurrent threads as proposed in Cruz <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_012">2017</xref>). The POSIX-Threads (PThreads) library has been used for parallelization. The optimizers described in Section <xref rid="j_info1168_s_007">3</xref> have also been implemented in C++. The compiler used is g++ 4.8.1 with optimization level ‘O2’. The experiments have been carried out in a cluster node that features an Intel Xeon E5 2650 with 16 cores and 64 GB of shared RAM. The evaluation of the objective function can hence deploy up to 16 concurrent threads.</p>
<p>Regarding the problem definition, the latitude of the facility is 37.4<inline-formula id="j_info1168_ineq_056"><alternatives><mml:math>
<mml:msup>
<mml:mrow/>
<mml:mrow>
<mml:mo>∘</mml:mo>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${^{\circ }}$]]></tex-math></alternatives></inline-formula> North. The height of the tower is 100 m with a cylindrical receiver of 10.5 m of height and 8.5 m in diameter. Since a north-field configuration is required, only those positions of the pattern at the north of the tower are considered. All heliostats are assumed to have a plain reflective surface of 100 m<inline-formula id="j_info1168_ineq_057"><alternatives><mml:math>
<mml:msup>
<mml:mrow/>
<mml:mrow>
<mml:mn>2</mml:mn>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[${^{2}}$]]></tex-math></alternatives></inline-formula> (10 m × 10 m) whose center is at 5 m over the ground. The time step throughout days is constant. Specifically, for any studied field, Eq. (<xref rid="j_info1168_eq_001">1</xref>) is computed at every hour from sunrise to sunset. For the selected solar model and latitude, approximately 4000 instants can be uniformly generated in a year. However, the solar positioning model shows symmetry, which is inherited by radiation density estimation. Thus, simulations only evaluate about 2400 real instants.</p>
<fig id="j_info1168_fig_009">
<label>Fig. 8</label>
<caption>
<p>Objective function’s approximated plot for 50 (left) and 500 (right) heliostats.</p>
</caption>
<graphic xlink:href="info1168_g009.jpg"/>
</fig>
<p>The considered problem sizes range from 50 to 500 heliostats to place. According to Besarati and Goswami (<xref ref-type="bibr" rid="j_info1168_ref_004">2014</xref>), <italic>a</italic> and <italic>b</italic>, are defined in <inline-formula id="j_info1168_ineq_058"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>2.0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>8.0</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[2.0,8.0]$]]></tex-math></alternatives></inline-formula> and <inline-formula id="j_info1168_ineq_059"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mn>0.45</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.70</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[0.45,0.70]$]]></tex-math></alternatives></inline-formula>, respectively. For BFG, the discretization steps in <italic>a</italic> and <italic>b</italic> are 0.05 and 0.005, respectively. This configuration has also been used to plot the shape of the objective function shown in Fig. <xref rid="j_info1168_fig_009">8</xref> for both the smallest and the biggest instances. As can be seen, the search space is quite homogeneous, which is mainly due to keeping it limited to a robust distribution model. UEGO and micraGA have been configured, after preliminary experimentation, with a robust set of parameters for all the studied problems. They have been configured to get the best results possible, with stability in spite of their stochastic nature, and as fast as possible. For UEGO, this is achieved with a limit of field evaluations equal to 1000, 20 levels of search, a limit of 15 species and a minimum radius equal to 0.0001. micraGA has been configured to have a population size of 70 and to select 70 progenitors from tournaments of 12 individuals at every cycle. micraGA will execute a total of 4 cycles. Its cooling procedure will divide mutation increments by <inline-formula id="j_info1168_ineq_060"><alternatives><mml:math>
<mml:mn>9</mml:mn>
<mml:mo>.</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>0</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:mi mathvariant="italic">x</mml:mi>
<mml:mo>−</mml:mo>
<mml:mn>0.5</mml:mn>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo>
</mml:mrow>
</mml:msup></mml:math><tex-math><![CDATA[$9.{0^{(x-0.5)}}$]]></tex-math></alternatives></inline-formula>, where <italic>x</italic> is the cycle (when it is larger than 1). Mutation amplitude in <italic>a</italic> is in range <inline-formula id="j_info1168_ineq_061"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>1.0</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[-1.0,1.0]$]]></tex-math></alternatives></inline-formula> while it is in range <inline-formula id="j_info1168_ineq_062"><alternatives><mml:math>
<mml:mo fence="true" stretchy="false">[</mml:mo>
<mml:mo>−</mml:mo>
<mml:mn>0.15</mml:mn>
<mml:mo mathvariant="normal">,</mml:mo>
<mml:mn>0.15</mml:mn>
<mml:mo fence="true" stretchy="false">]</mml:mo></mml:math><tex-math><![CDATA[$[-0.15,0.15]$]]></tex-math></alternatives></inline-formula> in <italic>b</italic>. Finally, PRS has been adjusted to take a similar time to UEGO and micraGA. Specifically, it is allowed to execute 1250 cycles. This time constraint would be interesting in case of using this process to generate preliminary fields in a more complex design method.</p>
<p>Table <xref rid="j_info1168_tab_001">1</xref> contains the results obtained after experimentation. Each row represents a particular problem size while the sets of columns show the results achieved by every optimizer. The records of BFG contain the efficiency achieved and the runtime for every problem size. However, due to their non-deterministic nature, the records of UEGO, micraGA and PRS consist of the average efficiency achieved, the standard deviation and the runtime for every problem size. The experiments with non-deterministic methods have been repeated for 10 times. Additionally, the last row includes the average of all the instances. The best efficiency in every case is in bold font.</p>
<table-wrap id="j_info1168_tab_001">
<label>Table 1</label>
<caption>
<p>Average results obtained with each optimizer.</p>
</caption>
<table>
<thead>
<tr>
<td style="vertical-align: middle; text-align: left; border-top: solid thin"/>
<td colspan="2" style="vertical-align: top; text-align: center; border-top: solid thin; border-bottom: solid thin">BFG</td>
<td colspan="3" style="vertical-align: top; text-align: center; border-top: solid thin; border-bottom: solid thin">UEGO</td>
<td colspan="3" style="vertical-align: top; text-align: center; border-top: solid thin; border-bottom: solid thin">micraGA</td>
<td colspan="3" style="vertical-align: top; text-align: center; border-top: solid thin; border-bottom: solid thin">PRS</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Hel.</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ef. <inline-formula id="j_info1168_ineq_063"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">T. (s)</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ef. <inline-formula id="j_info1168_ineq_064"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">St.D. <inline-formula id="j_info1168_ineq_065"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">T. (s)</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ef. <inline-formula id="j_info1168_ineq_066"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">St.D. <inline-formula id="j_info1168_ineq_067"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">T. (s)</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Ef. <inline-formula id="j_info1168_ineq_068"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">St.D. <inline-formula id="j_info1168_ineq_069"><alternatives><mml:math>
<mml:mo mathvariant="normal" fence="true" stretchy="false">(</mml:mo>
<mml:msup>
<mml:mrow>
<mml:mn>10</mml:mn>
</mml:mrow>
<mml:mrow>
<mml:mo>−</mml:mo>
<mml:mn>5</mml:mn>
</mml:mrow>
</mml:msup>
<mml:mo mathvariant="normal" fence="true" stretchy="false">)</mml:mo></mml:math><tex-math><![CDATA[$({10^{-5}})$]]></tex-math></alternatives></inline-formula></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">T. (s)</td>
</tr>
</thead>
<tbody>
<tr>
<td style="vertical-align: top; text-align: left">50</td>
<td style="vertical-align: top; text-align: left">70336.61</td>
<td style="vertical-align: top; text-align: left">479</td>
<td style="vertical-align: top; text-align: left"><bold>70336.62</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">54</td>
<td style="vertical-align: top; text-align: left">70336.58</td>
<td style="vertical-align: top; text-align: left">0.04</td>
<td style="vertical-align: top; text-align: left">53</td>
<td style="vertical-align: top; text-align: left">70336.24</td>
<td style="vertical-align: top; text-align: left">0.43</td>
<td style="vertical-align: top; text-align: left">62</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">100</td>
<td style="vertical-align: top; text-align: left">69369.70</td>
<td style="vertical-align: top; text-align: left">1235</td>
<td style="vertical-align: top; text-align: left"><bold>69369.74</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">142</td>
<td style="vertical-align: top; text-align: left">69369.24</td>
<td style="vertical-align: top; text-align: left">0.71</td>
<td style="vertical-align: top; text-align: left">148</td>
<td style="vertical-align: top; text-align: left">69368.45</td>
<td style="vertical-align: top; text-align: left">1.00</td>
<td style="vertical-align: top; text-align: left">154</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">150</td>
<td style="vertical-align: top; text-align: left">68671.19</td>
<td style="vertical-align: top; text-align: left">2211</td>
<td style="vertical-align: top; text-align: left"><bold>68671.20</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">271</td>
<td style="vertical-align: top; text-align: left">68670.22</td>
<td style="vertical-align: top; text-align: left">2.19</td>
<td style="vertical-align: top; text-align: left">271</td>
<td style="vertical-align: top; text-align: left">68669.97</td>
<td style="vertical-align: top; text-align: left">1.00</td>
<td style="vertical-align: top; text-align: left">278</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">200</td>
<td style="vertical-align: top; text-align: left">68200.80</td>
<td style="vertical-align: top; text-align: left">3457</td>
<td style="vertical-align: top; text-align: left"><bold>68200.84</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">410</td>
<td style="vertical-align: top; text-align: left">68197.08</td>
<td style="vertical-align: top; text-align: left">4.33</td>
<td style="vertical-align: top; text-align: left">422</td>
<td style="vertical-align: top; text-align: left">68198.92</td>
<td style="vertical-align: top; text-align: left">1.22</td>
<td style="vertical-align: top; text-align: left">420</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">250</td>
<td style="vertical-align: top; text-align: left">67798.31</td>
<td style="vertical-align: top; text-align: left">4828</td>
<td style="vertical-align: top; text-align: left"><bold>67798.38</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">600</td>
<td style="vertical-align: top; text-align: left">67796.46</td>
<td style="vertical-align: top; text-align: left">2.00</td>
<td style="vertical-align: top; text-align: left">590</td>
<td style="vertical-align: top; text-align: left">67795.90</td>
<td style="vertical-align: top; text-align: left">1.35</td>
<td style="vertical-align: top; text-align: left">594</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">300</td>
<td style="vertical-align: top; text-align: left">67453.50</td>
<td style="vertical-align: top; text-align: left">6487</td>
<td style="vertical-align: top; text-align: left"><bold>67453.53</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">780</td>
<td style="vertical-align: top; text-align: left">67451.34</td>
<td style="vertical-align: top; text-align: left">3.03</td>
<td style="vertical-align: top; text-align: left">800</td>
<td style="vertical-align: top; text-align: left">67448.40</td>
<td style="vertical-align: top; text-align: left">2.49</td>
<td style="vertical-align: top; text-align: left">773</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">350</td>
<td style="vertical-align: top; text-align: left">67178.22</td>
<td style="vertical-align: top; text-align: left">8295</td>
<td style="vertical-align: top; text-align: left"><bold>67178.30</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">975</td>
<td style="vertical-align: top; text-align: left">67175.64</td>
<td style="vertical-align: top; text-align: left">5.09</td>
<td style="vertical-align: top; text-align: left">1010</td>
<td style="vertical-align: top; text-align: left">67174.52</td>
<td style="vertical-align: top; text-align: left">3.18</td>
<td style="vertical-align: top; text-align: left">992</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">400</td>
<td style="vertical-align: top; text-align: left">66929.81</td>
<td style="vertical-align: top; text-align: left">10318</td>
<td style="vertical-align: top; text-align: left"><bold>66929.92</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">1251</td>
<td style="vertical-align: top; text-align: left">66925.94</td>
<td style="vertical-align: top; text-align: left">5.74</td>
<td style="vertical-align: top; text-align: left">1259</td>
<td style="vertical-align: top; text-align: left">66925.12</td>
<td style="vertical-align: top; text-align: left">2.03</td>
<td style="vertical-align: top; text-align: left">1235</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">450</td>
<td style="vertical-align: top; text-align: left">66727.91</td>
<td style="vertical-align: top; text-align: left">12539</td>
<td style="vertical-align: top; text-align: left"><bold>66727.96</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">1447</td>
<td style="vertical-align: top; text-align: left">66724.96</td>
<td style="vertical-align: top; text-align: left">4.25</td>
<td style="vertical-align: top; text-align: left">1500</td>
<td style="vertical-align: top; text-align: left">66725.76</td>
<td style="vertical-align: top; text-align: left">1.45</td>
<td style="vertical-align: top; text-align: left">1475</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left">500</td>
<td style="vertical-align: top; text-align: left">66538.51</td>
<td style="vertical-align: top; text-align: left">14856</td>
<td style="vertical-align: top; text-align: left"><bold>66538.57</bold></td>
<td style="vertical-align: top; text-align: left">0.00</td>
<td style="vertical-align: top; text-align: left">1785</td>
<td style="vertical-align: top; text-align: left">66534.14</td>
<td style="vertical-align: top; text-align: left">4.12</td>
<td style="vertical-align: top; text-align: left">1784</td>
<td style="vertical-align: top; text-align: left">66531.64</td>
<td style="vertical-align: top; text-align: left">5.96</td>
<td style="vertical-align: top; text-align: left">1759</td>
</tr>
<tr>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">Avg.:</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">67920.46</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">6471</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin"><bold>67920.51</bold></td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">0.00</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">772</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">67918.16</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">3.15</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">784</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">67917.49</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">2.01</td>
<td style="vertical-align: top; text-align: left; border-bottom: solid thin">774</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>As can be seen in Table <xref rid="j_info1168_tab_001">1</xref>, the achieved efficiencies are numerically very similar for the same instance. Besides, multiple combinations of <italic>a</italic> and <italic>b</italic> result in fields of similar efficiency. In Pitz-Paal <italic>et al.</italic> (<xref ref-type="bibr" rid="j_info1168_ref_028">2011</xref>), where heliostat field optimization is also studied, a similar situation was observed. Generally speaking, the real impact of such variations in efficiency would ultimately depend on the field size. In fact, the differences between those methods with a better average (UEGO and BFG) and the others tend to be higher with more heliostats. If we studied the final average efficiency of every method as that of a virtual field, the difference between the best and worst methods would be of a few thousands of euros a year (less than 6,000 euros). However, if these results were scaled to larger fields, the same degree of variation would represent an extra benefit of several thousands of euros (less than 60,000 euros). These values would not be determinant if compared to the total budget of the facility. Nevertheless, they could be achieved by simply selecting the most appropriate optimizer at design. Moreover, since analytical models might tend to overestimate efficiencies because of their simplifications, it is important to work with high precision.</p>
<p>UEGO gets the best average efficiency in all the studied cases. It is also very stable as can be observed in its values of standard deviation. In fact, it usually returns the same solution for each problem instance even after different executions. They all are also in the region where the optimal solution is expected to be according to the preliminary analysis with BFG. Therefore, UEGO is neither affected by its stochasticity nor by the multimodal structure of the objective function.</p>
<p>BFG achieves efficiencies quite near to those obtained by UEGO. However, its runtime is significantly higher. Hence, its integration in complex design procedures would be less practical. On the one hand, BFG is up to 10 times slower than UEGO with a relatively coarse discretization of the search space while even obtaining slightly worse results. On the other hand, BFG is deterministic and its resolution can be arbitrarily adjusted through its discretization steps. These properties make it theoretically interesting for studies such as the one presented in this work. However, as can be deduced from Table <xref rid="j_info1168_tab_001">1</xref>, BFG would need an enormous amount of time to handle larger problem instances, wider search spaces and higher accuracy. More sophisticated methods such as UEGO outperforms BFG with less computational effort.</p>
<p>Regarding micraGA, its performance is quite low when compared with UEGO. In fact, it is even marginally outperformed by PRS in two cases, the instances of 200 and 450 heliostats. This behaviour is consistent with the idea that the complexity of micraGA is between those of UEGO and PRS. Furthermore, it is not particularly stable if compared with the standard deviation obtained by PRS and especially by UEGO. micraGA does not converge adequately due to the structure of the search space. It would need a significantly higher runtime to get closer results to UEGO. Thus, since micraGA cannot outperform UEGO and it is complex if compared to PRS, it is not a good option to be further considered.</p>
<p>Finally, despite being the worst ones, the results obtained by PRS are quite interesting. In spite of its simplicity and lack of orientation during the search, depending on the precision needed, it could achieve acceptable results. This is mainly due to two reasons: i) its reduced logic overhead makes it possible to study numerous combinations in a similar runtime to UEGO and micraGA; ii) it is not affected by the structure of the search space. In fact, PRS could be interesting as part of a more complex heliostat field optimization method because of its simplicity. However, its instability and lack of robustness compared to UEGO make it not appropriate as a standalone method.</p>
</sec>
<sec id="j_info1168_s_013">
<label>5</label>
<title>Conclusions and Future Work</title>
<p>In this work, the complexity of heliostat fields design has been studied. An optimization problem aimed at maximizing yearly irradiance weighted efficiency has been defined. The design procedure followed directly tries to optimize the parameters of the promising biomimetic distribution pattern. Four optimization algorithms have been studied to solve the problem, namely, BFG, UEGO, PRS and micraGA. The possibility of coupling their use within more complex methods is also discussed considering computational cost. Whereas Genetic Algorithms and BFG are state-of-art methods for the present problem, UEGO had not been applied to solve it before. PRS, as far as the authors know, could also be included in this set. Since the objective function is wrapped within a distribution robust pattern, it is heavily multimodal.</p>
<p>UEGO is the best option out of the considered ones. This method gets the best solutions in a stable and fast way for all the studied instances. Hence, it should be considered for heliostat field design based on the described distribution pattern. It also seems to be fast enough to be included as part of a more complex design procedure. The field efficiencies obtained by BFG are very similar to those achieved by UEGO. In fact, for a given resolution, BFG could obtain the best solution possible due to the extensive search that it performs. However, it would require significantly more runtime than UEGO. Thus, BFG does not seem to be appropriate for large fields, wide search spaces or to be included in a complex procedure of several stages. Regarding PRS, it turns out to be an interesting option considering its simplicity. Although it should not be applied to generate final fields, PRS could be appropriate in a multi-stage procedure depending on the precision requirements. Finally, the genetic optimizer proposed, micraGA, does not seem to be a good option. It does not explore the search space properly. Its results are of low quality and unstable if compared to those of UEGO. In fact, they are very similar to those of PRS in spite of being more sophisticated than that method.</p>
<p>There are some possible expansion points for future work. First, a better alternative to micraGA could be explored. Its design should aim at a trade-off between the complexity of UEGO with the best results and the simplicity of PRS with acceptable quality. Second, it could be interesting to compare the performance of UEGO and PRS in a multi-stage optimization process. Finally, extending this comparison context to encompass several distribution patterns and timing variations in the objective function would be of great interest.</p>
</sec>
</body>
<back>
<ack id="j_info1168_ack_001">
<title>Acknowledgements</title>
<p>This work has been funded by grants from the Spanish Ministry of Economy, Industry and Competitiveness (TIN2015-66680-C2-1-R and ENERPRO DPI 2014-56364-C2-1-R), Junta de Andalucía (P12-TIC301). Nicolás Calvo Cruz (FPU14/01728) is supported by an FPU Fellowship from the Spanish Ministry of Education. Juana López Redondo (RYC-2013-14174) and José Domingo Álvarez (RYC-2013-14107) are fellows of the Spanish ‘Ramón y Cajal’ contract program, co-financed by the European Social Fund.</p></ack>
<ref-list id="j_info1168_reflist_001">
<title>References</title>
<ref id="j_info1168_ref_001">
<mixed-citation publication-type="journal"><string-name><surname>Alexopoulos</surname>, <given-names>S.</given-names></string-name>, <string-name><surname>Hoffschmidt</surname>, <given-names>B.</given-names></string-name> (<year>2017</year>). <article-title>Advances in solar tower technology</article-title>. <source>WIREs Energy Environment</source>, <volume>6</volume>(<issue>1</issue>), <fpage>1</fpage>–<lpage>19</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_002">
<mixed-citation publication-type="journal"><string-name><surname>Avila-Marin</surname>, <given-names>A.L.</given-names></string-name>, <string-name><surname>Fernandez-Reche</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Tellez</surname>, <given-names>F.M.</given-names></string-name> (<year>2013</year>). <article-title>Evaluation of the potential of central receiver solar power plants: configuration, optimization and trends</article-title>. <source>Applied Energy</source>, <volume>112</volume>, <fpage>274</fpage>–<lpage>288</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_003">
<mixed-citation publication-type="journal"><string-name><surname>Behar</surname>, <given-names>O.</given-names></string-name>, <string-name><surname>Khellaf</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Mohammedi</surname>, <given-names>K.</given-names></string-name> (<year>2013</year>). <article-title>A review of studies on central receiver solar thermal power plants</article-title>. <source>Renewable and Sustainable Energy Reviews</source>, <volume>23</volume>(<issue>0</issue>), <fpage>12</fpage>–<lpage>39</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_004">
<mixed-citation publication-type="journal"><string-name><surname>Besarati</surname>, <given-names>S.M.</given-names></string-name>, <string-name><surname>Goswami</surname>, <given-names>D.Y.</given-names></string-name> (<year>2014</year>). <article-title>A computationally efficient method for the design of the heliostat field for solar power tower plant</article-title>. <source>Renewable Energy</source>, <volume>69</volume>, <fpage>226</fpage>–<lpage>232</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_005">
<mixed-citation publication-type="journal"><string-name><surname>Brooks</surname>, <given-names>S.H.</given-names></string-name> (<year>1958</year>). <article-title>A discussion of random methods for seeking maxima</article-title>. <source>Operations Research</source>, <volume>6</volume>(<issue>2</issue>), <fpage>244</fpage>–<lpage>251</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_006">
<mixed-citation publication-type="book"><string-name><surname>Camacho</surname>, <given-names>E.</given-names></string-name>, <string-name><surname>Berenguel</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Rubio</surname>, <given-names>F.R.</given-names></string-name>, <string-name><surname>Martínez</surname>, <given-names>D.</given-names></string-name> (<year>2012</year>). <source>Control of Solar Energy Systems</source>. <publisher-name>Springer Science &amp; Business Media</publisher-name>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_007">
<mixed-citation publication-type="other"><string-name><surname>Carrizosa</surname>, <given-names>E.</given-names></string-name>, <string-name><surname>Domínguez-Bravo</surname>, <given-names>C.</given-names></string-name>, <string-name><surname>Fernández-Cara</surname>, <given-names>E.</given-names></string-name>, <string-name><surname>Quero</surname>, <given-names>M.</given-names></string-name> (2014). <italic>An optimization approach to the design of multi-size heliostat fields</italic>. Technical report, Technical report IMUS.</mixed-citation>
</ref>
<ref id="j_info1168_ref_008">
<mixed-citation publication-type="journal"><string-name><surname>Collado</surname>, <given-names>F.J.</given-names></string-name>, <string-name><surname>Guallar</surname>, <given-names>J.</given-names></string-name> (<year>2012</year>). <article-title>Campo: Generation of regular heliostat fields</article-title>. <source>Renewable Energy</source>, <volume>46</volume>, <fpage>49</fpage>–<lpage>59</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_009">
<mixed-citation publication-type="journal"><string-name><surname>Collado</surname>, <given-names>F.J.</given-names></string-name>, <string-name><surname>Guallar</surname>, <given-names>J.</given-names></string-name> (<year>2013</year>). <article-title>A review of optimized design layouts for solar power tower plants with Campo code</article-title>. <source>Renewable and Sustainable Energy Reviews</source>, <volume>20</volume>, <fpage>142</fpage>–<lpage>154</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_010">
<mixed-citation publication-type="journal"><string-name><surname>Collado</surname>, <given-names>F.J.</given-names></string-name>, <string-name><surname>Turégano</surname>, <given-names>J.A.</given-names></string-name> (<year>1989</year>). <article-title>Calculation of the annual thermal energy supplied by a defined heliostat field</article-title>. <source>Solar Energy</source>, <volume>42</volume>(<issue>2</issue>), <fpage>149</fpage>–<lpage>165</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_011">
<mixed-citation publication-type="other"><string-name><surname>Cristóbal</surname>, <given-names>A.G.</given-names></string-name> (2011). <italic>Diseño del campo de helióstatos para torres solares de receptor central</italic>. Degree Dissertation, Universidad Carlos III de Madrid, Spain.</mixed-citation>
</ref>
<ref id="j_info1168_ref_012">
<mixed-citation publication-type="journal"><string-name><surname>Cruz</surname>, <given-names>N.C.</given-names></string-name>, <string-name><surname>Redondo</surname>, <given-names>J.L.</given-names></string-name>, <string-name><surname>Berenguel</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Álvarez</surname>, <given-names>J.D.</given-names></string-name>, <string-name><surname>Becerra-Terón</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Ortigosa</surname>, <given-names>P.M.</given-names></string-name> (<year>2017</year>). <article-title>High performance computing for the heliostat field layout evaluation</article-title>. <source>The Journal of Supercomputing</source>, <volume>73</volume>, <fpage>259</fpage>–<lpage>276</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_013">
<mixed-citation publication-type="book"><string-name><surname>Dawkins</surname>, <given-names>R.</given-names></string-name> (<year>1976</year>). <source>The Selfish Gene</source>. <publisher-name>Oxford University Press</publisher-name>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_014">
<mixed-citation publication-type="book"><string-name><surname>Gordon</surname>, <given-names>J.M.</given-names></string-name> (<year>2013</year>). <source>Solar Energy: The State of the Art</source>. <publisher-name>Taylor &amp; Francis</publisher-name>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_015">
<mixed-citation publication-type="journal"><string-name><surname>Greiner</surname>, <given-names>G.</given-names></string-name>, <string-name><surname>Hormann</surname>, <given-names>K.</given-names></string-name> (<year>1998</year>). <article-title>Efficient clipping of arbitrary polygons</article-title>. <source>ACM Transactions on Graphics (TOG)</source>, <volume>17</volume>(<issue>2</issue>), <fpage>71</fpage>–<lpage>83</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_016">
<mixed-citation publication-type="book"><string-name><surname>Holland</surname>, <given-names>J.H.</given-names></string-name> (<year>1975</year>). <source>Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence</source>. <publisher-name>The MIT Press</publisher-name>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_017">
<mixed-citation publication-type="chapter"><string-name><surname>Jelasity</surname>, <given-names>M.</given-names></string-name> (<year>1998</year>). <chapter-title>UEGO, an abstract niching technique for global optimization</chapter-title>. In: <source>Parallel Problem Solving from Nature-PPSN V</source>. <publisher-name>Springer</publisher-name>, pp. <fpage>378</fpage>–<lpage>387</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_018">
<mixed-citation publication-type="other"><string-name><surname>Johnson</surname>, <given-names>A.</given-names></string-name> (2012). Clipper – an open source freeware polygon clipping library. Available from <ext-link ext-link-type="uri" xlink:href="http://www.angusj.com/delphi/clipper.php">http://www.angusj.com/delphi/clipper.php</ext-link> (Last accessed in March, 2017).</mixed-citation>
</ref>
<ref id="j_info1168_ref_019">
<mixed-citation publication-type="chapter"><string-name><surname>Jones</surname>, <given-names>S.A.</given-names></string-name>, <string-name><surname>Lumia</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Davenport</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Thomas</surname>, <given-names>R.C.</given-names></string-name>, <string-name><surname>Gorman</surname>, <given-names>D.</given-names></string-name>, <string-name><surname>Kolb</surname>, <given-names>G.J.</given-names></string-name>, <string-name><surname>Donnelly</surname>, <given-names>M.W.</given-names></string-name> (<year>2007</year>). <chapter-title>Heliostat cost reduction</chapter-title>. In: <source>ASME 2007 Energy Sustainability Conference</source>. <publisher-name>American Society of Mechanical Engineers</publisher-name>, pp. <fpage>1077</fpage>–<lpage>1084</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_020">
<mixed-citation publication-type="journal"><string-name><surname>Laue</surname>, <given-names>E.G.</given-names></string-name> (<year>1970</year>). <article-title>The measurement of solar spectral irradiance at different terrestrial elevations</article-title>. <source>Solar Energy</source>, <volume>13</volume>(<issue>1</issue>), <fpage>43</fpage>–<lpage>57</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_021">
<mixed-citation publication-type="other"><string-name><surname>Moscato</surname>, <given-names>P.</given-names></string-name> (1989). On evolution, search, optimization, genetic algorithms and martial arts: Towards memetic algorithms. <italic>Caltech Concurrent Computation Program, C3P Report</italic>, 826.</mixed-citation>
</ref>
<ref id="j_info1168_ref_022">
<mixed-citation publication-type="other"><string-name><surname>Müller-Steinhagen</surname>, <given-names>H.</given-names></string-name> (2013). Concentrating solar thermal power. <italic>Philosophical Transactions of the Royal Society of London A: Mathematical, Physical and Engineering Sciences</italic>, <italic>371</italic>(1996).</mixed-citation>
</ref>
<ref id="j_info1168_ref_023">
<mixed-citation publication-type="journal"><string-name><surname>Mutuberria</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Pascual</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>Guisado</surname>, <given-names>M.V.</given-names></string-name>, <string-name><surname>Mallor</surname>, <given-names>F.</given-names></string-name> (<year>2015</year>). <article-title>Comparison of heliostat field layout design methodologies and impact on power plant efficiency</article-title>. <source>Energy Procedia</source>, <volume>69</volume>, <fpage>1360</fpage>–<lpage>1370</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_024">
<mixed-citation publication-type="journal"><string-name><surname>Noone</surname>, <given-names>C.J.</given-names></string-name>, <string-name><surname>Torrilhon</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Mitsos</surname>, <given-names>A.</given-names></string-name> (<year>2012</year>). <article-title>Heliostat field optimization: A new computationally efficient model and biomimetic layout</article-title>. <source>Solar Energy</source>, <volume>86</volume>(<issue>2</issue>), <fpage>792</fpage>–<lpage>803</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_025">
<mixed-citation publication-type="journal"><string-name><surname>Ortigosa</surname>, <given-names>P.M.</given-names></string-name>, <string-name><surname>García</surname>, <given-names>I.</given-names></string-name>, <string-name><surname>Jelasity</surname>, <given-names>M.</given-names></string-name> (<year>2001</year>a). <article-title>Reliability and performance of UEGO, a clustering-based global optimizer</article-title>. <source>Journal of Global Optimization</source>, <volume>19</volume>(<issue>3</issue>), <fpage>265</fpage>–<lpage>289</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_026">
<mixed-citation publication-type="chapter"><string-name><surname>Ortigosa</surname>, <given-names>P.M.</given-names></string-name>, <string-name><surname>García</surname>, <given-names>I.</given-names></string-name>, <string-name><surname>Jelasity</surname>, <given-names>M.</given-names></string-name> (<year>2001</year>b). <chapter-title>Two approaches for parallelizing the UEGO algorithm</chapter-title>. In: <source>Optimization Theory</source>. <publisher-name>Springer</publisher-name>, pp. <fpage>159</fpage>–<lpage>177</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_027">
<mixed-citation publication-type="journal"><string-name><surname>Ortigosa</surname>, <given-names>P.M.</given-names></string-name>, <string-name><surname>Redondo</surname>, <given-names>J.L.</given-names></string-name>, <string-name><surname>García</surname>, <given-names>I.</given-names></string-name>, <string-name><surname>Fernández</surname>, <given-names>J.J.</given-names></string-name> (<year>2007</year>). <article-title>A population global optimization algorithm to solve the image alignment problem in electron crystallography</article-title>. <source>Journal of Global Optimization</source>, <volume>37</volume>(<issue>4</issue>), <fpage>527</fpage>–<lpage>539</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_028">
<mixed-citation publication-type="journal"><string-name><surname>Pitz-Paal</surname>, <given-names>R.</given-names></string-name>, <string-name><surname>Botero</surname>, <given-names>N.B.</given-names></string-name>, <string-name><surname>Steinfeld</surname>, <given-names>A.</given-names></string-name> (<year>2011</year>). <article-title>Heliostat field layout optimization for high-temperature solar thermochemical processing</article-title>. <source>Solar Energy</source>, <volume>85</volume>(<issue>2</issue>), <fpage>334</fpage>–<lpage>343</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_029">
<mixed-citation publication-type="journal"><string-name><surname>Ramos</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Ramos</surname>, <given-names>F.</given-names></string-name> (<year>2012</year>). <article-title>Strategies in tower solar power plant optimization</article-title>. <source>Solar Energy</source>, <volume>86</volume>(<issue>9</issue>), <fpage>2536</fpage>–<lpage>2548</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_030">
<mixed-citation publication-type="other"><string-name><surname>Ramos</surname>, <given-names>A.</given-names></string-name>, <string-name><surname>Ramos</surname>, <given-names>F.</given-names></string-name> (2014). Heliostat blocking and shadowing efficiency in the video-game era. <ext-link ext-link-type="uri" xlink:href="http://arxiv.org/abs/arXiv:1402.1690">arXiv:1402.1690</ext-link>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_031">
<mixed-citation publication-type="journal"><string-name><surname>Reddy</surname>, <given-names>V.S.</given-names></string-name>, <string-name><surname>Kaushik</surname>, <given-names>S.C.</given-names></string-name>, <string-name><surname>Ranjan</surname>, <given-names>K.R.</given-names></string-name>, <string-name><surname>Tyagi</surname>, <given-names>S.K.</given-names></string-name> (<year>2013</year>). <article-title>State-of-the-art of solar thermal power plants – a review</article-title>. <source>Renewable and Sustainable Energy Reviews</source>, <volume>27</volume>, <fpage>258</fpage>–<lpage>273</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_032">
<mixed-citation publication-type="book"><string-name><surname>Redondo</surname>, <given-names>J.L.</given-names></string-name> (<year>2009</year>). <source>Solving Competitive Location Problems via Memetic Algorithms. High Performance Computing Approaches</source>, Vol. <volume>258</volume>. <publisher-name>Universidad</publisher-name>, <publisher-loc>Almería</publisher-loc>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_033">
<mixed-citation publication-type="journal"><string-name><surname>Redondo</surname>, <given-names>J.L.</given-names></string-name>, <string-name><surname>Fernández</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>García</surname>, <given-names>I.</given-names></string-name>, <string-name><surname>Ortigosa</surname>, <given-names>P.M.</given-names></string-name> (<year>2009</year>a). <article-title>A robust and efficient global optimization algorithm for planar competitive location problems</article-title>. <source>Annals of Operations Research</source>, <volume>167</volume>(<issue>1</issue>), <fpage>87</fpage>–<lpage>106</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_034">
<mixed-citation publication-type="journal"><string-name><surname>Redondo</surname>, <given-names>J.L.</given-names></string-name>, <string-name><surname>Fernández</surname>, <given-names>J.</given-names></string-name>, <string-name><surname>García</surname>, <given-names>I.</given-names></string-name>, <string-name><surname>Ortigosa</surname>, <given-names>P.M.</given-names></string-name> (<year>2009</year>b). <article-title>Solving the multiple competitive facilities location and design problem on the plane</article-title>. <source>Evolutionary Computation</source>, <volume>17</volume>(<issue>1</issue>), <fpage>21</fpage>–<lpage>53</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_035">
<mixed-citation publication-type="journal"><string-name><surname>Sánchez</surname>, <given-names>M.</given-names></string-name>, <string-name><surname>Romero</surname>, <given-names>M.</given-names></string-name> (<year>2006</year>). <article-title>Methodology for generation of heliostat field layout in central receiver systems based on yearly normalized energy surfaces</article-title>. <source>Solar Energy</source>, <volume>80</volume>(<issue>7</issue>), <fpage>861</fpage>–<lpage>874</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_036">
<mixed-citation publication-type="journal"><string-name><surname>Solis</surname>, <given-names>F.J.</given-names></string-name>, <string-name><surname>Wets</surname>, <given-names>R.J.B.</given-names></string-name> (<year>1981</year>). <article-title>Minimization by random search techniques</article-title>. <source>Mathematics of Operations Research</source>, <volume>6</volume>(<issue>1</issue>), <fpage>19</fpage>–<lpage>30</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_037">
<mixed-citation publication-type="other"><string-name><surname>Stine</surname>, <given-names>W.B.</given-names></string-name>, <string-name><surname>Geyer</surname>, <given-names>M.</given-names></string-name> (2001). Power from the Sun. Power from the sun.net. <ext-link ext-link-type="uri" xlink:href="http://powerfromthesun.net/book.html">http://powerfromthesun.net/book.html</ext-link> (last accessed in March, 2017).</mixed-citation>
</ref>
<ref id="j_info1168_ref_038">
<mixed-citation publication-type="journal"><string-name><surname>Vatti</surname>, <given-names>B.R.</given-names></string-name> (<year>1992</year>). <article-title>A generic solution to polygon clipping</article-title>. <source>Communications of the ACM</source>, <volume>35</volume>(<issue>7</issue>), <fpage>56</fpage>–<lpage>63</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_039">
<mixed-citation publication-type="chapter"><string-name><surname>Wei</surname>, <given-names>X.</given-names></string-name>, <string-name><surname>Lu</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Lin</surname>, <given-names>Z.</given-names></string-name>, <string-name><surname>Zhang</surname>, <given-names>H.</given-names></string-name>, <string-name><surname>Ni</surname>, <given-names>Z.</given-names></string-name> (<year>2007</year>). <chapter-title>Optimization procedure for design of heliostat field layout of a 1mwe solar tower thermal power plant</chapter-title>. In: <source>Photonics Asia 2007. International Society for Optics and Photonics</source>, pp. <fpage>684119</fpage>–<lpage>684119</lpage>.</mixed-citation>
</ref>
<ref id="j_info1168_ref_040">
<mixed-citation publication-type="other"><string-name><surname>Zhang</surname>, <given-names>H.</given-names></string-name> (2007). <italic>Multi-objective thermoeconomic optimisation of the design of heliostat field of solar tower power plants</italic>. Technical report.</mixed-citation>
</ref>
</ref-list>
</back>
</article>