ElStabilini / optimization

The repository contains the code developed for RB fidelity optimization following calibration with DRAG pulses protocol
GNU General Public License v3.0
0 stars 0 forks source link

Initialization from uncertainties #24

Open alecandido opened 5 days ago

alecandido commented 5 days ago

In order to initialize the minimization algorithms, the search area could be derived from the uncertainties estimated from the individual parameters.

However, these parameters are not easily available in the runcard, and potentially in the fit results (in the 0.1 version).

For the time being, they should be already exposed for the Ramsey and flipping, at least (and it seems that's not the case for the Drag). So, restricting to the 2D (amplitude & frequency), it should be possible to just rerun the routines involved (it will just be redundant), and extract the relevant uncertainties from their results.

[!CAUTION] Notice that a distribution uncertainty should be inferred from its marginal (integrating the other dimensions), and not from cuts. However, a cut is exactly what we'd be doing with the 1D routines.

This may lead to underestimate the uncertainty, if the larger principal component is not aligned with any of the coordinated axes. E.g., consider the case of a 2D Gaussian distribution, elongated in one direction, which is tilted by 45° wrt the coordinated axes [see below]. The width on both coordinated centered cuts will be arbitrarily smaller wrt the larger principal component, according to how narrow is the other one in comparison.

If the uncertainty is the only information we want to start from (without a 2D scan, even a coarse-grained one), at least some care should be taken just inflating the the area a bit (but of course, that's just heuristics - there is no value which would guarantee actual safety).

Random pictures to depict the 2D Gaussian example

image image

ElStabilini commented 2 days ago

I opend a draft #25 with the code implementing the initial simplex initialization from the uncertainties. There are anyway a few things that I want to change in the code:

alecandido commented 2 days ago

For convenience, you can link an issue with the PR aiming to resolve it.

There are various ways, but one is just in the clicking on the "Development" section in the column on the right: image