
Figure 1
Structure of GAIL Algorithms.

Figure 2
GAIL architectural design. The largest yellow circle contains a compulsory input function f. The other inputs in small yellow circles are typically optional and, when absent, set to default values in the GAIL algorithms. Each GAIL algorithm is iterative in nature. In the ith iteration, a solution estimate soli is computed along with its error estimate ei obtained by ni sampling points in the input domain D. When ei is not greater than the tolerance, ϵ, GAIL iterations stop and return the final numerical solution sol (in the largest blue circle). Other outputs (in small blue circles) are bundled in a MATLAB structure array.

Figure 3
Function f defined in (1), sampling points and best estimates retured by solvers MATLAB’s fminbnd, Chebfun’s min, and GAIL’s funmin_g. This figure is reproducible by the MATLAB script, demo_funmin_g2_samplepoints.m available in GAIL’s ‘develop’ branch at https://github.com/GailGithub/GAIL_Dev/tree/develop/GAIL_Matlab/Papers/GAIL_JORS.
Table 1
Performance of funmin_g, fminbnd, and min with automatic stopping criteria for optimizing the function defined in Example 1. This table is reproducible by the MATLAB script, demo_funmin_g2_samplepoints.m.
| METHOD | FUNMIN_G | FMINBND | MIN |
|---|---|---|---|
| |x̂ – x*| | 1.0 × 10–10 | 0.5 | 1.0 × 10–8 |
| |f(x̂) – f(x*)| | 0 | 4.0 | 1.3 × 10–7 |
| n | 113 | 10 | 37 |
| Time (seconds) | 0.042 | 0.048 | 0.022 |

Table 2
Essential code in the MATLAB script, gail_jors_eg1.m, for invoking funmin_g in Example 1.
Table 3
Average performance of cubatures with automatic stopping criteria for estimating the integrals in (2) for 1000 independent runs. These results can be conditionally reproduced with the MATLAB command, KeisterCubatureExampleJORS(1000), in GAIL.
| d = 3, ∈ = 0.005 | |||||
|---|---|---|---|---|---|
| METHOD | MC | LATTICE | SOBOL | BAYES LATTICE | BAYES NET |
| Absolute Error | 1.1 × 10–3 | 5.2 × 10–4 | 5.2 × 10–4 | 3.4 × 10–7 | 5.8 × 10–4 |
| Tolerence Met | 100% | 100% | 100% | 100% | 100% |
| n | 2500000 | 4100 | 3900 | 4100 | 1800 |
| Time (seconds) | 0.1700 | 0.0097 | 0.0065 | 0.0100 | 0.1200 |
| d = 8, ∈ = 0.050 | |||||
| METHOD | MC | LATTICE | SOBOL | BAYES LATTICE | BAYES NET |
| Absolute Error | 1.2 × 10–2 | 1.4 × 10–2 | 6.9 × 10–3 | 2.1 × 10–1 | 8.8 × 10–3 |
| Tolerence Met | 100% | 99% | 100% | 98% | 100% |
| n | 7400000 | 15000 | 16000 | 1000000 | 8200 |
| Time (seconds) | 1.1000 | 0.0380 | 0.0240 | 2.4000 | 0.3600 |

Table 4
Essential code in the MATLAB script, gail_jors_eg2.m, for invoking GAIL’s (Q)MC algorithms in Example 2.
