experimental apparatus A self-optimizing experimental apparatus Ilka Geisel1, Stefan Jöllenbeck1, Jan Mahnke1, Kai Cordes2, Wolfgang Ertmer1, Carsten Klempt1 Institut für Quantenoptik, Leibniz Universität Hannover Institut für Informationsverarbeitung, Leibniz Universität Hannover 10.04.2019
Optimizing the Experiment Why don’t we just do it by hand? [ms] [ms] P 1 P 2 P 3 Arbitrary parameter 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Thorough optimization by hand Number of Dimensions Measurements Time (for 1Hz rep. rate) 1 5 5 s 2 25 25 s 3 125 2 min 4 625 10 min 3 125 52 min 6 15 625 4 h 7 78 125 22 h 8 390 625 4,5 days 9 1 953 125 3 weeks 10 9 765 625 4 month 11 48 828 125 1,5 years 12 244 140 625 8 years 9 1 953 125 3 weeks → Scales exponentially with number of dimensions 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
What search methods are possible? 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Differential Evolution Requirements Optimize multiple correlated experimental parameters Find the global maximum Robust regarding fluctuations Quick search also in high-dimensional parameter space Differential Evolution Storn and Price, 1995 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Differential Evolution Time scales less than quadratically with number of dimensions Scale and units of the parameters are irrelevant Uses one target function Number of atoms Temperature Phase Space Density Position Any other accessible result 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Evolutionary Algorithms Generate first population Measure population Mutate population and generate trial vectors Measure trial vectors Compare one on one to choose new population 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Generating the first generation Dim=2 Current Detuning P0 x0 y0 P1 y1 x1 P2 y2 x2 P3 y3 x3 P4 y4 x4 # Vectors = Dim*5 P5 x5 y5 P6 y6 x6 P7 y7 x7 P8 y8 x8 P9 y9 x9 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Measure first population Cur rent Detuning # Atoms P0 x0 y0 f(P0) P1 y1 x1 f(P1) P2 y2 x2 f(P2) P3 y3 x3 f(P3) P4 y4 x4 f(P4) P5 x5 y5 f(P5) P6 y6 x6 f(P6) P7 y7 x7 f(P7) P8 y8 x8 f(P8) P9 y9 x9 f(P9) 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Ilka Geisel - A self optimizing experimental apparatus Generate Mutants M0 x'0 y'0 M1 y'1 x'1 M2 y'2 x'2 M3 y'3 x'3 M4 y'4 x'4 M5 x'5 y'5 M6 y'6 x'6 M7 y'7 x'7 M8 y'8 x'8 M9 y'9 x'9 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Create a trial population yes Crossover? no T0 x'0 y0 f(T0) T1 y'1 x1 f(T1) T2 y'2 x'2 f(T2) T3 y3 x'3 f(T3) T4 y'4 x'4 f(T4) T5 x5 y'5 f(T5) T6 y6 x'6 f(T6) T7 y'7 x7 f(T7) T8 y'8 x8 f(T8) T9 y9 x'9 f(T9) 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Ilka Geisel - A self optimizing experimental apparatus Compare one on one Population Generation 1 Trial vectors Generation 1 Population Generation 2 P0 f(P0) T0 f(T0) T0 f(T0) P1 f(P1) T1 f(T1) T1 f(T1) P2 f(P2) T2 f(T2) T2 f(T2) P3 f(P3) T3 f(T3) P3 f(P3) P4 f(P4) T4 f(T4) P4 f(P4) P5 f(P5) T5 f(T5) T5 f(T5) P6 f(P6) T6 f(T6) P6 f(P6) P7 f(P7) T7 f(T7) P7 f(P7) P8 f(P8) T8 f(T8) T8 f(T8) P9 f(P9) T9 f(T9) P9 f(P9) 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Visualization in 9 Dimensions 2 Currents [-140,140] A 1 Detuning [-90,0] MHz 3 Currents [0,140] A 1 Current [-140,0] A 2 Currents [-140,140] A Blue: Trial Vectors, Orange: Population Vectors 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Visualization in 9 Dimensions 2 Currents [-140,140] A 1 Detuning [-90,0] MHz 3 Currents [0,140] A 1 Current [-140,0] A 2 Currents [-140,140] A Blue: Trial Vectors, Orange: Population Vectors 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Optimization in the experiment 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Optimizing a MOT in 9 Dimensions Average of Population Average of Trials 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Ilka Geisel - A self optimizing experimental apparatus Human vs. DE 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Ilka Geisel - A self optimizing experimental apparatus Add-ons Hard boundaries Force mutants inside boundaries Different approaches show different behavior Elite Use only upper X% as parent vectors Consider speed against accuracy Finite Lifetime If a trial vector survived X times, redo the measurement Slows but helps consider experimental noise 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Ilka Geisel - A self optimizing experimental apparatus Summary Little computing power required Easy implementation (i.e. into LabView) Finds the global optimum We optimized up to 13 parameters Better than human Thank you for your attention! 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Ilka Geisel - A self optimizing experimental apparatus Pseudo Code // initialize… do // generate a trial population { for (i=0; i<Np; i++) // r0!=r1!=r2!=i { do r0=floor(rand(0,1)*Np); while (r0==i); do r1=floor(rand(0,1)*Np); while (r1==i or r1==r0); do r2=floor(rand(0,1)*Np); while (r2==i or r2==r1 or r2==r1); jrand=floor(D*rand(0,1)); for (j=0; j<D; j++) // generate one trial vector { if (rand(0,1) <=Cr or j==jrand) // use mutant { tj,i = pj,ro+F*(pj,r1-p,r2); // check for out of bounds? } else { tj,i=pj,i; // use old population // select the population of the next generation for (i=0; i<Np; i++) { if ( f(ti) >= f(pi)) pi=ti; } while (termination criterion not met); 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
Optimizing a Trap in 5 Dimensions 10.04.2019 Ilka Geisel - A self optimizing experimental apparatus
What we optimized so far Dimensions Samples per Generation Generations Before After MOT 9 9*10 = 90 417 1,69*1010 2,05*1010 MOT II 12 12*10 = 120 330 6,27*108 7,3*108 Molasses 2 2*10 = 20 15 8,15*108 Optical pumping 7 7*5 = 35 50 1,24*109 Magnetic trap 1,75*109 10.04.2019 Ilka Geisel
How does that compare? Number of Dimensions Measurements Number of Measurements with DE 2 25 300 7 78 125 1 750 9 1 953 125 37 530 12 244 140 625 39 600 10.04.2019 Ilka Geisel