• Nenhum resultado encontrado

2. Outils de contrˆ ole optimal

2.5 M´ethodes num´eriques

2.5.2 Algorithme GRAPE

1. k=0

initialisation deu0

2. Propagation(|ψ0i, u0, t0, tf)

3. Propagation(|χ0i,u˜0, tf, t0) et calcul simultan´e de ˜u0 =g(|ψ0i,|χ0i) 4. mise `a jour de k:k←k+ 1

5. Propagation(|ψki, uk, t0, tf) et calcul simultan´e deuk=f(|ψki,|χk−1i) 6. Propagation(|χki,u˜k, tf, t0) et calcul simultan´e de ˜uk =g(|ψki,|χki) 7. siJk−Jk−1 ≤alors arrˆet de l’algorithme

sinon ´etape 4

On note Propagation(|ψi, u, t1, t2) l’action de propager l’´etat |ψi `a l’aide du champ u du temps t1 `a t2. L’algorithme d´ebute par la propagation de |ψ0i `a l’aide du champ d’essaiu0. Ensuite, connaissant

0(t)i, |χ0(tf)i = |ψci est propag´e en arri`ere en calculant simultan´ement le champ ˜u0. Ensuite, on proc`ede de la mˆeme mani`ere pour|ψ1(t)i mais avec une propagation en avant. Ce processus it´eratif est r´ep´et´e jusqu’`a ce qu’un crit`ere de convergence soit satisfait.

Dans ce domaine, il faut noter qu’un nombre impressionnant d’algorithmes a ´et´e publi´e. Ces al- gorithmes permettent de d´eterminer un champ g´en´erant une transformation unitaire donn´ee [31], de prendre en compte des contraintes spectrales [32, 33], ou de traiter la non-lin´earit´e entre le syst`eme et le contrˆole [25,34]. Une version adapt´ee au contrˆole de syst`eme dont la dynamique est non-lin´eaire par rapport `a l’´etat existe ´egalement [35]. Certains de ces d´eveloppements seront pr´esent´es dans le chapitre4.

dimensions. Plus pr´ecis´ement, on ´ecrit le coˆut final en fonction du propagateur du syst`eme :

| hψc|ψ(tf)i |2=hψ0|U0...UNci hψc|UN...U00i

=hψi|Uiii hχi|Uiii

=| hψiii |2, (2.44)

o`u |χii est d´efini par |ψci =UNUN−1. . . Ui+1ii. On suppose que l’Hamiltonien du syst`eme se met sous la formeH0+u(t)H1 et en faisant l’approximation du split-operateur [37], le propagateur s’´ecrit : Ui = exp (−iH0/2) exp (−uiiH1) exp (−iH0/2). Cette approximation a la propri´et´e d’ˆetre unitaire et d’induire seulement une erreur proportionnelle `a ∆t3. On calcule alors la d´eriv´ee du coˆut par rapport

` a ui :

d

dui| hψc|ψ(T)i |2 = 2 Im

ihψii−1i hχi|exp (−iH0/2)H1exp (−uiiH1) exp (−iH0/2)|ψii

(2.45)

L’algorithme it´eratif se construit alors de la mani`ere suivante. Supposons donn´e le champ de contrˆole uk `a l’it´eration k de l’algorithme, on note uki ses valeurs discr´etis´ees. On calcule alors la nouvelle valeur du champ `a l’ordre k+ 1 au tempsipar la formule :

uk+1i =uki +α d

dui| hψck(T)i |2. (2.46) Le param`etre αest choisi suffisamment petit pour que le coˆut s’accroisse10. Il suffit alors de choisir la meilleure valeur deα pour acc´el´erer la convergence de l’algorithme. Diff´erentes variantes peuvent ˆetre d´evelopp´ees et diff`ererons dans la m´ethode de line-search choisie. Les m´ethodes dites de line-search dans le contexte des m´ethodes de gradient, d´esignent la fa¸con de d´eterminer la meilleure valeur deα pour acc´el´erer la convergence. Ces m´ethodes peuvent ˆetre du type gradients conjugu´es ou BFGS. Des versions au second ordre permettent d’utiliser la hessienne afin d’avoir une m´ethode de line-search plus efficace et surtout plus pr´ecise [38]. Notons que cette approche r´esout des probl`emes de contrˆole optimal de type Mayer-Lagrange.

La seconde version de GRAPE est bas´ee sur le PMP [39]. Elle consiste `a d´eriver le pseudo- Hamiltonien Hp par rapport `a ui et utilise cette d´eriv´ee pour mettre `a jour `a chaque it´eration le champ afin de converger vers la cible et vers la condition de maximisation ∂Hp

∂ui = 0. On d´efinit alors

10. L’espace dans lequel notre fonction est maximis´ee estRN avecN le nombre de champs de contrˆole. Ce type de m´ethode est qualifi´ee de direct car elle ne s’appuie pas sur un principe d’optimisation tel que le PMP.

l’Hamiltonien suivant pour un probl`eme de type Mayer :

Hp = Im(hχ|H(t)|ψi), (2.47)

o`u l’on introduit l’´etat adjoint χ. On peut v´erifier que cela correspond bien `a l’Hamiltonien de Pon- tryagin. Pour cela, on note ˙X = F(X, u) l’´equation de Schr¨odinger sous forme complexe (la forme standard) et ˙x = f(x, u) l’´equation de Schr¨odinger ´ecrite sous forme r´eelle, c’est-`a-dire que l’on a X∈Cnetx∈R2n. Il faut alors v´erifier queHp(x, p)≡Hp(X, P). On ´ecrit|ψi=|ψri+ i|ψii avecret id´enotant la partie r´eelle et imaginaire. Faisant de mˆeme pour |χi et pour l’Hamiltonien quantique,

`

a partir de l’Hamiltonien de Pontryagin ; on trouve :

Hp =hχr|Hrii+hχr|Hrii − hχi|Hrri+hχi|Hiii (2.48) Il faut v´erifier maintenant qu’en d´ecomposant la dynamique en partie r´eelle et imaginaire et ensuite en appliquant le PMP sur ce syst`eme, on trouve bien la mˆeme chose. En utilisant la mˆeme d´ecomposition que pr´ec´edemment on trouve la dynamique :

ψ˙r ψ˙i

=

 Hi Hr

−Hr Hi

ψr ψi

. (2.49)

En appliquant le PMP `a l’aide de cette ´equation, on peut v´erifier que l’Hamiltonien de Pontryagin est le mˆeme.

On peut `a l’aide des ´equations de Hamilton retrouver sa dynamique. Celles-ci conduisent au fait que l’´etat adjoint |χ(t)i voit sa dynamique gouvern´ee elle aussi par l’´equation de Schr¨odinger. Les conditions de transversalit´e permettent de connaitre la valeur finale de l’´etat adjoint. Ensuite la condi- tion de maximisation est utilis´ee pour d´eterminer le gradient qui servira `a mettre `a jour le contrˆole.

L’algorithme se formule alors de la fa¸con suivante : 1. initialisation deu0

2. Propagation(|ψ0i, u0, t0, tf) et Propagation(|χ0i, u0, tf, t0) 3. d´etermination deα

4. mise `a jour de u0 =f(|ψ0i,|χ0i) 5. mise `a jour de k:k←k+ 1

6. Propagation(|ψki, uk, t0, tf) et Propagation(|χki, uk, tf, t0) 7. d´etermination deα

8. mise `a jour de uk =f(|ψki,|χki)

9. siJk−Jk−1 ≤alors arrˆet de l’algorithme sinon ´etape 5

Ayant initialis´e l’algorithme par un champ d’essai, l’´etat adjoint et l’´etat du syst`eme sont propag´es respectivement en arri`ere et en avant. Le premier `a partir de la cible |ψci et le second `a partir de l’´etat initial|ψ0i. Connaissant ces ´evolutions, le champ est mis `a jour comme pr´ec´edemment. Ensuite, la m´ethode de line-search permet de rechercher la valeur optimale deα. On recalcule `a chaque ´etape les propagations avant et arri`ere de l’´etat du syst`eme|ψ(t)iet de l’´etat adjoint|χ(t)i avec le nouveau contrˆole. L’algorithme s’arrˆete quand un crit`ere de convergence est respect´e. Par exemple si |Jk+1− Jk| ≤avec >0 un seuil donn´e.

2.6 Comparaison des algorithmes de type monotones et de type