Refine manuscript text for clarity and consistency in the description of design…

Refine manuscript text for clarity and consistency in the description of design variables, optimization cycles, and surrogate model performance. Adjust punctuation and phrasing for improved readability throughout the document.
parent 68e6565d
This source diff could not be displayed because it is too large. You can view the blob instead.
<mxfile host="Electron">
<diagram name="Página-1" id="LzcljoWLl8ARBYUkCDr3">
<mxGraphModel dx="2463" dy="1565" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="900" pageHeight="1600" background="light-dark(#FFFFFF,#FFFFFF)" math="1" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="NqAJ2NS9s772DdJamvT2-2" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="380" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-3" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="20" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-16" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;1. Design variables&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="30" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-20" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;2. Surrogate models&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="390" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-21" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="1100" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-22" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="740" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-23" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;3. Predictions for candidate x&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="310" x="745" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-24" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;4. Objective function&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="1110" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-25" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="1460" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-26" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;5. Optimizer&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="1470" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-30" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="20" y="558" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-31" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;6. FEM validation&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="30" y="580" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-33" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#009900,#009900);fillColor=light-dark(#F8FBF7,#F8FBF7);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="160" width="320" x="1460" y="560" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-34" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="420" x="490" y="558" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-35" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;7. Acceptance criteria&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="399" x="501" y="580" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-37" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#009900,#009900);fillColor=light-dark(#F8FAF7,#F8FAF7);strokeWidth=3;absoluteArcSize=1;fontColor=light-dark(#009900,#009900);" value="&lt;font style=&quot;font-size: 20px;&quot;&gt;FEM analysis&lt;/font&gt;" vertex="1">
<mxGeometry height="60" width="300" x="30" y="659" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-42" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows thicknesses&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;(to be optimized)&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="50" width="300" x="30" y="100" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-43" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;(trained on FEM data)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="390" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-48" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;$$Damage (\mathcal{D})$$&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="390" y="254" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-66" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;(surrogate)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="750" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-69" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#0000CC,#0000CC);fontSize=16;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;Maximize energy dissipation (tie-breaker)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="25" width="310" x="1105" y="349" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-70" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);fontSize=16;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;Window penalties (balance &amp;amp; limit damage)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="25" width="310" x="1105" y="374" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-71" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);fontSize=16;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;Frame penalty (strong)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="25" width="310" x="1105" y="399" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-73" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="40" width="170" x="1180" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-67" parent="NqAJ2NS9s772DdJamvT2-73" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;Minimize&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="107.36842105263158" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-72" parent="NqAJ2NS9s772DdJamvT2-73" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;$$J(\mathbf{x})$$&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="71.57894736842105" x="88.57894736842105" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-91" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="205" width="300" x="1110" y="137" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-68" parent="NqAJ2NS9s772DdJamvT2-91" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#4C0099,#4C0099);strokeWidth=2;fillColor=light-dark(#F7F5FD,#F7F5FD);fontColor=light-dark(#4C0099,#4C0099);" value="" vertex="1">
<mxGeometry height="200" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-77" parent="NqAJ2NS9s772DdJamvT2-91" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#4C0099,#4C0099);" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;&lt;font style=&quot;font-size: 20px;&quot;&gt;$$J(\mathbf{x})=-\sum_{i=1}^{W}\hat{\varepsilon}_{xy,i}t_{w,i}A_i$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="70" width="300" y="3" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-88" parent="NqAJ2NS9s772DdJamvT2-91" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;color: light-dark(rgb(76, 0, 153), rgb(76, 0, 153)); font-size: 20px;&quot;&gt;$$+\sum_{i=1}^{W}P_w(\hat{\mathcal{D}}_i;\mathcal{D}_w^*)$$&lt;/font&gt;" vertex="1">
<mxGeometry height="68" width="300" y="73" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-89" parent="NqAJ2NS9s772DdJamvT2-91" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;color: light-dark(rgb(76, 0, 153), rgb(76, 0, 153)); font-size: 20px;&quot;&gt;$$+P_f(\hat{\mathcal{D}}_f;\mathcal{D}_f^{max})$$&lt;/font&gt;" vertex="1">
<mxGeometry height="65" width="300" y="141" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-92" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;Differential Evolution&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="1470" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-93" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Pop. size = 25 x D&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Max. iterations = 500&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Tolerance = 10&lt;sup&gt;-6&lt;/sup&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="300" x="1470" y="140" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-94" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#88898A,#88898A);" value="" vertex="1">
<mxGeometry height="10" width="300" x="1470" y="257" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-95" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;Output:&lt;/b&gt;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;&lt;br&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;Best candidate x*&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="300" x="1470" y="281.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-27" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="87" width="320" x="740" y="453" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-97" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="65" width="310" x="745" y="464" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-28" parent="NqAJ2NS9s772DdJamvT2-97" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;Candidate geometry x*&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="310" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-96" parent="NqAJ2NS9s772DdJamvT2-97" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;span style=&quot;font-size: 20px;&quot;&gt;(from surrogate optimization)&lt;/span&gt;" vertex="1">
<mxGeometry height="35" width="310" y="30" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-99" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-3" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-2" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="680" y="680" as="sourcePoint" />
<mxPoint x="730" y="630" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-100" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-2" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-22" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="710" y="230" as="sourcePoint" />
<mxPoint x="750" y="230" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-101" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-22" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-21" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="1070" y="220" as="sourcePoint" />
<mxPoint x="1110" y="220" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-102" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-21" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-25" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="1430" y="210" as="sourcePoint" />
<mxPoint x="1470" y="210" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-103" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-25" style="endArrow=block;html=1;rounded=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;" target="NqAJ2NS9s772DdJamvT2-27" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<Array as="points">
<mxPoint x="1620" y="497" />
<mxPoint x="1060" y="497" />
</Array>
<mxPoint x="1610" y="470" as="sourcePoint" />
<mxPoint x="1650" y="470" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-104" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;(adaptative)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="30" y="610" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-105" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;Compare FEM vs surrogate predcitions&lt;/font&gt;" vertex="1">
<mxGeometry height="60" width="300" x="30" y="731" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-110" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="160" width="300" x="30" y="794" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-106" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$\hat{\varepsilon}_{xy,i}$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-107" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$\mathcal{D}_{i}$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-108" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$\mathcal{D}_{f}$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" y="80" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-109" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$J$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" y="120" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-111" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-27" style="endArrow=block;html=1;rounded=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;" target="NqAJ2NS9s772DdJamvT2-30" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<Array as="points">
<mxPoint x="180" y="497" />
</Array>
<mxPoint x="1200" y="510" as="sourcePoint" />
<mxPoint x="640" y="567" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-112" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="110" width="300" x="390" y="130" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-44" parent="NqAJ2NS9s772DdJamvT2-112" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#0000CC,#0000CC);strokeWidth=2;fillColor=light-dark(#F5FAFE,#F5FAFE);" value="" vertex="1">
<mxGeometry height="110" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-45" parent="NqAJ2NS9s772DdJamvT2-112" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;&lt;b&gt;$$Distortion (\varepsilon_{xy})$$&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-46" parent="NqAJ2NS9s772DdJamvT2-112" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;$$\hat{\varepsilon}_{xy,i}, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-55" parent="NqAJ2NS9s772DdJamvT2-112" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-113" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="179" width="300" x="390" y="250" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-47" parent="NqAJ2NS9s772DdJamvT2-113" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#CC0000,#CC0000);strokeWidth=2;fillColor=light-dark(#F5F9FE,#F5F9FE);" value="" vertex="1">
<mxGeometry height="179" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-50" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-52" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_i, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-53" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Frame:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="104" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-54" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_f$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="134" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-114" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="110" width="300" x="750" y="130" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-115" parent="NqAJ2NS9s772DdJamvT2-114" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#0000CC,#0000CC);strokeWidth=2;fillColor=light-dark(#F5FAFE,#F5FAFE);" value="" vertex="1">
<mxGeometry height="110" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-116" parent="NqAJ2NS9s772DdJamvT2-114" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;&lt;b&gt;$$Distortion (\varepsilon_{xy})$$&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-117" parent="NqAJ2NS9s772DdJamvT2-114" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;$$\hat{\varepsilon}_{xy,i}, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-118" parent="NqAJ2NS9s772DdJamvT2-114" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-119" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="179" width="300" x="750" y="250" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-120" parent="NqAJ2NS9s772DdJamvT2-119" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#CC0000,#CC0000);strokeWidth=2;fillColor=light-dark(#F5F9FE,#F5F9FE);" value="" vertex="1">
<mxGeometry height="179" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-121" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-122" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_i, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-123" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Frame:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="104" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-124" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_f$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="134" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-125" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent; font-size: 20px;&quot;&gt;$$\mathbf{x} = \left[t_{w,1}, t_{w,2}, \ldots, t_{w,W}\right]$$&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="210" width="300" x="30" y="160" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-126" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#009900,#009900);fontSize=20;" value="1" vertex="1">
<mxGeometry height="30" width="30" x="501.5" y="650.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-127" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;Prediction error (all variables)&amp;nbsp;≤ 5%&lt;/font&gt;" vertex="1">
<mxGeometry height="31" width="360" x="540.5" y="650.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-128" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#009900,#009900);fontSize=20;" value="2" vertex="1">
<mxGeometry height="30" width="30" x="501" y="735" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-129" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;|Objective error|&amp;nbsp;&lt;/font&gt;&lt;span style=&quot;color: rgba(0, 0, 0, 0); font-family: monospace; font-size: 0px; font-weight: 400; white-space: nowrap;&quot;&gt;%3CmxGraphModel%3E%3Croot%3E%3CmxCell%20id%3D%220%22%2F%3E%3CmxCell%20id%3D%221%22%20parent%3D%220%22%2F%3E%3CmxCell%20id%3D%222%22%20parent%3D%221%22%20style%3D%22ellipse%3BwhiteSpace%3Dwrap%3Bhtml%3D1%3Baspect%3Dfixed%3BfillColor%3Dlight-dark(%23009900%2C%23009900)%3BfontSize%3D20%3B%22%20value%3D%221%22%20vertex%3D%221%22%3E%3CmxGeometry%20height%3D%2230%22%20width%3D%2230%22%20x%3D%22521%22%20y%3D%22629%22%20as%3D%22geometry%22%2F%3E%3C%2FmxCell%3E%3CmxCell%20id%3D%223%22%20parent%3D%221%22%20style%3D%22text%3Bhtml%3D1%3BwhiteSpace%3Dwrap%3BstrokeColor%3Dnone%3BfillColor%3Dnone%3Balign%3Dleft%3BverticalAlign%3Dmiddle%3Brounded%3D0%3BfontColor%3Dlight-dark(%23000000%2C%23000000)%3BfontStyle%3D1%22%20value%3D%22%26lt%3Bfont%20style%3D%26quot%3Bfont-size%3A%2022px%3B%20font-weight%3A%20normal%3B%26quot%3B%26gt%3BPrediction%20error%20(all%20variables)%26amp%3Bnbsp%3B%E2%89%A4%205%25%26lt%3B%2Ffont%26gt%3B%22%20vertex%3D%221%22%3E%3CmxGeometry%20height%3D%2231%22%20width%3D%22360%22%20x%3D%22560%22%20y%3D%22629%22%20as%3D%22geometry%22%2F%3E%3C%2FmxCell%3E%3C%2Froot%3E%3C%2FmxGraphModel%3E&lt;/span&gt;&lt;span style=&quot;font-size: 22px; font-weight: 400;&quot;&gt;≤ 10&lt;/span&gt;" vertex="1">
<mxGeometry height="31" width="360" x="540.5" y="735" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-130" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#009900,#009900);fontSize=20;" value="3" vertex="1">
<mxGeometry height="30" width="30" x="501.5" y="815" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-131" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;span style=&quot;font-size: 22px; font-weight: 400;&quot;&gt;Window thicknesses stable (variation &amp;lt;5% of design range between consecutive iterations)&lt;/span&gt;" vertex="1">
<mxGeometry height="81" width="360" x="540.5" y="815" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-132" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#88898A,#88898A);dashed=1;" value="" vertex="1">
<mxGeometry height="10" width="395" x="502.5" y="703" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-133" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#88898A,#88898A);dashed=1;" value="" vertex="1">
<mxGeometry height="10" width="395" x="503" y="785" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-135" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-30" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-34" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="420" y="730" as="sourcePoint" />
<mxPoint x="460" y="730" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-137" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="140" width="399" x="960" y="688" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-39" parent="NqAJ2NS9s772DdJamvT2-137" style="rhombus;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);strokeWidth=3;fillColor=light-dark(#FFFFFF, #f1f2f3);rounded=0;" value="" vertex="1">
<mxGeometry height="140" width="320" x="39.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-136" parent="NqAJ2NS9s772DdJamvT2-137" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;All criterias fulfilled?&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="399" y="55" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-138" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC0000,#CC0000);fillColor=light-dark(#FEF3F1,#FEF3F1);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="160" width="320" x="1460" y="800" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-139" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-34" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="1050" y="740" as="sourcePoint" />
<mxPoint x="1010" y="758" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-141" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-39" style="endArrow=block;html=1;rounded=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;fontSize=20;fontColor=light-dark(#009900,#009900);labelBackgroundColor=none;fontStyle=1" target="NqAJ2NS9s772DdJamvT2-33" value="Yes">
<mxGeometry height="50" relative="1" width="50" x="-0.8392" y="29" as="geometry">
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="1160" y="640" />
</Array>
<mxPoint x="1930" y="660" as="sourcePoint" />
<mxPoint x="1370" y="717" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-142" edge="1" parent="1" style="endArrow=block;html=1;rounded=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;labelBackgroundColor=none;fontColor=light-dark(#CC0000,#CC0000);" target="NqAJ2NS9s772DdJamvT2-138" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<Array as="points">
<mxPoint x="1160" y="880" />
</Array>
<mxPoint x="1160" y="830" as="sourcePoint" />
<mxPoint x="1560" y="930" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-143" connectable="0" parent="NqAJ2NS9s772DdJamvT2-142" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontColor=light-dark(#CC0000,#CC0000);fontSize=20;fontStyle=1" value="No" vertex="1">
<mxGeometry relative="1" x="-0.136" y="5" as="geometry">
<mxPoint x="-127" y="-21" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-144" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#009900,#009900);fontStyle=1" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Accept optimized geometry&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;(FEM-validated)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="140" width="320" x="1460" y="570" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-145" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC6600,#CC6600);fontStyle=1" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Add new FEM result to dataset&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Retrain surrogate models and repeat optimization&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="140" width="320" x="1460" y="810" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-154" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="160" width="1760" x="20" y="975" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-40" parent="NqAJ2NS9s772DdJamvT2-154" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC6600,#CC6600);fillColor=light-dark(#FDF9F1,#FDF9F1);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="160" width="1760" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-41" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC6600,#CC6600);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;Summary&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="1740" x="10" y="10" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-146" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;DE explores the design space using fast surrogate predictions&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="40" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-148" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Objective prioritizes damage control; energy dissipation acts as a tie-breaker&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="470" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-149" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;FEM validation ensures reliability of the predicted optimal solution&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="890" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-150" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;If not validated: retrain surrogates and repeat the optimization&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="1310" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-151" parent="NqAJ2NS9s772DdJamvT2-154" style="line;strokeWidth=2;direction=south;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="90" width="10" x="450" y="50" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-152" parent="NqAJ2NS9s772DdJamvT2-154" style="line;strokeWidth=2;direction=south;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="90" width="10" x="875" y="50" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-153" parent="NqAJ2NS9s772DdJamvT2-154" style="line;strokeWidth=2;direction=south;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="90" width="10" x="1299" y="50" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
<mxfile host="Electron">
<diagram name="Página-1" id="1v_gK5ucXEDHDrNlaqZp">
<mxGraphModel dx="3089" dy="1391" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="900" pageHeight="1600" math="1" shadow="0">
<mxGraphModel dx="2415" dy="963" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="900" pageHeight="1600" math="1" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="nnfSLRhPGeqcoKDVX0xg-2" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="110" width="320" x="-560" y="600" as="geometry" />
<mxGeometry height="110" width="320" x="-550" y="600" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-3" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="560" width="320" x="-560" y="720" as="geometry" />
<mxGeometry height="560" width="320" x="-550" y="720" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-4" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#0D0BA2,#0D0BA2);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="110" width="490" x="-200" y="600" as="geometry" />
......@@ -19,13 +19,13 @@
<mxCell id="nnfSLRhPGeqcoKDVX0xg-6" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#0D0BA2,#0D0BA2);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="560" width="230" x="60" y="720" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-7" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#F54400,#F54400);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-7" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#994C00,#994C00);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="110" width="450" x="320" y="600" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-8" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#F54400,#F54400);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-8" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC6600,#CC6600);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="560" width="220" x="320" y="720" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-9" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#F54400,#F54400);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-9" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC6600,#CC6600);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="560" width="220" x="550" y="720" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-10" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#009900,#009900);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
......@@ -35,34 +35,34 @@
<mxGeometry height="560" width="320" x="800" y="720" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-12" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;fontSize=22;fontColor=light-dark(#88898A,#88898A);" value="&lt;b&gt;1&lt;/b&gt;" vertex="1">
<mxGeometry height="40" width="40" x="-550" y="635" as="geometry" />
<mxGeometry height="40" width="40" x="-540" y="635" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-13" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=light-dark(#0D0BA2,#0D0BA2);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;fontSize=22;fontColor=light-dark(#0D0BA2,#0D0BA2);" value="&lt;b&gt;2&lt;/b&gt;" vertex="1">
<mxGeometry height="40" width="40" x="-190" y="635" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-14" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=light-dark(#F54400,#F54400);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;fontSize=22;fontColor=light-dark(#F54400,#F54400);" value="&lt;b&gt;3&lt;/b&gt;" vertex="1">
<mxGeometry height="40" width="40" x="328" y="635" as="geometry" />
<mxCell id="nnfSLRhPGeqcoKDVX0xg-14" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=light-dark(#CC6600,#CC6600);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;fontSize=22;fontColor=light-dark(#CC6600,#CC6600);" value="&lt;b&gt;3&lt;/b&gt;" vertex="1">
<mxGeometry height="40" width="40" x="331" y="635" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-15" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;strokeColor=light-dark(#009900,#009900);fillColor=light-dark(#FFFFFF,#FFFFFF);strokeWidth=3;fontSize=22;fontColor=light-dark(#009900,#009900);" value="&lt;b&gt;4&lt;/b&gt;" vertex="1">
<mxGeometry height="40" width="40" x="810" y="633.75" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-16" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);" value="&lt;font style=&quot;font-size: 22px; color: light-dark(rgb(136, 137, 138), rgb(136, 137, 138));&quot;&gt;&lt;b style=&quot;&quot;&gt;Dataset&lt;/b&gt;&lt;/font&gt;&lt;div&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0)); font-size: 22px;&quot;&gt;(one output variable)&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="90" width="250" x="-500" y="610" as="geometry" />
<mxGeometry height="90" width="250" x="-490" y="610" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-17" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;font-size: 22px; color: light-dark(rgb(4, 3, 117), rgb(4, 3, 117));&quot;&gt;&lt;b style=&quot;&quot;&gt;Cross-validation&lt;/b&gt;&lt;/font&gt;&lt;div&gt;&lt;span style=&quot;color: rgb(0, 0, 0); font-size: 22px;&quot;&gt;(adapted to dataset size)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="87.5" width="418" x="-138" y="610" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-19" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#F54400,#F54400);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b&gt;Model training and performance evaluation&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-19" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC6600,#CC6600);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b&gt;Model training and performance evaluation&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="90" width="372" x="388" y="610" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-21" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontStyle=1;fontColor=light-dark(#009900,#009900);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;Model selection&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="250" x="860" y="638.75" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-25" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#88898A);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b&gt;FEM dataset&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="200" x="-500" y="730" as="geometry" />
<mxGeometry height="40" width="200" x="-490" y="730" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-26" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontSize=20;" value="&lt;font style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;&lt;b&gt;Inputs:&lt;/b&gt; window thicknesses&lt;/font&gt;&lt;div&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;&lt;b&gt;Output:&lt;/b&gt; target variable y&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="70" width="300" x="-550" y="776" as="geometry" />
<mxGeometry height="70" width="300" x="-540" y="776" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-61" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#0D0BA2,#0D0BA2);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b&gt;CV strategy&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="230" x="-190" y="730" as="geometry" />
......@@ -73,7 +73,7 @@
<mxCell id="nnfSLRhPGeqcoKDVX0xg-63" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);dashed=1;strokeWidth=2;strokeColor=light-dark(#B266FF,#B266FF);absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="150" width="230" x="-190" y="860" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-64" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);dashed=1;strokeWidth=2;strokeColor=light-dark(#FDAA71,#FDAA71);absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-64" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);dashed=1;strokeWidth=2;strokeColor=light-dark(#FF8000,#FF8000);absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="110" width="230" x="-190" y="1030" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-65" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);dashed=1;strokeWidth=2;strokeColor=light-dark(#83BA64,#83BA64);absoluteArcSize=1;fontColor=light-dark(#009900,#009900);" value="" vertex="1">
......@@ -82,28 +82,28 @@
<mxCell id="nnfSLRhPGeqcoKDVX0xg-67" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;font-size: 22px; color: light-dark(rgb(13, 11, 162), rgb(13, 11, 162));&quot;&gt;&lt;b&gt;Example: 5-fold CV&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="50" width="210" x="70" y="730" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-81" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=18;fontColor=light-dark(#F54400,#F54400);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b style=&quot;&quot;&gt;For each candidate model&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-81" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=18;fontColor=light-dark(#CC6600,#CC6600);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b style=&quot;&quot;&gt;For each candidate model&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="70" width="202" x="328" y="730" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-82" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#F54400,#F54400);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-82" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#CC6600,#CC6600);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="60" width="202" x="328" y="822" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-83" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#F54400,#F54400);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-83" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#CC6600,#CC6600);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="60" width="202" x="328" y="891" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-84" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#F54400,#F54400);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-84" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#CC6600,#CC6600);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="60" width="202" x="328" y="961" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-85" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#F54400,#F54400);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-85" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#CC6600,#CC6600);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="60" width="202" x="328" y="1029" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-86" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#F54400,#F54400);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-86" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#CC6600,#CC6600);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="60" width="202" x="328" y="1098" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-87" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#F54400,#F54400);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-87" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#CC6600,#CC6600);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="60" width="202" x="328" y="1166" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-89" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;font-size: 22px; color: light-dark(rgb(245, 68, 0), rgb(245, 68, 0));&quot;&gt;&lt;b style=&quot;&quot;&gt;Bayesian optimization&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-89" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC6600,#CC6600);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b style=&quot;&quot;&gt;Bayesian optimization&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="70" width="200" x="560" y="730" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-90" parent="1" style="rounded=1;whiteSpace=wrap;html=1;fillColor=light-dark(#FFFFFF,#FFFFFF);strokeColor=light-dark(#000000,#000000);strokeWidth=2;absoluteArcSize=1;" value="" vertex="1">
......@@ -112,7 +112,7 @@
<mxCell id="nnfSLRhPGeqcoKDVX0xg-91" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=20;" value="&lt;div&gt;&lt;div&gt;&lt;span style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0)); background-color: transparent;&quot;&gt;&lt;b&gt;Best configuration:&lt;/b&gt; min. mean RMSE&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="53" width="190" x="563.01" y="1202" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-97" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#F54400,#F54400);" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-97" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="10" width="200" x="558" y="901" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-98" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontStyle=1;fontColor=light-dark(#009900,#009900);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;Model ranking&lt;/font&gt;" vertex="1">
......@@ -470,7 +470,7 @@
<mxGeometry height="10" width="300" x="810" y="980" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-168" parent="1" style="childLayout=tableLayout;recursiveResize=0;shadow=0;fillColor=none;strokeColor=light-dark(#000000,#000000);fontColor=light-dark(#000000,#000000);fontSize=20;" value="" vertex="1">
<mxGeometry height="328" width="300" x="-550" y="879" as="geometry" />
<mxGeometry height="328" width="300" x="-540" y="879" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-169" parent="nnfSLRhPGeqcoKDVX0xg-168" style="shape=tableRow;horizontal=0;startSize=0;swimlaneHead=0;swimlaneBody=0;top=0;left=0;bottom=0;right=0;dropTarget=0;collapsible=0;recursiveResize=0;expand=0;fontStyle=0;fillColor=none;strokeColor=inherit;" value="" vertex="1">
<mxGeometry height="47" width="300" as="geometry" />
......@@ -668,10 +668,10 @@
<mxRectangle height="47" width="60" as="alternateBounds" />
</mxGeometry>
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-234" parent="1" style="whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#E4F2D3,#E4F2D3);" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-234" parent="1" style="whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#E4F2D3,#E4F2D3);strokeColor=none;" value="" vertex="1">
<mxGeometry height="30" width="30" x="94.25" y="1067" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-235" parent="1" style="whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#C6D9F2,#C6D9F2);" value="" vertex="1">
<mxCell id="nnfSLRhPGeqcoKDVX0xg-235" parent="1" style="whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#C6D9F2,#C6D9F2);strokeColor=none;" value="" vertex="1">
<mxGeometry height="30" width="30" x="94.25" y="1117" as="geometry" />
</mxCell>
<mxCell id="nnfSLRhPGeqcoKDVX0xg-236" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontSize=20;" value="&lt;font style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;Training data&lt;/font&gt;" vertex="1">
......@@ -689,7 +689,7 @@
<mxCell id="ulNCGQqmzGW29SgBMLZ--2" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=18;" value="&lt;font color=&quot;#000000&quot;&gt;&lt;b&gt;Leave-One-Out (&lt;i&gt;K&amp;nbsp;&lt;/i&gt;=&amp;nbsp;&lt;i&gt;N&lt;/i&gt;)&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="47" width="200" x="-175" y="913" as="geometry" />
</mxCell>
<mxCell id="ulNCGQqmzGW29SgBMLZ--3" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#FF9933,#FF9933);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b&gt;&lt;font style=&quot;&quot;&gt;If 21 ≤&amp;nbsp;N&amp;nbsp;≤ 8&lt;/font&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;0&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxCell id="ulNCGQqmzGW29SgBMLZ--3" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#FF8000,#FF8000);" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;&lt;b&gt;&lt;font style=&quot;&quot;&gt;If 21 ≤&amp;nbsp;N&amp;nbsp;≤ 8&lt;/font&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;0&lt;/span&gt;&lt;/b&gt;&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="140" x="-145" y="1048" as="geometry" />
</mxCell>
<mxCell id="ulNCGQqmzGW29SgBMLZ--4" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=18;fontStyle=1" value="&lt;font color=&quot;#000000&quot;&gt;Repeated K-Fold CV (&lt;i&gt;K&amp;nbsp;&lt;/i&gt;= 4, 5 times)&lt;/font&gt;" vertex="1">
......@@ -701,9 +701,6 @@
<mxCell id="ulNCGQqmzGW29SgBMLZ--6" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=18;fontStyle=1" value="&lt;font color=&quot;#000000&quot;&gt;K-Fold CV (&lt;i&gt;K&amp;nbsp;&lt;/i&gt;= 5)&lt;/font&gt;" vertex="1">
<mxGeometry height="47" width="200" x="-175" y="1208" as="geometry" />
</mxCell>
<mxCell id="ulNCGQqmzGW29SgBMLZ--8" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;font style=&quot;font-size: 14px;&quot;&gt;(*) Reduced search space for tree-based models to mitigate overfitting&lt;/font&gt;" vertex="1">
<mxGeometry height="60" width="210" x="-180" y="949" as="geometry" />
</mxCell>
<mxCell id="ulNCGQqmzGW29SgBMLZ--9" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontSize=20;" value="&lt;font&gt;Random Forest (RF)&lt;/font&gt;" vertex="1">
<mxGeometry height="50" width="180" x="340" y="827" as="geometry" />
</mxCell>
......@@ -723,7 +720,7 @@
<mxGeometry height="50" width="180" x="340" y="1171" as="geometry" />
</mxCell>
<mxCell id="ulNCGQqmzGW29SgBMLZ--15" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontSize=20;" value="&lt;div&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;(40 evaluations)&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;&lt;br&gt;&lt;/font&gt;&lt;/div&gt;&lt;div&gt;&lt;font&gt;&lt;font style=&quot;background-color: transparent; color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;Cross-validated&amp;nbsp;&lt;/font&gt;&lt;span style=&quot;background-color: transparent; color: light-dark(rgb(0, 0, 0), rgb(0, 0, 0));&quot;&gt;RMSE for each configuration&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="212" x="558" y="791" as="geometry" />
<mxGeometry height="110" width="212" x="554" y="791" as="geometry" />
</mxCell>
<mxCell id="ulNCGQqmzGW29SgBMLZ--16" parent="1" style="shape=image;aspect=fixed;image=data:image/png,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iLKDFSqiBCqVynYRua/5Y4z50KDviYiIsoOBioiIiKhHDFREREREPWKgIiIiIuoRAxURERFRjxioiIiIiHrEQEVERETUI86hIkqgUqnMDQ8PX9x8LSLfH+T9EBFRtjBQESVw+eWXlwH85aDvg4iIsolLfkREREQ9YqAiIiIi6hGX/IgSmJyc3LK4uPgJ59AXd+/e/WcDuyEiIsoUBiqiBCqVyjoR+bXma1V9eJD3Q0RE2cIlPyIiIqIeMVARERER9YiBioiIiKhHDFREREREPWKgIiIiIuoRn/IjSmB4eHhxcXHxG83XIvKDQd4PERFlCwMVUQITExMPAXjmoO+DiIiyiUt+RERERD1ioCIiIiLqEZf8iBKYnJzcWK1Wf6/52lr7gz179vzzIO+JiIiyg4GKKIFKpTImIn/vHLoBAAMVEREB4JIfERERUc8YqIiIiIh6xEBFRERE1CMGKiIiIqIeMVARERER9YiBioiIiKhHHJtAlMBdd931wMknn/zk5uuhoaHSIO+HiIiyhYGKKIHrrruuBuDOQd8HERFlE5f8iIiIiHrEChVRAiIiF1988abm62q1Wrn88svLg7wnIiLKDlaoiBK45JJLjsvlcg83f4aHhz826HsiIqLsYKAiIiIi6hEDFREREVGPGKiIiIiIesRARURERNQjBioiIiKiHomqDvoeuvaWt7zlYwDOcw5NA5gb0O3QI9tGALuc1z8GcPOA7oWIiDLmkTaHanzQN0BHjccCeNWgb4KIiLKBS35EREREPWKgIiIiIurRml7yGxoaurhSqbx90PdBRERER7c13ZRORERElAVc8iMiIiLqEQMVERERUY8YqIiIiIh6xEBFRERE1CMGKiIiIqIeMVARERER9YiBioiIiKhHDFREREREPWKgIiIiIuoRAxURERFRjxioiIiIiHrEQLUKROQLIqKNn88M+n4onojc4PyzujXhZ54rIteIyE9E5LCI3C8i/09Ezl7p+6VoIrJZRP5ERP5VRB4UkQUReUhEviQil4jIlgTXeKqIvF9EftD453pARD4nIq8UEf7eucpE5HQR+aiI3NP45/GAiPy7iLxBRDYm+PyQiLyu8ZkHGtf4voi8W0SesBq/BupM6j7j/D680OF8IyIXishnG/8fPdz4/+wHROSXVuu+AW6OvOJE5OUA/sE5dLOqvmRQ90PxRORF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;" value="" vertex="1">
<mxGeometry height="230" width="202.18" x="558.91" y="931" as="geometry" />
......@@ -782,6 +779,9 @@
<mxPoint x="990" y="1310" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="VQaSP4RpYvpoXaK_EBNo-1" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;" value="&lt;span style=&quot;color: rgb(0, 0, 0);&quot;&gt;&lt;font style=&quot;font-size: 14px;&quot;&gt;(*) Reduced search space for tree-based models to mitigate overfitting&lt;/font&gt;&lt;/span&gt;" vertex="1">
<mxGeometry height="54" width="210" x="-180" y="951" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
......
This source diff could not be displayed because it is too large. You can view the blob instead.
<mxfile host="Electron">
<diagram name="Página-1" id="LzcljoWLl8ARBYUkCDr3">
<mxGraphModel dx="597" dy="379" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="900" pageHeight="1600" background="light-dark(#FFFFFF,#FFFFFF)" math="1" shadow="0">
<root>
<mxCell id="0" />
<mxCell id="1" parent="0" />
<mxCell id="NqAJ2NS9s772DdJamvT2-2" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="380" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-3" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="20" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-16" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;1. Design variables&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="30" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-20" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;2. Surrogate models&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="390" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-21" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="1100" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-22" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="740" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-23" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;3. Predictions for candidate x&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="310" x="745" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-24" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;4. Objective function&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="1110" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-25" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="1460" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-26" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;5. Optimizer&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="1470" y="60" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-30" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="320" x="20" y="558" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-31" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;6. FEM validation&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="300" x="30" y="580" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-33" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#009900,#009900);fillColor=light-dark(#F8FBF7,#F8FBF7);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="160" width="320" x="1460" y="560" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-34" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="400" width="420" x="490" y="558" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-35" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;7. Acceptance criteria&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="399" x="501" y="580" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-37" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC6600,#CC6600);fillColor=light-dark(#FDF9F1,#FDF9F1);strokeWidth=3;absoluteArcSize=1;fontColor=light-dark(#CC6600,#CC6600);" value="&lt;font style=&quot;font-size: 20px;&quot;&gt;FEM analysis&lt;/font&gt;" vertex="1">
<mxGeometry height="60" width="300" x="30" y="659" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-42" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows thicknesses&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;font style=&quot;&quot;&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;(to be optimized)&lt;br&gt;&lt;/span&gt;&lt;/font&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="50" width="300" x="30" y="100" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-43" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;(trained on FEM data)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="390" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-48" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;&lt;b style=&quot;&quot;&gt;$$Damage (\mathcal{D})$$&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="390" y="254" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-66" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;(surrogate)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="750" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-69" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#0000CC,#0000CC);fontSize=16;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;Maximize energy dissipation (tie-breaker)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="25" width="310" x="1105" y="349" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-70" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);fontSize=16;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;Window penalties (balance &amp;amp; limit damage)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="25" width="310" x="1105" y="374" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-71" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);fontSize=16;" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;Frame penalty (strong)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="25" width="310" x="1105" y="399" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-73" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="40" width="170" x="1180" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-67" parent="NqAJ2NS9s772DdJamvT2-73" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;Minimize&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="107.36842105263158" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-72" parent="NqAJ2NS9s772DdJamvT2-73" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;$$J(\mathbf{x})$$&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="71.57894736842105" x="88.57894736842105" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-91" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="205" width="300" x="1110" y="137" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-68" parent="NqAJ2NS9s772DdJamvT2-91" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#4C0099,#4C0099);strokeWidth=2;fillColor=light-dark(#F7F5FD,#F7F5FD);fontColor=light-dark(#4C0099,#4C0099);" value="" vertex="1">
<mxGeometry height="200" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-77" parent="NqAJ2NS9s772DdJamvT2-91" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#4C0099,#4C0099);" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent;&quot;&gt;&lt;font style=&quot;font-size: 20px;&quot;&gt;$$J(\mathbf{x})=-\sum_{i=1}^{W}\hat{\varepsilon}_{xy,i}t_{w,i}A_i$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="70" width="300" y="3" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-88" parent="NqAJ2NS9s772DdJamvT2-91" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;color: light-dark(rgb(76, 0, 153), rgb(76, 0, 153)); font-size: 20px;&quot;&gt;$$+\sum_{i=1}^{W}P_w(\hat{\mathcal{D}}_i;\mathcal{D}_w^*)$$&lt;/font&gt;" vertex="1">
<mxGeometry height="68" width="300" y="73" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-89" parent="NqAJ2NS9s772DdJamvT2-91" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;" value="&lt;font style=&quot;color: light-dark(rgb(76, 0, 153), rgb(76, 0, 153)); font-size: 20px;&quot;&gt;$$+P_f(\hat{\mathcal{D}}_f;\mathcal{D}_f^{max})$$&lt;/font&gt;" vertex="1">
<mxGeometry height="65" width="300" y="141" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-92" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;Differential Evolution&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="1470" y="90" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-93" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Pop. size = 25 x D&lt;br&gt;&lt;/font&gt;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Max. iterations = 500&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Tolerance = 10&lt;sup&gt;-6&lt;/sup&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="300" x="1470" y="140" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-94" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#88898A,#88898A);" value="" vertex="1">
<mxGeometry height="10" width="300" x="1470" y="257" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-95" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;Output:&lt;/b&gt;&lt;/span&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;&lt;br&gt;&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;b&gt;Best candidate x*&lt;/b&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="120" width="300" x="1470" y="281.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-27" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);fillColor=light-dark(#F1F2F3,#F1F2F3);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="87" width="320" x="740" y="453" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-97" connectable="0" parent="1" style="group;fontColor=light-dark(#000000,#000000);" value="" vertex="1">
<mxGeometry height="65" width="310" x="745" y="464" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-28" parent="NqAJ2NS9s772DdJamvT2-97" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#88898A,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;Candidate geometry x*&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="310" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-96" parent="NqAJ2NS9s772DdJamvT2-97" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;span style=&quot;font-size: 20px;&quot;&gt;(from surrogate optimization)&lt;/span&gt;" vertex="1">
<mxGeometry height="35" width="310" y="30" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-99" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-3" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-2" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="680" y="680" as="sourcePoint" />
<mxPoint x="730" y="630" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-100" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-2" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-22" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="710" y="230" as="sourcePoint" />
<mxPoint x="750" y="230" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-101" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-22" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-21" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="1070" y="220" as="sourcePoint" />
<mxPoint x="1110" y="220" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-102" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-21" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-25" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="1430" y="210" as="sourcePoint" />
<mxPoint x="1470" y="210" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-103" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-25" style="endArrow=block;html=1;rounded=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;" target="NqAJ2NS9s772DdJamvT2-27" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<Array as="points">
<mxPoint x="1620" y="497" />
<mxPoint x="1060" y="497" />
</Array>
<mxPoint x="1610" y="470" as="sourcePoint" />
<mxPoint x="1650" y="470" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-104" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;(adaptative)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" x="30" y="610" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-105" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;Compare FEM vs surrogate predcitions&lt;/font&gt;" vertex="1">
<mxGeometry height="60" width="300" x="30" y="731" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-110" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="160" width="300" x="30" y="794" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-106" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$\hat{\varepsilon}_{xy,i}$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-107" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$\mathcal{D}_{i}$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-108" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$\mathcal{D}_{f}$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" y="80" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-109" parent="NqAJ2NS9s772DdJamvT2-110" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;$$J$$&lt;/font&gt;" vertex="1">
<mxGeometry height="40" width="300" y="120" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-111" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-27" style="endArrow=block;html=1;rounded=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;" target="NqAJ2NS9s772DdJamvT2-30" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<Array as="points">
<mxPoint x="180" y="497" />
</Array>
<mxPoint x="1200" y="510" as="sourcePoint" />
<mxPoint x="640" y="567" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-112" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="110" width="300" x="390" y="130" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-44" parent="NqAJ2NS9s772DdJamvT2-112" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#0000CC,#0000CC);strokeWidth=2;fillColor=light-dark(#F5FAFE,#F5FAFE);" value="" vertex="1">
<mxGeometry height="110" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-45" parent="NqAJ2NS9s772DdJamvT2-112" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;&lt;b&gt;$$Distortion (\varepsilon_{xy})$$&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-46" parent="NqAJ2NS9s772DdJamvT2-112" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;$$\hat{\varepsilon}_{xy,i}, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-55" parent="NqAJ2NS9s772DdJamvT2-112" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-113" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="179" width="300" x="390" y="250" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-47" parent="NqAJ2NS9s772DdJamvT2-113" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#CC0000,#CC0000);strokeWidth=2;fillColor=light-dark(#F5F9FE,#F5F9FE);" value="" vertex="1">
<mxGeometry height="179" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-50" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-52" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_i, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-53" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Frame:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="104" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-54" parent="NqAJ2NS9s772DdJamvT2-113" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_f$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="134" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-114" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="110" width="300" x="750" y="130" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-115" parent="NqAJ2NS9s772DdJamvT2-114" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#0000CC,#0000CC);strokeWidth=2;fillColor=light-dark(#F5FAFE,#F5FAFE);" value="" vertex="1">
<mxGeometry height="110" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-116" parent="NqAJ2NS9s772DdJamvT2-114" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;&lt;b&gt;$$Distortion (\varepsilon_{xy})$$&lt;/b&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-117" parent="NqAJ2NS9s772DdJamvT2-114" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;color: light-dark(rgb(0, 0, 204), rgb(0, 0, 204));&quot;&gt;$$\hat{\varepsilon}_{xy,i}, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-118" parent="NqAJ2NS9s772DdJamvT2-114" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-119" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="179" width="300" x="750" y="250" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-120" parent="NqAJ2NS9s772DdJamvT2-119" style="rounded=1;whiteSpace=wrap;html=1;absoluteArcSize=1;strokeColor=light-dark(#CC0000,#CC0000);strokeWidth=2;fillColor=light-dark(#F5F9FE,#F5F9FE);" value="" vertex="1">
<mxGeometry height="179" width="300" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-121" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Windows:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="34" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-122" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_i, i=1 \ldots W$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="64" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-123" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;Frame:&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="30" width="280" x="10" y="104" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-124" parent="NqAJ2NS9s772DdJamvT2-119" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px; background-color: transparent;&quot;&gt;&lt;font style=&quot;&quot;&gt;$$\hat{\mathcal{D}}_f$$&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="40" width="300" y="134" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-125" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;background-color: transparent; font-size: 20px;&quot;&gt;$$\mathbf{x} = \left[t_{w,1}, t_{w,2}, \ldots, t_{w,W}\right]$$&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="210" width="300" x="30" y="160" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-126" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#009900,#009900);fontSize=20;strokeColor=none;fontColor=light-dark(#FFFFFF,#FFFFFF);" value="1" vertex="1">
<mxGeometry height="30" width="30" x="501.5" y="650.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-127" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;Prediction error (all variables)&amp;nbsp;≤ 5%&lt;/font&gt;" vertex="1">
<mxGeometry height="31" width="360" x="540.5" y="650.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-128" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#009900,#009900);fontSize=20;strokeColor=none;fontColor=light-dark(#FFFFFF,#FFFFFF);" value="2" vertex="1">
<mxGeometry height="30" width="30" x="501" y="735" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-129" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px; font-weight: normal;&quot;&gt;|Objective error|&amp;nbsp;&lt;/font&gt;&lt;span style=&quot;color: rgba(0, 0, 0, 0); font-family: monospace; font-size: 0px; font-weight: 400; white-space: nowrap;&quot;&gt;%3CmxGraphModel%3E%3Croot%3E%3CmxCell%20id%3D%220%22%2F%3E%3CmxCell%20id%3D%221%22%20parent%3D%220%22%2F%3E%3CmxCell%20id%3D%222%22%20parent%3D%221%22%20style%3D%22ellipse%3BwhiteSpace%3Dwrap%3Bhtml%3D1%3Baspect%3Dfixed%3BfillColor%3Dlight-dark(%23009900%2C%23009900)%3BfontSize%3D20%3B%22%20value%3D%221%22%20vertex%3D%221%22%3E%3CmxGeometry%20height%3D%2230%22%20width%3D%2230%22%20x%3D%22521%22%20y%3D%22629%22%20as%3D%22geometry%22%2F%3E%3C%2FmxCell%3E%3CmxCell%20id%3D%223%22%20parent%3D%221%22%20style%3D%22text%3Bhtml%3D1%3BwhiteSpace%3Dwrap%3BstrokeColor%3Dnone%3BfillColor%3Dnone%3Balign%3Dleft%3BverticalAlign%3Dmiddle%3Brounded%3D0%3BfontColor%3Dlight-dark(%23000000%2C%23000000)%3BfontStyle%3D1%22%20value%3D%22%26lt%3Bfont%20style%3D%26quot%3Bfont-size%3A%2022px%3B%20font-weight%3A%20normal%3B%26quot%3B%26gt%3BPrediction%20error%20(all%20variables)%26amp%3Bnbsp%3B%E2%89%A4%205%25%26lt%3B%2Ffont%26gt%3B%22%20vertex%3D%221%22%3E%3CmxGeometry%20height%3D%2231%22%20width%3D%22360%22%20x%3D%22560%22%20y%3D%22629%22%20as%3D%22geometry%22%2F%3E%3C%2FmxCell%3E%3C%2Froot%3E%3C%2FmxGraphModel%3E&lt;/span&gt;&lt;span style=&quot;font-size: 22px; font-weight: 400;&quot;&gt;≤ 10&lt;/span&gt;" vertex="1">
<mxGeometry height="31" width="360" x="540.5" y="735" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-130" parent="1" style="ellipse;whiteSpace=wrap;html=1;aspect=fixed;fillColor=light-dark(#009900,#009900);fontSize=20;strokeColor=none;fontColor=light-dark(#FFFFFF,#FFFFFF);" value="3" vertex="1">
<mxGeometry height="30" width="30" x="501.5" y="815" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-131" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=left;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;span style=&quot;font-size: 22px; font-weight: 400;&quot;&gt;Window thicknesses stable (variation &amp;lt;5% of design range between consecutive iterations)&lt;/span&gt;" vertex="1">
<mxGeometry height="81" width="360" x="540.5" y="815" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-132" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#88898A,#88898A);dashed=1;" value="" vertex="1">
<mxGeometry height="10" width="395" x="502.5" y="703" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-133" parent="1" style="line;strokeWidth=2;html=1;strokeColor=light-dark(#88898A,#88898A);dashed=1;" value="" vertex="1">
<mxGeometry height="10" width="395" x="503" y="785" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-135" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-30" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" target="NqAJ2NS9s772DdJamvT2-34" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="420" y="730" as="sourcePoint" />
<mxPoint x="460" y="730" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-137" connectable="0" parent="1" style="group;fillColor=none;" value="" vertex="1">
<mxGeometry height="140" width="399" x="960" y="688" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-39" parent="NqAJ2NS9s772DdJamvT2-137" style="rhombus;whiteSpace=wrap;html=1;strokeColor=light-dark(#88898A,#88898A);strokeWidth=3;fillColor=light-dark(#F1F2F3,#F1F2F3);rounded=0;" value="" vertex="1">
<mxGeometry height="140" width="320" x="39.5" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-136" parent="NqAJ2NS9s772DdJamvT2-137" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;All criterias fulfilled?&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="399" y="55" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-138" parent="1" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC0000,#CC0000);fillColor=light-dark(#FEF3F1,#FEF3F1);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="160" width="320" x="1460" y="800" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-139" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-34" style="endArrow=block;html=1;rounded=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;curved=0;" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<mxPoint x="1050" y="740" as="sourcePoint" />
<mxPoint x="1010" y="758" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-141" edge="1" parent="1" source="NqAJ2NS9s772DdJamvT2-39" style="endArrow=block;html=1;rounded=1;exitX=0.5;exitY=0;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;fontSize=20;fontColor=light-dark(#009900,#009900);labelBackgroundColor=none;fontStyle=1" target="NqAJ2NS9s772DdJamvT2-33" value="Yes">
<mxGeometry height="50" relative="1" width="50" x="-0.8392" y="29" as="geometry">
<mxPoint as="offset" />
<Array as="points">
<mxPoint x="1160" y="640" />
</Array>
<mxPoint x="1930" y="660" as="sourcePoint" />
<mxPoint x="1370" y="717" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-142" edge="1" parent="1" style="endArrow=block;html=1;rounded=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;endFill=1;strokeColor=light-dark(#000000,#000000);startSize=10;endSize=10;strokeWidth=3;edgeStyle=orthogonalEdgeStyle;labelBackgroundColor=none;fontColor=light-dark(#CC0000,#CC0000);" target="NqAJ2NS9s772DdJamvT2-138" value="">
<mxGeometry height="50" relative="1" width="50" as="geometry">
<Array as="points">
<mxPoint x="1160" y="880" />
</Array>
<mxPoint x="1160" y="830" as="sourcePoint" />
<mxPoint x="1560" y="930" as="targetPoint" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-143" connectable="0" parent="NqAJ2NS9s772DdJamvT2-142" style="edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBackgroundColor=none;fontColor=light-dark(#CC0000,#CC0000);fontSize=20;fontStyle=1" value="No" vertex="1">
<mxGeometry relative="1" x="-0.136" y="5" as="geometry">
<mxPoint x="-127" y="-21" as="offset" />
</mxGeometry>
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-144" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#009900,#009900);fontStyle=1" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Accept optimized geometry&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;(FEM-validated)&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="140" width="320" x="1460" y="570" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-145" parent="1" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC0000,#CC0000);fontStyle=1" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Add new FEM result to dataset&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;&lt;br&gt;&lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Retrain surrogate models and repeat optimization&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="140" width="320" x="1460" y="810" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-154" connectable="0" parent="1" style="group" value="" vertex="1">
<mxGeometry height="160" width="1760" x="20" y="975" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-40" parent="NqAJ2NS9s772DdJamvT2-154" style="rounded=1;whiteSpace=wrap;html=1;strokeColor=light-dark(#CC6600,#CC6600);fillColor=light-dark(#FDF9F1,#FDF9F1);strokeWidth=3;absoluteArcSize=1;" value="" vertex="1">
<mxGeometry height="160" width="1760" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-41" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#CC6600,#CC6600);fontStyle=1" value="&lt;font style=&quot;font-size: 22px;&quot;&gt;Summary&lt;/font&gt;" vertex="1">
<mxGeometry height="30" width="1740" x="10" y="10" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-146" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;DE explores the design space using fast surrogate predictions&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="40" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-148" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;Objective prioritizes damage control; energy dissipation acts as a tie-breaker&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="470" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-149" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;FEM validation ensures reliability of the predicted optimal solution&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="890" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-150" parent="NqAJ2NS9s772DdJamvT2-154" style="text;html=1;whiteSpace=wrap;strokeColor=none;fillColor=none;align=center;verticalAlign=middle;rounded=0;fontColor=light-dark(#000000,#000000);" value="&lt;div&gt;&lt;span style=&quot;font-size: 20px;&quot;&gt;If not validated: retrain surrogates and repeat the optimization&lt;/span&gt;&lt;/div&gt;" vertex="1">
<mxGeometry height="110" width="400" x="1310" y="40" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-151" parent="NqAJ2NS9s772DdJamvT2-154" style="line;strokeWidth=2;direction=south;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="90" width="10" x="450" y="50" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-152" parent="NqAJ2NS9s772DdJamvT2-154" style="line;strokeWidth=2;direction=south;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="90" width="10" x="875" y="50" as="geometry" />
</mxCell>
<mxCell id="NqAJ2NS9s772DdJamvT2-153" parent="NqAJ2NS9s772DdJamvT2-154" style="line;strokeWidth=2;direction=south;html=1;strokeColor=light-dark(#CC6600,#CC6600);" value="" vertex="1">
<mxGeometry height="90" width="10" x="1299" y="50" as="geometry" />
</mxCell>
</root>
</mxGraphModel>
</diagram>
</mxfile>
This source diff could not be displayed because it is too large. You can view the blob instead.
......@@ -110,7 +110,7 @@ The design variables considered in this work are the window thicknesses
\mathbf{x}=\left[t_{w,1},t_{w,2},\ldots,t_{w,W}\right],
\label{eq:design_vector}
\end{equation}
where $W$ denotes the number of windows. The width and height identifiers of the device are represented by $B$ and $H$, respectively. Five geometry families are considered, as shown in Figure \ref{fig:GeometryFamilies}: H30\_B29, H30\_B34, H45\_B29, H45\_B34 and H60\_B34. Devices with $H=30$ cm have two windows, those with $H=45$ cm have three windows, and those with $H=60$ cm have five windows.
where $W$ denotes the number of windows. The width and height identifiers of the device are represented by $B$ and $H$, respectively. Five geometry families are considered, as shown in Figure \ref{fig:GeometryFamilies}: H30\_B29, H30\_B34, H45\_B29, H45\_B34 and H60\_B34. Devices with $H=30$ cm have two windows, those with $H=45$ cm have three windows and those with $H=60$ cm have five windows.
\begin{figure}[htbp]
\centering
......@@ -176,7 +176,7 @@ The damage indicator adopted in this work is the Triaxial Failure Damage Map (TF
The FEM campaign is planned to cover the admissible parameter domain of each device family while ensuring a homogeneous exploration of the multidimensional space. The design variables are the window thicknesses $t_{w,i}$, whose combinations are generated through a Design of Experiments (DoE) strategy based on Latin Hypercube Sampling (LHS) optimized with the maximin criterion \cite{Joseph2008}. This approach provides a near-random yet space-filling distribution of samples, reducing clustering and improving the representation of the admissible domain.
For each geometry family, the optimization cycle starts from an initial set of FEM simulations selected to provide reasonable coverage of the design space while keeping the computational cost as low as possible. The number of initial samples is defined according to the dimensionality of each family: 8 samples for two-window devices, 16 samples for three-window devices, and 64 samples for five-window devices. In all cases, the number of samples is selected as a power of two, which facilitates the potential use of Progressive Latin Hypercube Sampling (PLHS) \cite{Sheikholeslami2017} in future iterations. This would allow the DoE to be expanded while preserving its space-filling properties and avoiding the need to repeat previously computed simulations.
For each geometry family, the optimization cycle starts from an initial set of FEM simulations selected to provide reasonable coverage of the design space while keeping the computational cost as low as possible. The number of initial samples is defined according to the dimensionality of each family: 8 samples for two-window devices, 16 samples for three-window devices and 64 samples for five-window devices. In all cases, the number of samples is selected as a power of two, which facilitates the potential use of Progressive Latin Hypercube Sampling (PLHS) \cite{Sheikholeslami2017} in future iterations. This would allow the DoE to be expanded while preserving its space-filling properties and avoiding the need to repeat previously computed simulations.
To improve surrogate robustness near the admissible limits, the sampling domain is extended slightly beyond the actual optimization ranges reported in Table~\ref{tab:families}. This reduces the risk of extrapolation when evaluating candidate solutions close to the true design limits. The extended thickness ranges and the number of initial simulations for each family used in the DoE are summarized in Table~\ref{tab:families_doe}.
......@@ -218,14 +218,14 @@ For each geometry family, an independent regression model is trained for every t
Hyperparameters are optimized using Bayesian optimization \cite{Snoek2012}, with 40 evaluations per model. The first 10 evaluations are randomly sampled to explore the search space, while the remaining 30 are guided by the Bayesian surrogate model. This strategy provides a more efficient alternative to exhaustive grid search, particularly given the number of geometry families, target outputs and candidate algorithms considered.
The cross-validation strategy is adapted to the dataset size. Leave-One-Out validation is used for $N\leq20$, repeated five-fold cross-validation with five repetitions for $21\leq N\leq80$, and shuffled five-fold cross-validation for larger datasets. For small datasets, the search spaces of tree-based models are restricted to reduce overfitting.
The cross-validation strategy is adapted to the dataset size. Leave-One-Out validation is used for $N\leq20$, repeated five-fold cross-validation with five repetitions for $21\leq N\leq80$ and shuffled five-fold cross-validation for larger datasets. For small datasets, the search spaces of tree-based models are restricted to reduce overfitting.
Model selection is performed in two stages. First, for each candidate algorithm, Bayesian hyperparameter optimization is carried out using cross-validated Root Mean Squared Error (RMSE) as the refit criterion. The best hyperparameter configuration is therefore the one with the lowest mean RMSE. Then, the best configurations from all candidate algorithms are compared. The model with the lowest mean RMSE defines a competitive threshold, and all models with an RMSE within 5\% of this value are retained. Among these competitive models, the final selection is based on the lowest relative RMSE dispersion, computed as the standard deviation of the fold-wise RMSE divided by the mean RMSE. If two models have the same dispersion, the one with the lower mean RMSE is preferred. This procedure favours surrogates that are both accurate and stable, which is important because small prediction errors near active damage constraints may alter the optimized geometry.
Model selection is performed in two stages. First, for each candidate algorithm, Bayesian hyperparameter optimization is carried out using cross-validated Root Mean Squared Error (RMSE) as the refit criterion. The best hyperparameter configuration is therefore the one with the lowest mean RMSE. Then, the best configurations from all candidate algorithms are compared. The model with the lowest mean RMSE defines a competitive threshold and all models with an RMSE within 5\% of this value are retained. Among these competitive models, the final selection is based on the lowest relative RMSE dispersion, computed as the standard deviation of the fold-wise RMSE divided by the mean RMSE. If two models have the same dispersion, the one with the lower mean RMSE is preferred. This procedure favours surrogates that are both accurate and stable, which is important because small prediction errors near active damage constraints may alter the optimized geometry.
\begin{figure}[htbp]
\centering
\includegraphics[width=1.0\textwidth]{./Figures/BayesianSearchCV.pdf}
\caption{Workflow of the supervised surrogate training and selection strategy. For each output variable, the cross-validation strategy is adapted to the dataset size, Bayesian optimization is used to tune each candidate model, and the final surrogate is selected according to RMSE accuracy and fold-wise RMSE dispersion.}
\caption{Workflow of the supervised surrogate training and selection strategy. For each output variable, the cross-validation strategy is adapted to the dataset size, Bayesian optimization is used to tune each candidate model and the final surrogate is selected according to RMSE accuracy and fold-wise RMSE dispersion.}
\label{fig:BayesianSearchCV}
\end{figure}
......@@ -240,9 +240,9 @@ The prediction model can be expressed as
\hat{y}(\mathbf{x}) = \sum_{j=1}^{N} \lambda_j \, \phi\left(\|\mathbf{x}-\mathbf{x}_j\|\right),
\label{eq:rbf}
\end{equation}
where $\mathbf{x}_j$ denotes the FEM-sampled geometries, $\lambda_j$ represents the interpolation weights, and $\phi$ corresponds to the selected radial basis function.
where $\mathbf{x}_j$ denotes the FEM-sampled geometries, $\lambda_j$ represents the interpolation weights and $\phi$ corresponds to the selected radial basis function.
For each output variable, a final RBF surrogate is trained using all available FEM samples in the current iteration and stored for subsequent use in the optimization process. Its predictive performance is assessed through Leave-One-Out validation: each FEM sample is iteratively removed from the dataset, a temporary RBF interpolant is trained with the remaining samples, and the excluded sample is predicted. The resulting out-of-sample predictions are then used to compute RMSE, MAE and $R^2$ in order to assess the interpolation accuracy.
For each output variable, a final RBF surrogate is trained using all available FEM samples in the current iteration and stored for subsequent use in the optimization process. Its predictive performance is assessed through Leave-One-Out validation: each FEM sample is iteratively removed from the dataset, a temporary RBF interpolant is trained with the remaining samples and the excluded sample is predicted. The resulting out-of-sample predictions are then used to compute RMSE, MAE and $R^2$ in order to assess the interpolation accuracy.
This validation strategy is suitable for the present application because the number of FEM simulations is limited and the interpolation accuracy may be sensitive to local variations in the density of training samples. In addition, the low training and evaluation cost of RBF interpolation makes it especially attractive for iterative optimization workflows involving repeated surrogate updates and evaluations.
......@@ -259,7 +259,7 @@ J(\mathbf{x}) = - \sum_{i=1}^{W} \hat{\Exy}_i^2\, t_{w,i}\, A_i +
P_f\left(\widehat{\TFD}_f;\TFD_f^{\max}\right),
\label{eq:objective}
\end{equation}
where $W$ is the number of windows, $t_{w,i}$ is the thickness of window $i$, $A_i$ is the corresponding area factor, $\TFD_w^{\star}$ is the target damage level for the windows, and $\TFD_f^{\max}$ is the maximum admissible frame damage threshold. The first term is negative because the optimizer minimizes $J$; therefore, larger energy dissipation contributions reduce the objective value and are favoured once the damage criteria are satisfied.
where $W$ is the number of windows, $t_{w,i}$ is the thickness of window $i$, $A_i$ is the corresponding area factor, $\TFD_w^{\star}$ is the target damage level for the windows and $\TFD_f^{\max}$ is the maximum admissible frame damage threshold. The first term is negative because the optimizer minimizes $J$; therefore, larger energy dissipation contributions reduce the objective value and are favoured once the damage criteria are satisfied.
The window penalty is defined as
\begin{equation}
......@@ -308,14 +308,14 @@ If all criteria are satisfied, the FEM-validated geometry is accepted as the opt
\begin{figure}[htbp]
\centering
\includegraphics[width=1.0\textwidth]{./Figures/OptimizationFlowChart.png}
\includegraphics[width=1.0\textwidth]{./Figures/OptimizationFlowChart.pdf}
\caption{Surrogate-assisted optimization and FEM validation retraining loop.}
\label{fig:OptimizationFlowChart}
\end{figure}
\section{Numerical results and discussion}\label{sec:results}
The supervised-learning comparison shows a clear hierarchy among the candidate surrogate models. A total of 100 output-specific training problems were considered, corresponding to the $2W+1$ target variables required for each geometry family and adaptive iteration. The H30\_B29 family required two optimization iterations, whereas the remaining families required three. Across all geometry families, iterations and output variables, SVR was the most frequently selected model and also the model that most often achieved the lowest cross-validated RMSE. As summarized in Figure~\ref{fig:surrogate_selection_summary_barplot}, SVR was selected in 71 cases, followed by GPR, GBR, XGBoost and MLP, while Random Forest was not selected in any case. This dominance was particularly clear for the two-window families, where only one output was assigned to a different model, namely GPR, and for the damage-related outputs, for which SVR was selected in 47 out of 57 cases. For more complex devices, those with three and five windows, and for distortion-related outputs, the model selection became more heterogeneous, although SVR still provided the best overall performance. From the computational point of view, SVR also offered the lowest median training times among the supervised models, whereas MLP required substantially longer training times without providing gain in accuracy.
The supervised-learning comparison shows a clear hierarchy among the candidate surrogate models. A total of 100 output-specific training problems were considered, corresponding to the $2W+1$ target variables required for each geometry family and adaptive iteration. The H30\_B29 family required two optimization iterations, whereas the remaining families required three. Across all geometry families, iterations and output variables, SVR was the most frequently selected model and also the model that most often achieved the lowest cross-validated RMSE. As summarized in Figure~\ref{fig:surrogate_selection_summary_barplot}, SVR was selected in 71 cases, followed by GPR, GBR, XGBoost and MLP, while Random Forest was not selected in any case. This dominance was particularly clear for the two-window families, where only one output was assigned to a GPR model and for the damage-related outputs, for which SVR was selected in 47 out of 57 cases. For more complex devices, those with three and five windows, and for distortion-related outputs, the model selection became more heterogeneous, although SVR still provided the best overall performance. From the computational point of view, SVR also offered the lowest median training times among the supervised models, whereas MLP required substantially longer training times without providing gain in accuracy.
\begin{figure}[htbp]
\centering
......@@ -324,7 +324,7 @@ The supervised-learning comparison shows a clear hierarchy among the candidate s
\label{fig:surrogate_selection_summary_barplot}
\end{figure}
These results indicate that kernel-based models are particularly well suited to the present surrogate task. SVR provides the best compromise between accuracy and computational cost, while GPR is the second most competitive supervised strategy, especially in some higher-dimensional cases. Tree-based models, although robust, are less frequently selected, and MLP models are not competitive in terms of computational efficiency for the dataset sizes considered here. As mentioned in previous sections, this behaviour motivated the additional evaluation of RBF interpolation as a simpler surrogate alternative. In contrast to the supervised models, RBF models were trained in less than one second per output, making them especially attractive for repeated surrogate updates within the adaptive optimization loop.
These results indicate that kernel-based models are particularly well suited to the present surrogate task. SVR provides the best compromise between accuracy and computational cost, while GPR is the second most competitive supervised strategy, especially in some higher-dimensional cases. Tree-based models, although robust, are less frequently selected and MLP models are not competitive in terms of computational efficiency for the dataset sizes considered here. As mentioned in previous sections, this behaviour motivated the additional evaluation of RBF interpolation as a simpler surrogate alternative. In contrast to the supervised models, RBF models were trained in less than one second per output, making them especially attractive for repeated surrogate updates within the adaptive optimization loop.
The FEM validation of the optimized geometries is summarized in Table~\ref{tab:final_surrogate_comparison}. For each geometry family and surrogate strategy, the table reports the final accepted adaptive iteration, the optimized window thicknesses $\mathbf{t}_w^{\star}$, the surrogate-predicted objective value ($J_{\mathrm{surr}}$), the corresponding FEM-recomputed objective value ($J_{\mathrm{FEM}}$) and the associated validation errors ($|e_J|$ and $e_{\max}$). The optimization process required between two and three adaptive iterations depending on the geometry family and surrogate type, with most cases converging after three iterations. No systematic difference in the number of iterations was observed between RBF and supervised ML surrogates. The maximum variable error, $e_{\max}$, is defined as the largest relative error among all quantities entering the objective function, namely ${\Exy}_i$, $\TFD_i$ and $\TFD_f$, whereas the objective-function error, $|e_J|$, is reported in absolute value.
......@@ -382,7 +382,7 @@ H60\_B34 & Supervised ML & 3
The final validation results show that both surrogate strategies provide FEM-consistent optimized geometries after only a few adaptive iterations. RBF surrogates generally lead to lower objective-function discrepancies, with an average $|e_J|$ of 1.36, compared with 5.04 for the supervised ML surrogates. The average maximum variable error is also lower for RBF, with 1.79\% compared with 2.67\% for supervised ML. The RBF surrogate provides particularly accurate predictions for the two-window devices, with $e_{\max}$ below 0.3\%, while remaining below 4.3\% for the three- and five-window families. The supervised ML surrogates also satisfy all validation criteria, although larger discrepancies are observed in some cases, especially for the H60\_B34 family, where the objective-function error reaches 9.97.
The adaptive validation loop is essential to reach these levels of agreement. In several cases, the first surrogate-optimized candidate did not satisfy the prescribed error tolerances, particularly for the three- and five-window devices. After incorporating the additional FEM results and retraining the surrogates, the prediction errors decreased significantly. For instance, the maximum variable error of the RBF surrogate decreased from 13.70\% to 1.70\% in the H45\_B29 family, and from 11.44\% to 2.66\% in the H60\_B34 family. A similar behaviour was observed for the supervised ML surrogates, whose final candidates also satisfied all acceptance criteria. This confirms that the adaptive loop reduces the risk of accepting geometries that appear optimal only because of surrogate prediction errors in sparsely sampled regions of the design space.
The adaptive validation loop is essential to reach these levels of agreement. In several cases, the first surrogate-optimized candidate did not satisfy the prescribed error tolerances, particularly for the three- and five-window devices. After incorporating the additional FEM results and retraining the surrogates, the prediction errors decreased significantly. For instance, the maximum variable error of the RBF surrogate decreased from 13.70\% to 1.70\% in the H45\_B29 family and from 11.44\% to 2.66\% in the H60\_B34 family. A similar behaviour was observed for the supervised ML surrogates, whose final candidates also satisfied all acceptance criteria. This confirms that the adaptive loop reduces the risk of accepting geometries that appear optimal only because of surrogate prediction errors in sparsely sampled regions of the design space.
The optimized geometries obtained with RBF and supervised ML surrogates are very similar in most geometry families. In general, the differences in the optimized window thicknesses are below 0.1 mm and always below 0.2 mm, except for the H30\_B34 family. In this case, the differences reach 0.43 mm and 1.05 mm for the first and second windows, respectively. This family also presents the largest objective-function values, indicating that the prescribed damage targets, $\TFD_i$ and $\TFD_f$, cannot be fully maintained below the desired threshold within the admissible thickness range. Consequently, the optimizer is forced to find the best compromise between damage control and dissipative activation, which may amplify the differences between surrogate predictions.
......@@ -412,17 +412,17 @@ This behaviour is illustrated in Figure~\ref{fig:rbf_surface_evolution}, which s
This work presented an adaptive surrogate-assisted optimization framework for buckling-delayed shear-link dampers subjected to cyclic seismic loading. The proposed methodology addresses the main limitation of direct FEM-based optimization, the high computational cost associated with repeatedly evaluating nonlinear cyclic simulations. By training surrogate models on FEM-generated datasets and validating the optimized candidates through additional FEM analyses, the optimizer can efficiently explore the design domain while remaining consistent with the mechanical response captured by the calibrated numerical model.
One of the key features of the proposed optimisation framework, compared to approaches focused primarily on energy maximisation, is the formulation of an objective function that takes damage into account. The aim is to prioritise local damage control in both the dissipative windows and the surrounding frame, whilst promoting a balanced contribution from all windows to the energy dissipation process. Thus, damage to the windows is permitted and expected, as they are intended to act as dissipative regions, provided that it remains controlled and reasonably distributed; conversely, damage to the frame is penalised more severely because it can compromise the structural integrity of the damper. Therefore, rather than merely maximising the energy dissipated, the proposed formulation favours geometries that concentrate dissipative activation in the windows, prevent excessive damage localisation in a single region, and protect the frame from critical damage.
One of the key features of the proposed optimisation framework, compared to approaches focused primarily on energy maximisation, is the formulation of an objective function that takes damage into account. The aim is to prioritise local damage control in both the dissipative windows and the surrounding frame, whilst promoting a balanced contribution from all windows to the energy dissipation process. Thus, damage to the windows is permitted and expected, as they are intended to act as dissipative regions, provided that it remains controlled and reasonably distributed; conversely, damage to the frame is penalised more severely because it can compromise the structural integrity of the damper. Therefore, rather than merely maximising the energy dissipated, the proposed formulation favours geometries that concentrate dissipative activation in the windows, prevent excessive damage localisation in a single region and protect the frame from critical damage.
A comprehensive comparison of surrogate strategies was performed in terms of predictive accuracy and computational efficiency. The supervised ML results showed that SVR and GPR were the most competitive models, with SVR being the most frequently selected across the analysed outputs. RBF interpolation also proved to be a highly efficient alternative: in the final adaptive iterations, it achieved validation errors comparable to, and in most cases lower than, those of the supervised ML surrogates, while requiring substantially lower training effort and no hyperparameter search. This performance is attributed to the characteristics of the present problem: low- to moderate-dimensional design spaces, well-distributed FEM samples and nonlinear but relatively smooth relationships between window thicknesses and response indicators.
A comprehensive comparison of surrogate strategies was performed in terms of predictive accuracy and computational efficiency. The supervised ML results showed that SVR and GPR were the most competitive models, with SVR being the most frequently selected across the analysed outputs. RBF interpolation proved to be even a better alternative, due to its high efficiency: in the final adaptive iterations, it achieved validation errors comparable to, and in most cases lower than, those of the supervised ML surrogates, while requiring substantially lower training effort and no hyperparameter search. This performance is attributed to the characteristics of the present problem: low- to moderate-dimensional design spaces, well-distributed FEM samples and nonlinear but relatively smooth relationships between window thicknesses and response indicators.
The proposed adaptive validation loop proved to be necessary and effective. Several initially optimized candidates did not satisfy the prescribed error tolerances. After incorporating the new FEM results into the training dataset and retraining the surrogates, the prediction errors decreased and all final optimized geometries satisfied the acceptance criteria after only two or three iterations. Therefore, the final designs are not accepted solely on the basis of surrogate predictions, but are explicitly verified through FEM in the region of the design space where the optimum is located.
The proposed methodology also has some limitations that should be acknowledged. First, its reliability depends on the quality of the calibrated FEM model used to generate the training data and validate the optimized designs. Second, the TFDMap is used here as a post-processing damage indicator rather than as a constitutive fracture model; therefore, the optimized configurations should be interpreted in terms of relative damage control and proximity to critical states, not as direct predictions of crack initiation. Third, only the window thicknesses are considered as design variables. Although this leads to a controlled and interpretable optimization problem, it does not exploit the full geometric flexibility of BDSL dampers. Finally, the optimized geometries should ultimately be validated experimentally before being used to establish general design recommendations.
Future work should extend the design space by including additional geometric and mechanical variables, such as window height, window spacing, frame thickness, global device proportions, or filler properties. This extension would increase the dimensionality and complexity of the surrogate task, and the performance of RBF interpolation should therefore be reassessed under those conditions. While RBF models performed very well in the present study, their efficiency and accuracy may decrease as the input space becomes larger or the response surfaces develop stronger local nonlinearities. In such cases, supervised ML models or hybrid surrogate strategies may become more advantageous.
Future work should extend the design space by including additional geometric and mechanical variables, such as window height, window spacing, frame thickness or global device proportions. This extension would increase the dimensionality and complexity of the surrogate task. In those cases, the performance of RBF interpolation should therefore be reassessed. While RBF models performed very well in the present study, their efficiency and accuracy may decrease as the input space becomes larger or the response surfaces develop stronger local nonlinearities. In such cases, supervised ML models or hybrid surrogate strategies may become more advantageous.
Another relevant future direction is the incorporation of interpretability analyses, such as SHapley Additive exPlanations, to quantify the influence of each geometric variable on window damage, frame damage, and dissipative activation. Although such an analysis lies outside the main scope of the present study, it could provide valuable insight into the design drivers governing the behaviour of BDSL dampers and support more transparent engineering decision-making. Overall, the proposed methodology establishes a scalable basis for FEM-consistent, damage-aware optimization of seismic energy dissipation devices, while leaving room for broader design variables, richer surrogate strategies, and experimental validation of the optimized configurations.
Another relevant future direction is the incorporation of interpretability analyses, such as SHapley Additive exPlanations, to quantify the influence of each geometric variable on window damage, frame damage and dissipative activation. Although such analysis lies outside the main scope of the present study, it could provide valuable insight into the design drivers governing the behaviour of BDSL dampers and support more transparent engineering decision-making. Overall, the proposed methodology establishes a scalable basis for FEM-consistent, damage-aware optimization of seismic energy dissipation devices, while leaving room for broader design variables, richer surrogate strategies and experimental validation of the optimized configurations.
%\backmatter
\bmsection*{Author contributions}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment