• Aucun résultat trouvé

LIN EAIRES CREUX ´

2.1/ M ´ ETHODES DE R ESOLUTION ´

R ´ESOLUTION DE SYSTEMES`

LINEAIRES CREUX´

L

ESsyst `emes lin ´eaires et non lin ´eaires creux sont utilis ´es pour la mod ´elisation de nom-breux probl `emes scientifiques ou industriels, comme la simulation des ph ´enom `enes de l’environnement et de la terre ou la transformation industrielle des fluides complexes ou non-newtoniens. De plus, la r ´esolution de ces probl `emes fait souvent appel `a la r ´esolution de ces syst `emes d’ ´equations, qui est consid ´er ´ee comme le processus le plus co ˆuteux en termes de temps de calcul et d’espace m ´emoire. Par cons ´equent, la r ´esolution de syst `emes lin ´eaires et non lin ´eaires creux doit ˆetre aussi efficace que possible, afin de pouvoir traiter des probl `emes de taille toujours croissante.

Il existe, dans le jargon de l’analyse num ´erique, diff ´erentes m ´ethodes de r ´esolution de syst `emes lin ´eaires creux. Cependant, le choix d’une m ´ethode de r ´esolution est souvent guid ´e par les propri ´et ´es de la matrice creuse du syst `eme `a r ´esoudre (structure, sym ´etrie, densit ´e, etc), la vitesse et la pr ´ecision de r ´esolution souhait ´ees. Toutefois, un bon choix de la m ´ethode est aussi guid ´e par la taille de ces syst `emes, qui ralentit davantage le pro-cessus de r ´esolution. Par cons ´equence, ces m ´ethodes doivent ˆetre faciles `a parall ´eliser pour exploiter la puissance de calcul et la capacit ´e m ´emoire des plateformes de calcul parall `ele.

Dans le pr ´esent chapitre, nous d ´ecrivons deux classes de m ´ethodes de r ´esolution dans la section 2.1, `a savoir les m ´ethodes directes et les m ´ethodes it ´eratives. Dans la section 2.2, nous montrons les diff ´erentes structures de donn ´ees des matrices creuses en m ´emoire, qui permettent d’optimiser l’occupation d’espace m ´emoire et les acc `es en lecture/ ´ecriture `a la m ´emoire. Enfin dans la section 2.3, nous pr ´esentons la parall ´elisation des m ´ethodes it ´eratives pour la r ´esolution de syst `emes lin ´eaires creux de grande taille sur les plateformes de calcul parall `ele.

2.1/ M ´

ETHODES DE RESOLUTION

´

Soit le syst `eme lin ´eaire creux suivant :

Ax = b, (2.1)

o `u A ∈ Rn×nest une matrice carr ´ee creuse inversible, x ∈ Rnest le vecteur solution, b ∈ Rn

est le vecteur du second membre et n ∈ N est un grand entier naturel. Les m ´ethodes de r ´esolution de syst `emes lin ´eaires sont, plus ou moins, classifi ´ees en deux grandes familles : les m ´ethodes directes et les m ´ethodes it ´eratives. Dans l’analyse num ´erique,

un algorithme permettant de r ´esoudre un syst `eme lin ´eaire creux est appel ´e un solveur lin ´eaire creux direct ou it ´eratif, selon le type de la m ´ethode de r ´esolution qu’il utilise.

2.1.1/ M ´ETHODES DIRECTES

Les m ´ethodes directes sont les m ´ethodes num ´eriques les plus anciennes pour la r ´esolution de syst `emes lin ´eaires. De plus, jusqu’aux ann ´ees quatre vingt, elles ont sou-vent ´et ´e pr ´ef ´er ´ees aux m ´ethodes it ´eratives, en raison de leur robustesse et de leur com-portement pr ´evisible. En effet, que ce soit pour des matrices denses ou creuses, ces m ´ethodes permettent d’obtenir, th ´eoriquement en l’absence des erreurs d’arrondi, une solution exacte en un nombre d’op ´erations ´el ´ementaires fini et connu a priori. La plupart des m ´ethodes directes sont bas ´ees, principalement, sur deux ´etapes de calcul : la factori-sation de la matrice suivant ses propri ´et ´es (sym ´etrie, d ´efinie positive, etc) et la r ´esolution par des substitutions successives [70].

Parmi les solveurs directs les plus utilis ´es, nous pouvons citer le solveur LU bas ´e sur la m ´ethode de factorisation LU [64]. Dans un premier temps, ce solveur proc `ede `a la factorisation de la matrice des coefficients A du syst `eme lin ´eaire `a r ´esoudre (2.1). Dans cette ´etape, la matrice A est d ´ecompos ´ee en deux matrices triangulaires inf ´erieure L = (li j)16i, j6net sup ´erieure U = (ui j)16i, j6n, de fac¸on `a ce que la matrice A puisse s’ ´ecrire sous forme d’un produit des deux matrices L et U. Une fois la factorisation ´etablie, le solveur LU r ´esout le syst `eme lin ´eaire en deux ´etapes :

– la r ´esolution du syst `eme Ly = b par l’algorithme de descente (substitutions succes-sives avant ou r ´esolution de haut vers le bas),

– puis, la r ´esolution du syst `eme U x = y par l’algorithme de remont ´ee (substitutions successives arri `ere ou r ´esolution de bas vers le haut).

Cependant, les m ´ethodes directes de r ´esolution de syst `emes lin ´eaires creux sont sou-vent plus compliqu ´ees que celles des syst `emes denses. La principale difficult ´e r ´eside dans l’ ´etape de factorisation de la matrice. En effet, durant la construction des deux fac-teurs triangulaires L et U, certains z ´eros de la matrice creuse d’origine, A, peuvent deve-nir des valeurs non nulles dans les matrices L et U, ce que l’on appelle, commun ´ement, processus de remplissage. Par cons ´equent, une mise en œuvre efficace d’un solveur direct creux d ´epend largement des structures de donn ´ees en m ´emoire (formats de sto-ckage) des valeurs non nulles des matrices L et U. De ce fait, un solveur direct creux est g ´en ´eralement bas ´e sur quatre ´etapes distinctes [35, 31] au lieu de deux comme dans les solveurs denses :

1. R ´eorganisation de la matrice A : qui consiste `a r ´eordonner les lignes et les colonnes de A, et donc les valeurs non nulles, de telle sorte que les facteurs L et U subissent peu de remplissage `a l’ ´etape de factorisation num ´erique.

2. Factorisation symbolique : qui d ´etermine a priori les structures de donn ´ees appro-pri ´ees aux valeurs non nulles des facteurs L et U.

3. Factorisation num ´erique : qui calcule les facteurs L et U.

4. R ´esolution du syst `eme lin ´eaire creux : qui effectue les substitutions avant-arri `ere en utilisant les deux facteurs L et U calcul ´es `a l’ ´etape pr ´ec ´edente.

Dans le cas des matrices creuses sym ´etriques et d ´efinies positives (valeurs propres stric-tement positives), les quatre ´etapes peuvent ˆetre bien s ´epar ´ees comme dans le solveur CHOLMOD [26]. Pour les matrices creuses asym ´etriques, les solveurs directs peuvent fusionner les ´etapes 2 et 3 en une seule ´etape comme les solveurs SuperLU [33] et MUMPS [5], ou m ˆeme fusionner les ´etapes 1, 2 et 3 comme le solveur UMFPACK [32].

Toutefois, les m ´ethodes directes ne sont pas bien adapt ´ees pour la r ´esolution de syst `emes lin ´eaires creux de tr `es grandes dimensions, et en particulier, ceux associ ´es aux probl `emes tridimensionnels. En fait, l’occupation espace m ´emoire du processus de factorisation croˆıt superlin ´eairement avec la taille de la matrice et d ´epend fortement de la structure de cette derni `ere (positions des valeurs non nulles) pour r ´eduire le rem-plissage. H ´elas, quelque soit le nombre de fois que les coefficients de la matrice sont r ´eordonn ´es, cela n’emp ˆeche pas le remplissage de croˆıtre rapidement et proportionnelle-ment `a la taille de la matrice. En outre, les solveurs directs sont tr `es co ˆuteux en termes de temps de r ´esolution qui est de O(n3), o `u n repr ´esente la taille du syst `eme. Dans ce cas, les m ´ethodes it ´eratives d ´ecrites dans la section 2.1.2, sont particuli `erement plus utiles lorsque les syst `emes lin ´eaires `a r ´esoudre sont creux et de tr `es grande dimension car, contrairement aux m ´ethodes directes, aucun processus de remplissage n’est n ´ecessaire.

2.1.2/ M ´ETHODES ITERATIVES´

Les m ´ethodes it ´eratives proc `edent par it ´erations successives d’un m ˆeme bloc d’op ´erations ´el ´ementaires, au cours desquelles une s ´equence infinie de solutions ap-proximatives {xk}k≥0 est g ´en ´er ´ee. A partir d’une solution initiale x0 (choisie pour la premi `ere it ´eration), une m ´ethode it ´erative d ´etermine `a chaque it ´eration k ≥ 1, une so-lution approximative, xk, qui converge progressivement vers la solution exacte, x, du syst `eme lin ´eaire 2.1, telle que :

x= lim

k→∞xk = A−1b ∈ Rn. (2.2)

A la diff ´erence d’une m ´ethode directe, le nombre d’it ´erations d’une m ´ethode it ´erative n ´ecessaire pour atteindre la solution exacte du syst `eme lin ´eaire `a r ´esoudre n’est pas connu au pr ´ealable et peut ˆetre infini. Cependant, dans la pratique, un solveur it ´eratif donne souvent une solution approximative satisfaisant une pr ´ecision requise et/ou apr `es un nombre maximum d’it ´erations fix ´e a priori. Les crit `eres d’arr ˆet les plus fr ´equemment utilis ´es par les solveurs it ´eratifs sont les suivants :

– kxk− xk−1k < ε: erreur absolue, – kxk− xk−1k < εkxk−1k: erreur relative, – kb − Axkk < εkbk: r ´esidu de la solution.

o `u xk est la solution approximative obtenue `a l’it ´eration k 6 K, K ´etant le nombre maxi-mum d’it ´erations et ε est le seuil de tol ´erance requis pour la pr ´ecision de calcul. Ainsi, un solveur lin ´eaire it ´eratif est dit convergent si pour tout choix de la solution initiale x0 ∈ Rn, l’erreur ou le r ´esidu de la solution finale xk ∈ Rn, obtenue apr `es k it ´erations, est suffi-samment petit. Cependant, la convergence des m ´ethodes it ´eratives n’est pas toujours assur ´ee et d ´epend fortement des caract ´eristiques du syst `eme lin ´eaire, `a savoir : la struc-ture creuse, le conditionnement et le rayon spectral de la matrice des coefficients A. Il existe diff ´erentes classes de m ´ethodes it ´eratives et le choix de l’utilisation d’une m ´ethode est souvent guid ´e par son efficacit ´e de r ´esolution et les propri ´et ´es du syst `eme lin ´eaire `a r ´esoudre. Nous citons ici, globalement, trois classes de m ´ethodes it ´eratives : station-naires, non stationnaires et multigrilles.

2.1.2.1/ M ´ETHODES STATIONNAIRES

Les m ´ethodes it ´eratives stationnaires permettant de r ´esoudre le syst `eme lin ´eaire (2.1), peuvent ˆetre exprim ´ees sous la forme simple suivante :

∀k ∈ N, xk+1 = f (xk) = Cxk+ d, (2.3) telle que f soit une fonction affine repr ´esentant un sch ´ema de point fixe o `u la matrice d’it ´eration C et le vecteur d restent inchang ´es pour toutes les it ´erations k. Les m ´ethodes it ´eratives stationnaires sont bas ´ees sur la d ´ecomposition de la matrice des coefficients, A, comme suit :

A = M − N, (2.4)

de sorte que le syst `eme lin ´eaire (2.1) puisse s’ ´ecrire sous forme : Mx = N x + b `a laquelle est associ ´ee l’it ´eration suivante :

xk+1= Cxk+ d = M−1N xk+ M−1b, (2.5) o `u M est une matrice inversible. Par cons ´equent, une m ´ethode it ´erative stationnaire est convergente vers la solution exacte xsi, et seulement si, le rayon spectral (la plus grande valeur propre) de la matrice C est strictement inf ´erieur `a 1 : ρ(C) < 1. Les principales m ´ethodes it ´eratives stationnaires sont bas ´ees sur la d ´ecomposition de la matrice des coefficients en matrices diagonale D, triangulaire strictement inf ´erieure L et triangulaire strictement sup ´erieure U : A = D − L − U. Parmi ces m ´ethodes it ´eratives nous pouvons citer [68] :

– Jacobi : M = D et N = L + U,

– Gauss-Seidel : M = D − L et N = U,

– Surrelaxation successive (SOR) : M = D − ωL et N = ωU + (1 − ω)D et ω > 0, – Richardson : C = I − ωA, d = ωb et ω > 0.

L’algorithme 1 pr ´esente les principaux points cl ´es d’un solveur it ´eratif stationnaire. Il permet de calculer, `a partir d’une solution initiale x0, une s ´erie de solutions approxima-tives successives x jusqu’ `a ce que la convergence soit atteinte (dans l’algorithme, `a la ligne 7, r ´esidu< ε).

Algorithme 1 : Algorithme g ´en ´eral d’un solveur it ´eratif stationnaire Entr ´ees : A (matrice), C (matrice d’it ´eration), b (vecteur), d (vecteur) Sorties : x (vecteur)

choisir x0solution initiale, ε seuil de tol ´erance;

1

convergence ← f aux;

2

k ← 0;

3

tant que ¬convergence faire 4 ´evaluer : xk+1= f (xk) = Cxk+ d; 5 convergence ← (kb − Axk+1k · kbk−1< ε); 6 k ← k + 1; 7 fin 8

La ligne 5 de l’algorithme 1 permet de calculer les composantes du vecteur x en ap-pliquant la fonction affine de la m ´ethode it ´erative stationnaire utilis ´ee. Par exemple, dans les m ´ethodes Jacobi et Gauss-Seidel, les n composantes du vecteur x `a l’it ´eration (k + 1) sont calcul ´ees comme suit :

Jacobi : xk+1= D−1(L + U)xk+ D−1b ⇔ xik+1= (biX j,i ai jxik)/aii, ∀i, j, 1 6 i, j 6 n, Gauss − S eidel : xk+1= (D − L)−1U xk+ (D − L)−1b ⇔ xik+1= (biX j<i ai jxik+1X j>i ai jxki)/aii, ∀i, j, 1 6 i, j 6 n.

Comme nous l’avons ´evoqu ´e, pr ´ec ´edemment, le principal crit `ere de choix entre les solveurs it ´eratifs est l’efficacit ´e, et donc la convergence, des m ´ethodes de r ´esolution utilis ´ees par ces derniers. Par exemple, pour trouver la nouvelle solution x `a l’it ´eration (k+1), la m ´ethode Jacobi utilise toutes les composantes du vecteur x calcul ´ees `a l’it ´eration pr ´ec ´edente k, alors que la m ´ethode Gauss-Seidel utilise les nouvelles composantes cal-cul ´ees `a l’it ´eration courante (k + 1) d `es que possible. Par cons ´equent, cette technique de mise `a jour des composantes du vecteur solution x permet au solveur Gauss-Seidel d’effectuer moins d’it ´erations et donc d’avoir, en g ´en ´eral, une convergence plus rapide que le solveur Jacobi.

Les m ´ethodes stationnaires sont les m ´ethodes it ´eratives les plus anciennes et leurs algorithmes sont simples `a comprendre et `a mettre en œuvre. Cependant, elles sont sou-vent moins efficaces pour la r ´esolution de beaucoup de syst `emes lin ´eaires creux, vu leur applicabilit ´e limit ´ee `a certains types de matrices. Ces derni `eres ann ´ees, les m ´ethodes non stationnaires, d ´efinies dans la section suivante, sont devenues les m ´ethodes it ´eratives les plus utilis ´ees pour leur efficacit ´e `a r ´esoudre plusieurs types de syst `emes lin ´eaires.

2.1.2.2/ M ´ETHODES NON STATIONNAIRES

Les m ´ethodes non stationnaires sont les m ´ethodes it ´eratives les plus r ´ecentes ; leurs algorithmes sont g ´en ´eralement plus difficiles `a comprendre et `a mettre en œuvre, mais elles peuvent ˆetre plus efficaces pour la r ´esolution de certains syst `emes lin ´eaires creux. Elles peuvent ˆetre exprim ´ees sous la forme suivante :

∀k ∈ N, xk+1 = fk(xk), (2.6)

o `u, contrairement aux m ´ethodes stationnaires, la fonction fk permettant de calculer le nouvel it ´er ´e xk+1 diff `ere d’une it ´eration `a l’autre. En fait, les m ´ethodes non stationnaires impliquent des donn ´ees qui changent `a chaque it ´eration et qui d ´eclinent des op ´erations vectorielles utilis ´ees par les m ´ethodes it ´eratives, comme les produits scalaires et les op ´erations AXPY (y ← ax + y).

Le principe g ´en ´eral des m ´ethodes non stationnaires est la construction d’une s ´equence de vecteurs orthogonaux et les projections sur des sous-espaces. L’une des classes importantes des m ´ethodes non stationnaires est celle des m ´ethodes it ´eratives de Krylov. L’id ´ee g ´en ´erale d’une m ´ethode de Krylov [68] est de chercher une approximation, xk, de la solution de syst `eme lin ´eaire (2.1) dans un sous-espace de Krylov, Kk, d’ordre k : xk− x0= qk−1(A)r0∈ Kk(A, r0), (2.7)

telle que la condition Petrov-Galerkin soit satisfaite : b − Axk⊥Lk,

o `u qk−1est un polyn ˆome de degr ´e k − 1 et Lkest un autre sous-espace vectoriel d’ordre k. Le sous-espace de Krylov d’ordre k, not ´e Kk(A, r0), est un sous-espace vectoriel construit sur A et r0 et engendr ´e par les k vecteurs orthogonaux deux `a deux r0, Ar0, . . . , Ak−1r0

(base orthonorm ´ee) :

Kk(A, r0) ≡engendr ´e{r0, Ar0, A2r0, . . . , Ak−1r0},

o `u r0= b − Ax0est le r ´esidu de la solution initiale x0choisie, plus ou moins al ´eatoirement, au d ´emarrage du solveur de Krylov.

La plupart des m ´ethodes de Krylov sont bas ´ees sur des it ´erations ne requ ´erant que des multiplications de la matrice du syst `eme par un vecteur, des produits scalaires et des additions de vecteurs ; et elles diff `erent g ´en ´eralement dans le choix de Lk, le calcul d’une base orthonorm ´ee pour Kk (certaines m ´ethodes utilisent la matrice creuse A et d’autres utilisent sa transpos ´ee AT) et la r ´einitialisation de cette base `a toutes les m it ´erations (restarts). Les m ´ethodes de Krylov ont, g ´en ´eralement, une convergence plus rapide que les m ´ethodes stationnaires. N ´eanmoins, pour certains types de matrices creuses, elles n’arrivent pas `a converger ou elles effectuent de nombreuses it ´erations pour conver-ger. En pratique, elles sont, g ´en ´eralement, utilis ´ees avec un pr ´econditionneur qui per-met d’am ´eliorer et/ou d’acc ´el ´erer leur convergence. Le processus de pr ´econditionnement consiste `a remplacer le syst `eme lin ´eaire creux (2.1) par l’un des deux syst `emes suivants :

M−1Ax = M−1b, (2.8)

ou

AM−1ˆx = b, x = M−1ˆx, (2.9)

qui sont plus faciles `a r ´esoudre. M repr ´esente la matrice de pr ´econditionnement et les formules (2.8) et (2.9) repr ´esentent, respectivement, le pr ´econditionnement `a gauche et le pr ´econditionnement `a droite du syst `eme lin ´eaire Ax = b. Il existe beaucoup de m ´ethodes de Krylov [68, 11], par exemple CG (Lk = Kk), GMRES (Lk = AKk) et BICG (Lk = Kk(AT, r0)).

2.1.2.3/ M ´ETHODES MULTIGRILLES

Une autre cat ´egorie de m ´ethodes it ´eratives est celle des m ´ethodes multigrilles dont les origines remontent aux ann ´ees soixante [36]. Initialement conc¸ues pour la r ´esolution de l’ ´equation de Poisson, les m ´ethodes multigrilles ont rapidement ´evolu ´e pour ˆetre appliqu ´ees `a un large ´eventail d’applications dans le domaine de la physique ou des math ´ematiques des finances, comme par exemple la r ´esolution de probl `emes lin ´eaires ou non lin ´eaires avec des conditions aux limites [16] ou des probl `emes d’optimisation [71]. Les m ´ethodes it ´eratives standards, comme Jacobi et Gauss-Seidel, sont caract ´eris ´ees par un faible taux de convergence global, τ, qui peut ˆetre d ´efini `a l’it ´eration k comme suit :

τk = krkk

krk−1k = kb − Axkk

o `u rk est le r ´esidu de la solution approximative xk trouv ´ee apr `es k it ´erations. En fait, malgr ´e leur convergence rapide aux premi `eres it ´erations, ces m ´ethodes it ´eratives peinent `a maintenir leur vitesse de convergence tout le long de la r ´esolution. Cela peut ˆetre ex-pliqu ´e par leur incapacit ´e `a r ´eduire les basses fr ´equences de l’erreur, ce qui se traduit par la d ´ecroissance lente de la norme du r ´esidu durant les derni `eres it ´erations de la r ´esolution. Par cons ´equent, beaucoup d’it ´erations sont n ´ecessaires pour donner une so-lution approch ´ee int ´eressante lorsque la vitesse de convergence est faible. A cet effet, les m ´ethodes multigrilles sont conc¸ues pour am ´eliorer la vitesse de convergence de ces m ´ethodes it ´eratives et ainsi, r ´eduire leur co ˆut de r ´esolution.

Comme leur nom l’indique, les m ´ethodes multigrilles utilisent diff ´erents niveaux de maillages r ´eguliers (au moins deux grilles), du plus fin au plus grossier, chaque nœud de maillage ´etant espac ´e d’un autre d’une distance 2qh, tel que q ∈ N repr ´esente le niveaux de la grille. Pour des raisons de simplicit ´e, nous ne d ´ecrirons, ci-apr `es, que le principe g ´en ´eral de r ´esolution d’une m ´ethode `a deux grilles sur laquelle sont bas ´ees, d’ailleurs, l’ensemble des m ´ethodes multigrilles. On consid `ere un syst `eme lin ´eaire creux (2.11) discr ´etis ´e sur un maillage Ωh de pas h = 1

n+1, n ´etant le nombre de points de discr ´etisation :

Ahxh= bh, sur Ωh, (2.11)

o `u Ah, xh et bh repr ´esentent, respectivement, la matrice creuse, le vecteur solution et le second membre du syst `eme discr ´etis ´e sur Ωh. La r ´esolution de ce syst `eme par une m ´ethode it ´erative permet de trouver seulement une approximation xh `a la solution exacte xh sur Ωh. L’erreur alg ´ebrique eh et le r ´esidu rh de cette solution approximative peuvent ˆetre calcul ´es comme suit :

eh = xh− xh, (2.12)

rh = bh− Ahxh, (2.13)

De ces deux derni `eres formules, nous pouvons d ´eduire l’ ´equation de l’erreur suivante :

Aheh= rh, sur Ωh, (2.14)

L’objectif de la m ´ethode bigrille [77] est de r ´eduire les basses fr ´equences de l’erreur sur la grille grossi `ere Ω2h, que la m ´ethode it ´erative n’a pas r ´eussie `a ´eliminer sur la gille fine Ωh. En fait, les basses fr ´equences de l’erreur sur la grille fine apparaissent comme des hautes fr ´equences de l’erreur sur la grille grossi `ere, qui sont faciles `a ´eliminer par les m ´ethodes it ´eratives. Le principe g ´en ´eral d’une m ´ethode bigrille repose sur la r ´esolution de l’ ´equation de l’erreur (2.14) sur la grille grossi `ere Ω2h, pour trouver une erreur eh per-mettant de corriger la valeur de la solution approximative xh : xh= xh+ eh, obtenue apr `es quelques it ´erations sur la grille fine Ωh. L’algorithme 2 montre les principaux points cl ´es d’une m ´ethode bigrille. Les processus de pr ´e-lissage et de post-lissage consistent `a ef-fectuer quelques it ´erations d’un solveur it ´eratif (par exemple Jacobi ou Gauss-Seidel) sur la grille fine, afin d’ ´eliminer les hautes fr ´equences de l’erreur. Les deux op ´erateurs de restriction R2h

h et de prolongement Ph

2h permettent le transfert des donn ´ees entre la grille fine et la grille grossi `ere. A2h est la matrice d’it ´eration sur la grille grossi `ere, telle que : A2h = R2hh AhPh2h. La r ´esolution de l’ ´equation de l’erreur avec une m ´ethode it ´erative sur la