Updates and Results Talks and Posters Advice Ideas Important Figures Write-Ups Outreach How-To Funding Opportunities GENETIS
  GENETIS, Page 10 of 13  ELOG logo
  ID Datedown Author Subject
  62   Wed Jun 3 15:20:04 2020 Julie RollaExisting Info for Current Projects

Paperclip Antenna (Ryan and Evelyn working on it):

Asymmetric Bicone (Leo and Eliot working on it):

AREA (Ben working on it):

  • Github? We need to ask Steph where their past work exists.
  • See AREA thesis attached

Symmetric Bicone(Alex M. and Alex P. working on it):

Attachment 1: AREAthesis.pdf
  61   Wed Jun 3 15:02:00 2020 Alex PattonDaily GENETIS Update 6/3/20
Name Today's Update Plans for Tomorrow
Alex M.

Talked with Alex about results from a run of small antennas where we decreased the grid spacing. The average gain plots look different, but I don't know yet if it's definitely resolved the problem because we're still getting a decent spread on the effective volumes. Helped Eliot and Leo with a git issue and talked to Evelyn and Ryan about paperclip. They were able to run and made some images, which is a good first step. I think they're going to start on making roulette an option since paperclip only uses tournament. 

Julie gave me some more details about using Karoo with ANITA data. 

I'll try installing Karoo and getting the old libraries that it needs. I should also try getting root to work on my personal space on OSC since I'll need that for the ANITA data (which I'm also going to need to find). I have a link to a dropbox with Oindree's stuff on blastfamy so I'll try looking there for hints.

Alex P.

Ran average gain on smaller grid spacing for small antennas and did see pattern closer to larger antenna rather than the small antenna with larger grid spacing, also set up AraSim to print out HGain which should be the effective heights, which should run the next iteration of the loop.  Compare HGain to find how th effective heights compare and make sure they do in fact differ between runs, also continue to see how grid spacing affects the small antenna and possibly run on a previous version which gave a zero vEff
Eliot & Leo

Forgot to do updates this week so this is entire week. We have the loop running with two chromosomes up through Part C. ie we edited xmacros and other related parts to run simulation/XF with an asym bicone. Part D shouldn't need any changes, and Part E/F will need some. 

Friday/through the weekend we will each do git on codecademy and next week we will implement changes in the fitness function and plottinf(Part E/F)

Evelyn    
Ryan    

 

  60   Tue Jun 2 13:42:21 2020 Alex PattonDaily GENETIS Update 6/2/20
Name Today's Update Plans for Tomorrow
Alex M.

Worked with Alex on trying to compare bicones to the ARA bicone. Met with Ben to give him some things to look over and told him to come to the meeting tomorrow at 1.

I might not be available all day tomorrow, but I should be good to come to the meeting at 1. Planning on doing a little bit of review of neural networks to get a feel of some of the stuff Julie is doing with Kai--I'm looking over notes and assignments from my ML class last fall. I also have a few things in the paper to fix up (namely citations, which I haven't been able to get to work).

Alex P.

Ran analysis with bigger antennas and saw that they match the actual bicone more than the smaller ones in their overall average gain patterns, reduced grid spacing and started a run to see if it will change the outputs for the small antennas since we know that XF's generation of the UAN is the difference between gains and individuals.  Observe results from the reduced grid spacing run and hopefully find some enlighting information to determine the next step. If not will try to find how to output electric field and compare that between our trials
Eliot & Leo

 

 

Evelyn We were able to find and run the old paperclip genetic algorithms, but we aren't completely sure how they work or what to do with the outputs. We also are not entirely sure which versions of the code to use, and were not able to find the code for a roulette algorithm.   To find the roulette algorithm, and to learn exactly how the code that we already have works.  
Ryan Found some executables for the paperclip algorithm and attempted to run them. Some worked, some did not, and we are currently still looking for any roulette algorithm and trying to figure out how to interpret the results.  Continue searching for the Roulette algorithm and find out how to interpret the results.

 

  59   Mon Jun 1 15:21:03 2020 Alex PattonDaily ELOG Update 6/1/2020
Name Today's Update Plans for Tomorrow
Alex M.

Spoke with Evelyn and Ryan about the paperclip antennas. They found the github repository with the files and a README so they're getting started on learning about the algorithm and testing out the scripts. Once they play with it and can get it running they'll start running it with different parameters for the selection methods (roulette vs tournament).


Also worked with Alex P. on figuring out the issue with the effective volumes coming out of AraSim. We have data from the eventReadIn function in AraSim for the small antennas and we don't see differences between the gains in these antennas and the actual bicone, but we still need to look at more of the quantities to compare that Amy told us about last week. We also came up with a new plot that might be interesting to look at. We think the plots look suspicious--I think it will be worthwhile to try rerunning with the same antennas but using a smaller grid spacing to see if the shape of the plots drastically changes.

Going to keep working with Alex P on resolving the small antenna effective volume issue. I'm also going to meet with Julie and Ben at 1 since Julie couldn't meet today.

Alex P.


Continued to test with the Ara 0 vEff problem. Ran individuals with feed through events and individuals that gave 0 vEff had zero individuals pass still where others had consistent number pass. Used diff command and looked at AraOutput files and saw no difference except saying which events passed. Difference lies in .dat files passed into them which are generated from uan. These files are 130,000+ lines so we made a program to graph that average gain over the frequencies for the individuals and ran it with our small antennas. Interestingly, the ones that failed had higher average gains consistently than some runs that passed. Also ran this program with the Actual Bicone and the results were pretty different from the bicone and these small antenna.
Next plan is to run our graphing code on a generation of previously large antennas generated to see if it makes any difference and maybe the problem is how these small antennas fitness scores get generated.
Eliot & Leo

 

 

Evelyn We were able to dig up the old paperclip code and make a new github repository with those files so we can work on it without breaking the originals.  Figure out how to run the paperclip code from our own machines 
Ryan Evelyn and I found the old paperclip repository on git, copied it over to our machines, and created a new repository to do our work on for the future. Create a dev branch and figure out how to run the algorithm.

 

  58   Fri May 29 17:36:04 2020 Alex MachtayDaily Update
Name Today's Update Plans for Monday
Alex M

I wasn't available in the morning. I met with Amy and Alex P around 1 to talk about how to use the AraSim function for throwing the same neutrinos to search for bugs in the loop. We want to compare three types of antennas we've evolved to the actual ARA bicone: a small antenna with 0 effective volume, a small antenna with a normal effective volume, and a normal antenna with a normal effective volume. 

I also spoke with Amy and Julie about the paper and worked on getting the paper in the right format, but I still can't get the citations to work.

I won't be available til late Monday morning, but I'll try to talk to Alex P about using the AraSim function and looking for bugs. Julie and I are supposed to meet at 1 with Ben to discuss him joining, and then I think we have a meeting at 1:30. 
Alex P    
Eliot    
Leo    
Evelyn    
Ryan    

 

  Draft   Thu May 28 15:11:35 2020 Alex PattonGENETIS Daily Update 5/28/2020
Name Today's Update Plans for Tomorrow
Alex M.

I wasn't available Thursday or Friday morning.

My goal on Friday is to help Alex P. more with finding the cause of the 0 effective volumes we're getting (and also the high effective volumes for small antennas).

Alex P.

Set up AraSim to use event read in, got 100 events generated from AraSim in the format of an EventReadIn file for AraSim so that way we have events that are realistic. Tried running and got a run up to the AraSim phase but had some problems with the proper call and order of argumetns. I looked through the AraOut files and thought I got it set up but got some "cannot open" errors I will deal with later. Then hopped on call with Julie, Eliot, and Leo to deal with a Git conflict Follow up on AraSim read in to get it functioning properly and then make sure to find events that pass for good antennas so that we can find errors in our 0 vEff antennas.
Eliot & Leo

 

 

Evelyn    
Ryan    

 

d

  56   Wed May 27 15:00:28 2020 Alex PattonDaily ELOG Update 5/27/2020
Name Today's Update Plans for Tomorrow
Alex M.

Met with Alex P. and Amy to think about how we can make sure the data coming from AraSim makes sense (specifically, to figure out why we're getting effective volumes of 0 on some antennas). Amy suggested we use a function in AraSim that let's us simulate identical events so that we can compare the same events between two different antennas. I asked Jorge in the #general chat to see if he could point us to where to look in AraSim for that function.

Met with Amy and Julie about people interested in joining the group and what upcoming project we have. We also talked about Karoo and Kai's thesis and how we can use machine learning to classify noise in the Anita data.

I won't be able to meet tomorrow or Friday morning, but I'll try to jump on in the afternoon on Friday and I should be able to make the GENETIS call. Also, Julie wanted to find a time where we could both meet with one of the new members if they have time this week.

Alex P.

Worked in morning with Alex trying to find AraSim's 0 vEff problem, set it up to save AraOut files from now on in Run_Outputs in order to more easily look through. Continued with Git and successfully have working copies set up across multiple people and branches so we can all work without any conflicts.  Continue to run and try to debug. Next idea is probably to set it up to pass exact events as specified so we know exactly what event is running and find error that way.
Eliot

Today we finalized the GA. It now works with 2 chromosomes, where only length varies across chromosomes. In addition we got the tournament selection working (we don’t think it was working for even 1 chromosome prior). It is ready to begin being implemented tomorrow. We also met with Julie and others to discuss git and related topics.

Tomorrow we will implement the GA and begin editing Xmacros to 1) tell XF the new antenna type, etc and 2) have it read the new 2 chromosome data properly. This will likely take multiple days.

Leo    
Evelyn Learned more about git and github from Julie  Find the old paperclip code and learn how to run and how it works! 
Ryan Continued learning about Git and Github uses from Julie. Went back in the elog history to learn more about a previous "paperclip algorithm" for future uses. Learn more about the paperclip algorithm ad possibly help with more runs. 

 

  55   Tue May 26 16:38:26 2020 Alex MachtayDaily Update
Name Today's Update Plans for Tomorrow
Alex M. Continued working on fixing bugs with Alex P. I had a run from over the weekend which got through a few generations, but we're suspicious because the effective volumes are very high despite the antenna dimensions being very small. I made a python script that makes gain plots of the individuals and posted them in the dropbox. I'm not sure they tell us very much. We also got some individuals with effective volumes of 0 in the most recent generations. In the morning I'll be working with Julie, Alex P., Eliot, and Leo on fixing up some of the git stuff on Eliot's personal space. I also think I should start a run with small antennas but also a small grid size to see if this results in more realistic gain patterns that drive the effective volume down (or up for the ones which had 0 effective volume).

Alex P.

Worked with Alex M to try to find bugs, looked through gain pattern plots but were unable to work out what the problem was. Also worked with Julie and others on getting git working so Eliot and Leo can start their work. Finish up getting Eliot and Leo set up and practice with git to make sure everything is in order and work on finding error. I want to save all the AraOut files so that we can go back and look at the events passed
Eliot    
Leo    
Evelyn    
Ryan    

 

  54   Fri May 22 11:25:47 2020 Alex MachtayDaily ELOG Update 5/22/20
Name Update for today Plans for tomorrow
Alex M Worked with Alex P on fixing a new issue that appeared in AraSim. We were getting effective volumes of 0 in generation 4, despite getting nonzero fitness scores in previous generations. We made a fix that seems to give *some* non-zero effective volumes. The sequence of zero and non-zero fitness scores appears to correspond exactly with the length of the cones, but oddly it's preferring the shorter ones so I'm skeptical.  I'm going to continue this run for another generation to see if generation 4 was a fluke, but because the change we made was substantial, we need to perform another run since previous generations may have been affected by this bug.
Alex P Worked a little bit to fix error with graphs submitting, worked with Alex M on fixing some problems and submitted long job of the ARA actual bicone so that we can get a worthy vEff from that change the graphing software to include it automatically rather than generating a new one each run. Started with just 100,000 neutrinos but hope to do a million but wanted to do 100,000 to see how long it takes before running something that large. Found XFintoARA error with Alex too that could've caused new 0 vEff error. Over the weekend check on the 100,000 neutrino run and possibly run a 1,000,000 run, but also continue to run our full runs over the weekend, possible focusing on getting our 9 generation database run up to 13 or more gens.
Leo Finished work on the 2 chromosome method. We fixed the issues with the roulette algorithm so that we get a second generation that we expect. Next week, Eliot and I hope to start looking, at and working with XF to see where we will need to make adjustments.
Eliot    
Evelyn    
Ryan    

 

  53   Thu May 21 14:31:08 2020 Alex PattonGENETIS Daily Update

Today's Summer 2020 daily update:

 

Name Update for Today Plans for Tomorrow
Alex M.

Continued the run testing the XF fixes with Alex P. We think our fixes are working, but we want to get a few more generations through. We checked the uan files and saw different data, which we didn't see on the past runs, so this indicates the fix is working. Alex and I also showed Ryan and Evelyn more of the loop and how to interpret the plots being generated. I also put in the red-green color plots, but we need to get through the next generation to see if they work. 

I'm going to try to get through more generations tonight so we can see what other fixes we still need to implement. I'll continue looking at any bugs that arise tomorrow, but we're getting very close to being able to mergre branches.

Alex P.  Picked up Ryan and Alex's run from yesterday to progress to the end of gen 1. Found an error related to the changes and moving UAN files after gen 0 with proper naming. After error was fixed went back to run and made sure the graphs all worked. XFintoARA.py had to be altered to fit the new changes. We saw that the UAN files now differed between individuals across generations whereas they hadn't before. Worked with Alex M and showed Evelyn and Ryan more about the loop and the graphs while also debugging our problems while sharing with them so they can see the process when running the loop and running into an error. Continue to run, hoping to iron out all errors so it can run on its own. Along with that making sure all the graph tools work, currently have an error in the Red/Green penalized version and also in the automatic upload of some graphs. Also hope to continue the old database run past generation 9 before implementing these changes on the database version.
Leo    
Eliot

Font Continued to work on erros within roulette algorithm. Met with Julie to discuss the issue we were still having. Soon after meeting, Leo and I got it to a near perfect state. There are only a couple genese that were unique that shouldn't have been. This is likely a small error that I will look into tomorrow.

I plan to finalize the roulette alg to accept 2 chromosomes with 3 genes a piece. These will have shared radius and theta but unique lengths.

Evelyn Learned how to run, debug, and read the graphs in the second half of the loop, so that I can start getting some real data as soon as the loop is ready to be run again.  
Ryan  

 

 

  52   Wed May 20 10:59:29 2020 Alex PattonGENETIS Daily Update

Today's Summer 2020 daily update:

 

Learn how to use the final part of the loop

Name Update for Today Plans for Tomorrow
Alex M.

Currently running the loop without the database to change the fix Alex and I made for XF to properly place data in the simulation folders. It looks to us like this was a problem that needed to be fixed. I'm running with the specific seed set in the roulette algorithm so we can replicate the results. I showed Evelyn and Ryan how to run the code today. Ryan was able to get a Pitzer Desktop, so until we can figure out how to get his X11 forwarding to work for XF, that will be a temporary fix. The only drawback is that Pitzer desktops require a GPU, so wait times can be high. I started this run by having him screenshare on zoom and then guiding him through running the loop. We got through the submission of the first batch of XF jobs (and also found some errors, so we had a chance to demonstrate fixing those).

My goal is to get several generations of this run done so that I have enough data to see if my fix worked. If so, I'm going to implement it in the database version and we'll perform a test with that. I'm meeting with Evelyn and Ryan at 1:30 to discuss the loop again, so I'll try to have a run going near where we left off today so they can see the rest. Once we know that we've fixed this XF problem we should be ready to fully implement the database by merging with the master branch.

Alex P.  Implemented some changes to get graphs working and automatically submitted all 5 graphs requested for to dropbox, then helped Alex M debug his changes and helped him show Evelyn and Ryan the loop. While Alex M ran to test the changes, helped Eliot and Leo with their pointer problem and fixed it so it doesn't give an error but they still need to make some changes to get it functioning how they want.  Continue to help Alex M with fixing the XF simulationNumber issue and make sure the graphs are all valid and uploading properly. After we get confirmation that our XF fix is working we will implement it to the database version too.
Leo Me and Eliot continued work on the 2 chromosome method. We were successful at fixing our pointing/vector issue, but we have a new error with the data_read function within the GA. Tomorrow we will meet with Julie to flush out the issue with data_read.
Eliot

Continued working on the erros with the roulette alg. I have gotten the code to a running state, however the data is not outputting correctly. I believe this is an issue within the roulette function or dataread function. 

I will further investigate roulette and dataread function and meet with Julie to do so. 

Evelyn Learned how to run the updated version of the loop and about the database, but we weren't able to get through an entire generation.

 

Learn how to use the final part of the loop. 
Ryan I found a workaround (using a Pitzer desktop until I can fix the error with my machine's Linux subsystem)  to my previous issue and was able to do two runs of the loop.   

Alex M. Plans on helping me finish learning how to run the loops.

 

  Draft   Wed May 20 10:58:38 2020   

Today's Summer 2020 daily update:

As a note, today OSC was down so productivity was more limited

Name Update for Today Plans for Tomorrow
Alex M.

Mostly just wrote more on the paper in the Genetic Algorithm section. I added some citation that we used in ICRC but there are still more places that should have citations.

I might check tonight when OSC is back up to try to push in more updates to the loop because I wanna get Evelyn and Ryan started on running the loop. Putting in those fixes is a big priority because we want to be able to correct the potential issue with XF simulation folders being overwritten and thus uan data not corresponding to the write individuals. The two big things for me in the loop are getting the simulation data to save correctly (and also putting that in the database) and testing that we can replicate results using the specific seed. I'll probably only focus on loop stuff tomorrow.

 

Alex P. 

Got up before OSC was down to check progress of overnight run, it seems to have worked but I noticed a problem with the database that it wasn't writing to it probably due to a permissions issue but I would have to run another time to see. Shouldn't have affected data but just the use of the database. Run got up to 8 generations with non-zero fitness score which is positive and seems to have fixed the error we originally encountered. Talked to Eliot about pointers and possible errors but was unable to look at the specific error because it is on OSC.

Tomorrow plan is to continue to work on database functionality and continue run to get more generations, also want to add the ability to add more plots than just the fitness score to the dropbox automatically.  Plots: upload all plots (Fitness, LRT, vEff), remove legend, upload penalized red/green plot too, take off legend, add units to Fitness
Leo    
Eliot

Read about pointers and vectors in C++. Talked to Alex P a bit, and have some ideas of things to change to get the GA running. Began reading about antennas. Mostly a down day due to OSC being down.

Will implement changes to GA and continue familiarizing myself with how XF reads these values. 

Evelyn

 

 
Ryan  

 

  50   Tue May 19 12:20:40 2020 Alex PattonGENETIS Daily Updates

Today's Summer 2020 daily update:

As a note, today OSC was down so productivity was more limited

Name Update for Today Plans for Tomorrow
Alex M.

Mostly just wrote more on the paper in the Genetic Algorithm section. I added some citation that we used in ICRC but there are still more places that should have citations.

I might check tonight when OSC is back up to try to push in more updates to the loop because I wanna get Evelyn and Ryan started on running the loop. Putting in those fixes is a big priority because we want to be able to correct the potential issue with XF simulation folders being overwritten and thus uan data not corresponding to the write individuals. The two big things for me in the loop are getting the simulation data to save correctly (and also putting that in the database) and testing that we can replicate results using the specific seed. I'll probably only focus on loop stuff tomorrow.

 

Alex P. 

Got up before OSC was down to check progress of overnight run, it seems to have worked but I noticed a problem with the database that it wasn't writing to it probably due to a permissions issue but I would have to run another time to see. Shouldn't have affected data but just the use of the database. Run got up to 8 generations with non-zero fitness score which is positive and seems to have fixed the error we originally encountered. Talked to Eliot about pointers and possible errors but was unable to look at the specific error because it is on OSC.

Tomorrow plan is to continue to work on database functionality and continue run to get more generations, also want to add the ability to add more plots than just the fitness score to the dropbox automatically.  Plots: upload all plots (Fitness, LRT, vEff), remove legend, upload penalized red/green plot too, take off legend, add units to Fitness
Leo    
Eliot

Read about pointers and vectors in C++. Talked to Alex P a bit, and have some ideas of things to change to get the GA running. Began reading about antennas. Mostly a down day due to OSC being down.

Will implement changes to GA and continue familiarizing myself with how XF reads these values. 

Evelyn

 

 
Ryan    
  49   Mon May 18 15:13:13 2020 Julie RollaGENETIS Daily Update

Today's Summer 2020 daily update:

 

Name Update for Today Plans for Tomorrow
Alex M.

(See Alex P. for details on working on fixing loop issues)
Went over running the loop with Ryan. Worked with Ryan on trying to get the X11 forwarding for XF to work, but we couldn't get the license. Steven suggested that we try running from a Pitzer desktop, which I think is a good idea if the problem is with the X11 forwarding; if it's a license issue, then we need to figure out where the license is located. I thought this would have been written somewhere in our code, but I couldn't find it, so I may need to email OSC.

Worked more on the symmetric bicone part of the paper. I think I could afford to add detail to the results portion. I included the plots from the APS presentation, but we still need to finish a rerun with the same number of generations and individuals to see if the data makes sense (particularly, I want to see if there was a mistake made when continuing the run after it had finished the 10th generation because I'm skeptical about the fact that we got such large angles in generation 12). 

I'll meet with Evelyn and Ryan tomorrow to discuss running the loop in more detail. I'll help Ryan use the Pitzer desktop, which will hopefully work. If all goes well, we can get them started on running the loop to check against the data from the run I mentioned in the paper. 

I'm going to try writing in the section for Genetic Algorithms in the paper, since Kai said he wanted me to take the first attempt at it. I think for now I'd like to get comments on what I've written on the symmetric bicone portion before I clean it up, especially on whether or not I've given enough detail (and clearly enough).

Alex P.  Continued to test the database functionality. In the process of testing and debugging we also tested random seed functionality of the genetic algorithm as we used a fixed seed and successfully got repeat results across multiple runs, which allowed better testing as we could be certain to encounter the same scenario when testing and figuring out how to overcome an error.Altered some of the xmacros and xf calls to work with database and created the new macro skeleton for output.xmacro to use just with the database, in the process of looking through the xmacros we found some segments of the code to investigate further. Currently, we just use values 1 to NPOP of the XF simulation and rewrite the contents of 1 to NPOP each generation, but more simulation values continue to be generated even if unpopulated. Also looked more into this and started implementing a way to take out the excess directories while also planning out a way to have each generation use new values rather than overwriting so that we can have a full record of all the simulations across generations rather than just the most recent generations.  Going to continue to test database, have a run starting gen 1 now and going to continue that tonight, hopefully will find useful results and if not then things to debug. Eliot and Leo asked for help tomorrow with C++ code as they have had some problems with pointers and I agreed to help them tomorrow.
Leo I, along with Eliot, worked on implementing the new parameter. We have been working on 2 methods, one being adding a 4th gene and the second being adding another chromosome. We are focusing our attention on the chromosome method because we feel it will lead its way nicely into our future work later this summer with adding more complicated parameters. We are running into some issues with pointers and vectors within the GA that we worked on fixing. Tomorrow we hope to fix the issues with the pointers and vectors, and hope to test it with multiple generations.
Eliot

Currently working on developing GA further to properly accept 2 chromosomes. The first chromosome has some radius, length, theta and the second chromosome has the same radius and theta, but its own unique length. I currently have the code properly populating an initial pool. However, it can not quite evolve. The GA is free of syntax errors, but I am getting some type of pointer error. I am working to resolve this. I believe it is the only obstacle left on the GA side of things, but it may not be.

I will continue working on fixing the errors in the GA, and hopefully finish that tomorrow. If so, I will begin learning about the XF implementation.

Evelyn

Had class, so I couldn't meet with the group

Get caught up with the stuff from today
Ryan    

Julie: Since I  won't be doing GENETIS work every day necessarily, I'll add myself down here with a blurb when I am working with the others. I will also be continuing my daily updates on Dropbox for non-GENETIS specifics. 

  48   Mon May 11 17:56:36 2020 Julie RollaGENETIS Meeting Update

We met today for a long time and pushed to catch up. The following is what we have done:

(1) Worked for a bit on our current tasks. They will work on these current tasks before they start on their summer projects. 

  • Antenna database (Julie, Alex P., Alex M.)
  • Worked on a paper outline (Julie, Alex M.)
  • Worked on wall time variable (Eliot, Evelyn, Leo)

       Note I also have to: (1) Fix merge conflict and make sure students are good about only editing the dev branch moving forward. (2) Get branches and GitHub set up for both the asymmetric bicone and the non-linear bicone. 

(2) Went over the details of how the loop works as a group.

  • Went over how each piece works.
  • Went over how to run it. 
  • Went over best ways to test new edits. 

(3) Went over summer tasks.

  • Eliot: Add parameters to bicone (ie make bicone asymmetric)
  • Julie & Alex M.: Paper, and helping others
  • Alex P.: Frequency database for AraSim (to speed up AraSim)
  • Evelyn & Leo: Make non-linear bicone (wiggly sides) 

 

 

 

  47   Thu May 7 14:35:00 2020 Julie RollaGENETIS Meeting Update

The students have been meeting to work out the summer schedule. We are dividing into to groups:

(1) Paper writing: Julie, Alex M., Alex. P

  • We need Amy to start an overleaf draft (she has the premium version that allows you to share with more than 1 person)
  • In tomorrow's collaboration meeting (Now Fridays at 3pm) we are going to request discussion on an outline

(2) Adding wall time variable structure: Eliot, Evelyn, Leo (Alex P. will help oversee)

  • In order to prepare group (2) Alex M. has been going over the edits he started and is discussing his code. We also are taking some time to catch them up on the current code -- ie how it runs, what all of the pieces involved do -- so that they can know how to test the code after edits are made, and where each essential piece may lie. We will be going over this for the next few days in good detail. 
  • Group (2) will then be coming up with a scheduled time each day that they will be coworking on zoom. This will work the same as if they were sitting in an office together. They'll announce this time to everyone once it is set.

Alex P, Alex M, and I are going to push to rapidly finish this antenna database so that the others can create a new branch to work on the wall time variable with. This will leave us very busy for the next few days. 

  46   Sun Apr 19 21:16:21 2020 Alex MachtayGENETIS APS Slides

Here's the presentation we gave for the April APS meeting today. Atttached is the power point of the presentation and a pdf version. 

Attachment 1: Genetis_APS_Presentation.pptx
Attachment 2: Genetis_APS_Presentation.pdf
  45   Mon Apr 13 14:43:54 2020 Julie RollaGENETIS Meeting Update

Note that Pitzer usage over the weekend was much better! Maybe weekends are our best time to run? Today (Monday) has been a little bit worse. 

Over the past few days the following items have been accomplished:

  • We got the jobs to stop canceling on OSC.
    • Issue was the destination command for the error and output files for the GPU jobs inside the GPU job script; we fixed it by taking it out.
      • This issue was causing jobs to fail. They are no longer failing, and the loop is working again.
  • Set up a way to be able to automatically upload both the L, R, Theta plots and the Fitness Score plot to dropbox as we work.
    • Set up an email that automatically uploads to dropbox under the folder GP_Antennas/Updates/DailyFitnessScoreImages when you send an attachment with that email.
    • We added this command into the loop:
      mail -s "Subject" dropbox.2dwp1o@zapiermail.com < FScorePlot2D.png
      • It automatically has it upload an image when the loop finishes a generation. It's currently so that the file will be named whatever the subject of the email is so we can control that by whatever is after the -s command. It's currently set to not overwrite.
    • Still need to add the Veff plot to dropbox. 
  • Made gitpush.sh and gitpushforce.sh
    • Each time one of us pushes changes to GitHub, it makes a permssion lock on the directories. From now on, after looking at what files are changed (using git status. Remember to make sure to add any data files missed to the .gitignore)users should do:
      • git add .
      • git commit -m "add message" or git commit --amend --no-edit
      • Then run: ./gitpush.sh if you made a full new commit, or use ./gitpushforce.sh if you amended this edit to the previous commit. They both exist in: /fs/project/PAS0654/BiconeEvolutionOSC
        • These files run the git push or git push -f commands and then immediately run a chmod to change permissions after. 
  • Alex is starting the APS slides!
    • He should be sharing them shortly. I told him to look at Suren's from last year for guidance. 
  • We have started working on adding the feature that pulls non-unique (ie repeat parameter) individuals from an antenna database. 
    • It's currently being developed on the Antenna_Database branch in git. 
    • Alex has started writing c++ code that reads in the csv file and appends unique items to it. 
    • Comments from Amy we need to remember: 
      • Doing "==" on doubles is bad!
      • We want this "likeliness" to be between 1 and 10% (start with 10%). 
        • Remember: is this difference between L stored and new L a fraction of the wavelength?
  44   Tue Apr 7 15:48:54 2020 Julie RollaGENETIS Meeting Update

Meeting Attendance: Julie, Alex M., Alex P, Eliot, Leo, Evelyn, Mitchell, Ryan. 

Today is the deadline for confirming our attendance at the virtual APS meeting. Alex M. will be confirming and we will be orienting ourselves so that we can have some results. Here is our to-do list for today:
 

  1. Create a method for automatically adding our plots to dropbox each day. 
    • The way we are going to do it is by adding the command: mail -s "Test Subject" someemailaddress@gmail.com < testScript
      • We will create a random email to use for this that will only be receiving emails from this command. 
      • We are trying to find and set up a client that as soon as this random email address receives an email, it uploads it to the Dropbox here
    • This is still being worked on. 
  2. Start developing a database of old antenna runs and parameters, and pull data from that for any repeat dimensions. 
    • This should speed up some of our run time. 
    • We want to create a database of old antenna dimensions and their associated UAN files. That way, if we repeat an antenna geometry very closely, instead of re-submitting a job to produce the gain patterns, we can pull from one that has already been created.
    • This should limit:
      • The number of jobs we have to submit.
      • The number of GPU hours/minutes we have to request and wait for.
    • These should probably still be run through AraSim, however, since the energy could change from run to run.
  3. Keep running and collecting data. 
    • Do we want to run and have data for 20ish generations with 10 individuals for APS?
      • We have already made some progress on this so we could likely make more generations for APS if we keep going. 
    • Do we want to instead switch to doing something like 20 individuals even if we get fewer generations completed?

 

Notes apropos developing our database for antenna info. This is how we are going to do it, and what we need to develop in our code:

  1. Add all info to csv files.
    • The csv files will have columns: length, radius, theta, uan file directory and name (ie /file/location/database#/).
    •  # will be the row that this matches the L, R, Theta within the csv file
    • Inside /file/location/database#/ will be all the uan files for each frequency for these dimensions. 
      • We need an "if/else" statement in the bash script that tells the code to look in this csv file (read it in). 
        • IF the produced L, R, Theta match any of those that currently exist, save the 4th column (file location) to a variable (say we call it ExistingUan=/file/location/database#/). 
          • Then cd ExistingUan
          • Make a loop that:
            • does CP /file/location/database#/gen_individual_freq.uan BiconeEvolutionOSC/BiconeEvolution/current_antenna_evolution/XF_Loop/Evolutionary_Loop/Run_Outputs/$RunName/ (ie to the file name and location that XFintoAra.py reads. This will make sure that it has the data as if we actually completed the XF simulations for the antennas that had repeat sizes from our past runs (I mean past by runs we may have EVER done -- not past generations). 
              • We need to copy ALL of the frequency uan files for that individual into Run_Outputs/$RunName 
        • Else fill another line in that csv file with the L, R, Theta of this individual so we can keep it for later. 
          • mkdir the new directory /file/location/database#/
          • Add the name of this new directory (ie database#) to the 4th column on the csv file next to the correlating L, R, Theta.  
          • Then submit the XF job for this individual. 
          • Once it finished the XFSolver job and produces the .uan files (for each frequency), do a loop that:
            • cp individual_freq.uan /file/location/database#/gen_individual_freq.uan
              • Note that I wrote to cp individual_freq.uan instead of gen_individual_freq.uan. Note that XF produces it as individual_freq.uan, and it is changed to gen_individual_freq.uan when we move it into the Run_Outputs/$RunName directory.
              • So you can do it either (1) after it moves it to Run_Outputs/$RunName with the name gen_individual_freq.uan, or (2) before it moves the file with the name individual_freq.uan. 
  2. We need to make a new directory that holds all of these database# directories and their uan files, and the csv file the "if/else" statement checks. 
    • We need to add this new directory to the .gitignore!
  43   Thu Apr 2 16:14:29 2020 Julie RollaGENETIS Meeting update

This is a general update. Most of our recent meetings have been to teach the students to use Git properly, or to answer questions on the training modules. 

 

Update

1. Git Update: I recently cleaned up our Git and GitHub so that we have a better way to develop this code. Once I cleaned it up the goal is to educate all of the students to properly use Git so we develop code correctly moving forward. The repository had become quite a mess. The students were constantly developing on a branch, and never merging it back to the main branch. This means that we never had a working copy that we could run on while edits were being made in parallel. I attempted to merge the edits to the main branch with the hopes of getting this functioning so we could evolve while working on the bottleneck function; however, it looks like someone with poor knowledge of Git edited the main branch and we had an abundance of merge conflicts. 

What I've done now is reset the repository so that all merge conflicts are resolved and a working copy exists on the main branch. I've also added a .gitignore that will ignore all data files. Git doesn't like these because (1) it hates when tracked files disappear -- ie when we delete trial run data, if someone accidentally pushed it then Git complains-- and (2) it means it we constantly are adding more untracked files (every single new file we make is untracked and then gets tracked, like the flag files). So, I've had it only track useful code. 

The goal once I train the other on Git is to move the place of the data files and make it it's own git repository (once we start doing fewer trial runs so we won't lose important data). If the others learn to check the status of files before pushing them, they can make sure they don't push useless trial data sets, and either (1) delete them, or (2) add them to the .gitignore.

As for now, we successfully have the working, run-able copy on the main branch now. When any more revisions are made (e.g. the talk of adding the wall time variable), we can branch and edit on that so we still run. 

 

2. Evolution/bottleneck update: We got the loop working to the point that it can run all the way through a generation without fatal problems. The only potential problem we can see right now is if we need to go backward in the savestate. We're working on making that not a problem--the solution is to better organize the output files and data, which we were interested in anyway. Right now we are running with 10 individuals in each generation. Alex got through 2 generations without a problem, so he'll keep running but now we're trying to make some of these more minor fixes so we may have to stop the run. Alex does have plots (they don't look great, but at least they're being made correctly without error). At the moment we are swimming in GPUs. We haven't had much trouble at all this week with getting them, so that's why we were able to get 2 generations done between around midnight last night and 2ish today; not sure how long that will persist, but Pitzer has had relatively little usage whenever we've looked lately.

 

Comments on the plots: We're discussing this now, we don't think the individuals should really be color coded/separate on the legend because it is not like they follow one individual across multiple generations; however, we do need to label the dotted line. Another thing we were considering is decreasing the penalty factor for when the cones are too big for the hole. If we get something with a much much better Veff but it's only slightly larger than the hole, it might be worth it to help that one stick around a little bit more.

 

3. Wall time Variable Update: Also, last week Carl and Alex talked about the variable wall time again. We decided the best idea is to start by implementing a variable wall time based on the cylindrical volume that he mentioned before, but in the future, we might also be able to check the time of each GPU job and then plot it against the dimensions of the cone/cylindrical volume to get a better estimate of the wall time for each job

 

 

 

 

Attachment 1: Fitness_Score.png
Fitness_Score.png
ELOG V3.1.5-fc6679b