Updates and Results
Talks and Posters
Advice
Ideas
Important Figures
Write-Ups
Outreach
How-To
Funding Opportunities
GENETIS
GENETIS
Draft saved at 00:00:00
Fields marked with
*
are required
Entry time:
Tue Feb 3 12:09:55 2026
Author
*
:
Subject
*
:
<p><span style="font-size:16px">In this post, I'm going to give step by step instructions on everything you need to do to run the loop. See Julie's thesis for the most recent iteration of this manual. Also refer to entry 123 for a list of some errors we have encountered historically in the loop and how to resolve them, though some fixes may be outdated.</span></p> <p><span style="font-size:24px"><u><strong>Running the loop</strong></u></span></p> <p><span style="font-size:20px"><strong>Getting started</strong></span></p> <p><span style="font-size:16px">Assuming you have followed the instructions from the onboarding tutorials, you should be ready to access OSC through the interactive website. <strong>Instead of using ssh</strong> to access OSC, the loop requires that you <strong>go to this website</strong>: https://ondemand.osc.edu/ . Login with your usual OSC credentials. Once there, you will need to request a <strong>Lightweight Desktop </strong>by clicking on "Interactive Apps" at the top of the page. See the screenshots attached for how to do this. Old documentation may refer to the Lightweight Desktop as a VDI. </span></p> <p><span style="font-size:16px">You can request up to 24 hours for a Lightweight Desktop, and it should begin almost immediately. After you request it, the website will take you directly to the waiting page. You can navigate to this page yourself by clicking "My Interactive Sessions" at the top of the ondemand page. When the job begins, you will see a blue buttong that says "Launch Lightweight Desktop". Click it and you should have a new tab open that brings you to a remote desktop environment on OSC that you interact with through your browser. </span></p> <p><span style="font-size:20px"><strong>New runs</strong></span></p> <p><span style="font-size:16px">If you're starting a new run for the first time (that is, beginning from generation 0), you will need to edit the script that runs the loop. Here is the path: /fs/ess/PAS1960/HornEvolutionOSC/GENETIS_PUEO/BiconeEvolution/current_antenna_evo_build/XF_Loop/Evolutionary_Loop/Loop_Scripts/Asym_XF_Loop.sh . At the top of the script is a list of variables that can be changed. See the first screenshot attached here.<br /> For a new run, you <strong>must</strong> change the variable <RunName>, which is the first variable in the list. It should be in quotes and the convention is to start the name off with the date of the run, using YYYY/MM/DD format--this will always keep everything in chronological order when listing directories with <ls>. Other variables are explained in the comments next to them in Asym_XF_Loop.sh and you should change them depending on the type of run you are conducting. </span></p> <p><span style="font-size:16px">To begin the loop, type in the command ./Loop_Scripts/Asym_XF_Loop.sh from the Evolutionary_Loop directory.</span></p> <p><span style="font-size:16px">When the loop begins, you will be asked to press any key. After you hit a key, the loop will run Part A, which executes the GA using the <start> mode. It will then automatically move on to Part B, which creates the antennas in XFdtd. XF will ask you if you want to specify a location for the XF file to be saved. <strong>Click <No>.</strong> The loop will automatically save the XF directory into the run directory when it finishes with the first part of part B. In principle (that is, barring errors that stall the loop or interruptions due to the VDI job ending), <strong>you will never need to manually enter anything to the loop for it to run beyond this point.</strong> </span></p> <p><span style="font-size:16px">However, if it is your first time using XF, you will need to set the max GHz setting upon startup to 2 instead of the default 10. </span></p> <p><span style="font-size:24px"><strong>Continuing Runs</strong></span></p> <p><span style="font-size:16px">After starting a new run, the loop will run automatically. When your Lightweight Desktop job ends, you'll need to get another one repeat the steps above. You will not be prompted for any input. </span></p> <p><span style="font-size:24px"><strong>Stepping Back</strong></span></p> <p><span style="font-size:16px">At times, you may want to continue the loop from an earlier point or interrupt the loop and step back. Usually you'll only want to do this within a generation, but it's possible that you will encounter an error or bug at the end of a generation and wish to return back to that point to remedy it before continuing forward in the next generation. This is a very tricky and delicate process that requires a lot of attention to detail. In the future, we'd like to make an option for the loop to do this automatically when given input at the beginning, but implementing that will take a long time and will be very sophisticated.</span></p> <p><span style="font-size:16px">The state of the loop is recorded in the savestate file located here: /fs/ess/PAS1960/HornEvolutionOSC/GENETIS_PUEO/BiconeEvolution/current_antenna_evo_build/XF_Loop/Evolutionary_Loop/saveStates . The file will be named <Run_Name>.savestate.txt . In it, you will see three numbers. The <strong>first one</strong> represents the current <strong>generation</strong> of the loop. The <strong>second one</strong> represents the state of the loop, that is, <strong>which part in the generation</strong> it is currently on. The <strong>third one</strong> represents the <strong>individual</strong> it is processing. In practice, the third number is rarely relevant, and is almost always 1, though it can be used for Part B, where the loop is processing individuals sequentially, so if it was interrupted on individual eight (for example) you can change the number to be 8 so that it will pick up where it left off without needing to redo the first seven individuals.</span></p> <p><span style="font-size:16px">If you want to step back to an earlier state in a generation, you'll need to <strong>interrupt the loop and revert the state</strong> by changing the second number in the savestate file. <strong>This is NOT all you will have to do, however.</strong> Because of the way files are edited and moved around during states, you will need to manually revert files to be in the format or location needed by the earlier state. </span></p> <p><span style="font-size:16px">For example, you may need to revert from state 2 (when XF is creating the antenna geometries) to state 1 (when the GA generates new individuals). In this case, you'll need to edit the savestate file to change the second number from a 2 to a 1. Then, you'll need to change the generationDNA.csv file in Generation_Data to use the values from the <em>previous generation</em>, since the GA will have overwritten that file and uses it to determine what individuals are to be selected from. To do this, you'll need to locate the <gen>_generationDNA.csv file from the previous generation in the <RunName> directory in Run_Outputs. This is should be found here: /fs/ess/PAS1960/HornEvolutionOSC/GENETIS_PUEO/BiconeEvolution/current_antenna_evo_build/XF_Loop/Evolutionary_Loop/Run_Outputs/<RunName>/Generation_Data . </span></p> <p><span style="font-size:16px">The above is a relatively simple example of how to step back in the loop. Stepping back from a late state to an early state will be more complicated, though if you're willing to sacrifice run time you can pretty easily follow the above to just restart a generation. Stepping back to a previous <em>generation</em> will be explained in a future update to this post.</span></p>
Encoding
:
HTML
ELCode
plain
Suppress Email notification
Attachment 1:
Drop attachments here...
Draft saved at 00:00:00
ELOG V3.1.5-fc6679b