Best density found by the hIGO is 0.892690301112988. The densest packing of heptagons in P2 (proved by Greg Kuperberg and Włodzimierz Kuperberg) is ~0.892690686126508.
Left: Found configuration; Right: Zoom of the configuration
I’ve searched the P1 group to find the densest packing of regular octagons since since the densest packing of convex set with central symmetry in the plane is a lattice packing ie a member of P1 plane group. The density I found is 0.906163653094707. The analytical result for the optimal density is ~ 0.906163678643946. ( Packing Regular Octagons ). The minimum distance between the octagons in the packing is 1.950763550695456e-09.
Left: Found configuration; Right: Zoom of the configuration
Finally some good results. I’ve used the hypertorus IGO to search the P2 plane group for the optimal packing of the of regular pentagons. The density found by the first run of the algorithm was 0.921310671743827. The optimal packing of regular pentagons proved by Hales and Kusner is ~0.921310674166737 ( http://milotorda.net/index.php/plane-group-packings-with-regular-pentagons/ ). The minimum distance between the pentagons in the packing is 3.937183912228193e-11. The algorithm can refine this just needs to run longer.
Left: Found configuration; Right: Zoom of the configuration
Setting: adaptive learning rates with 2*delta and delta set to eta_{*}/3. 100 samples per run. Starting distribution: uniform. Shrinkage covariance computed with this: http://ledoit.net/shrinkDiag.m
Starting learning rates: eta_d=10; eta_D=10; iterations=1000; runs=1;
Starting learning rates: eta_d=10; eta_D=10; iterations=100; runs=10;
Starting learning rates: eta_d=10; eta_D=1; iterations=100; runs=10;
Starting learning rates: eta_d=10; eta_D=10; iterations=100; runs=10;
Starting learning rates: eta_d=1; eta_D=1; iterations=100; runs=10;
Here are some results from the implementation of adaptive sampling for the tuning of learning rates. 25 simulation threads with different learning rates (current learning rate + a multiple of delta) are run and every n iterations of the IGO algorithm sets the current learning rate to the learning rate of the thread where the minimum mean of the objective was attained during these n iterations and all 25 threads. An the process gets repeated.
Initial learning rates: [1,1]; Number of samples: 100; delta: 0.25; Iterations: 25
Best objective 3.906106261908349e-05 @ [3.141947289734544, 3.141325967480646] attained @ 799th iteration.
Initial learning rates: [1,1]; Number of samples: 100; delta: 0.125; Iterations: 25
Best objective 2.811559213462544e-04 @ [3.142757645858563, 3.141837545625751] attained @ 2392th iteration.
Initial learning rates: [1,1]; Number of samples: 1000; delta: 0.125; Iterations: 10
Best objective 9.220073825133568e-05 @ [3.141111456149766, 3.141109756733831] attained @ 327th iteration.
I have separated the learning rate into two. First the learning rate for the parameters related to concentration and mean. The second learning rate for parameters for the precision matrix.
All simulation where run for 1000 iterations.
Objective function: 2D Rastrigin centered at [pi,pi].
Eta_d = 1; Eta_D=0.25; 100 samples
Best fit: 5.092878218704300e-05 @ [3.142098748056062, 3.142098748056062]
Eta_d = 1; Eta_D=0.25; 1000 samples
Best fit: 0.011457103531619 @ [3.134161151183576, 3.140001246486607]
Eta_d = 1; Eta_D=0.5; 25 samples
Best fit: 0.013942156424022 @ [3.149423592902749, 3.138598537797074]
Eta_d = 1; Eta_D=0.5; 50 samples
Best fit: 2.739779972955603e-04 @ [3.140419809603958, 3.141666381043835]
Eta_d = 1; Eta_D=0.5; 75 samples
Best fit: 3.583357357932471e-04 @[3.142532825223459, 3.140632298254060]
Eta_d = 1; Eta_D=0.5; 100 samples
Best fit: 6.607625318082455e-04 @ [3.140007830023662, 3.140687697105372]
Eta_d = 1; Eta_D=0.5; 325 samples
Best fit: 0.005180560001300 @ [3.136709161988744, 3.140087288810498]
Eta_d = 1; Eta_D=0.5; 550 samples
Best fit: 0.013942156424022 @ [3.140419809603958, 3.138598537797074]
Eta_d = 1; Eta_D=0.5; 1000 samples
Best fit:9.464108499734891e-04 @ [3.143699809057704, 3.142167429144717]
Eta_d = 1; Eta_D=0.75; 100 samples
Best fit: 0.002806343200142 @ [3.138836948966443, 3.139032993376946]
Eta_d = 1; Eta_D=0.75; 1000 samples
Best fit: 4.175267021224727e-04 @ [3.140161030118904, 3.141358087630181]