• Aucun résultat trouvé

Un algorithme d'identi ation des boules à partir de requêtes de

5.2 Identi ation à la limite des boules

6.1.5 Un algorithme d'identi ation des boules à partir de requêtes de

Demanderla orre tiond'unmotdelaforme

aj

ave

j

grandpermettradon d'obte-nirune orre tion dontnouspouvonstirerdel'information.Supposonseneetque

l'al-phabet soit

Σ = {a1, . . . , an}

et soit

j1, . . . , jn∈ N

degrand entiers.Si nousdénissons

k =Pn

i=1|Cq(aji

i )|ai

,alorsleLemme12donne

k =Pn

i=1(|o|ai+r) = |o|+|Σ|·r ≥ |o|+r

. Nous pouvons alors utiliser ette valeur

k

dans la Proposition 11 et obtenir un mot

w = Cq (a1. . . an)k ∈ Bmax

r (o)

. Deplus, nousavons

|w| = |o| + r

et

k = |o| + |Σ| · r

. Don , nousendéduisons quelerayon est

r = (k − |w|)/(|Σ| − 1)

.

6.1.5 Un algorithme d'identi ation des boules à partir de requêtes

de orre tion

À e point,nous pouvons don résumer notrestratégie d'apprentissage de laboule

Br(o)

ave unalphabet

Σ = {a1, . . . , an}

de lafaçon suivante :

1. Pour haquelettre

ai

,l'apprenantdemandela orre tionde

aji

ave

j

susamment grand pour quela orre tion soitplus petite que

j

.

2. Il al ule alors

k = Pn

i=1|Cq(aji

i )|ai

et demande la orre tion

w

du mot

v =

(a1. . . an)k

.

3. Àpartir de

k

et

w

, ildéduit

r

.

L'apprenant est don apable d'identier des boules à partir de requêtes de orre tion

enun nombre polynomialde requêtes(voirl'Algorithme7Identifi ation_boule et

leThéorème 33).

Algorithme 7: Identifi ation_boule

Données : L'alphabet

Σ = {a1, . . . , an}

Résultat : La représentation

(o, r)

de laboule ible

Br(o)

j ← 1

; 1

k ← 0

; 2 pour

i = 1

à

n

faire 3

tant que

Cq(aji) =

Ouiou

|Cq(aji)| ≥ j

faire 4

j ← 2 · j

; 5 ntq 6

k ← k + |Cq(aji)|ai

; 7 npour 8

w ← Cq (a1a2. . . an)k

; 9

r ← (k − |w|)/(|Σ| − 1)

; 10

o ←

Extra tion_du_ entre

(w, r)

; 11 retourner

(o, r)

12

Voi i un exemplede l'exé ution de l'algorithme:

Exemple 44 Considérons la boule

B2(bb)

sur l'alphabet

Σ = {a, b}

. Notre algorithme ommen e par her her des orre tions de

aj

et

bj

ave

j

susamment grand. Nous pouvons par exemple observer :

Cq(a) =

Oui

, Cq(a2) =

Oui

, Cq(a4) = aabb, Cq(a8) =

abba, Cq(b8) = bbbb.

D'où

k = |abba|a+ |bbbb|b = 2 + 4 = 6

.

Ensuite,

Cq (ab)6 = Cq(abababababab) = abba

,parexemple,etnouspouvonsdon endéduire

r = (6 − 4)/(2 − 1) = 2

.EnnExtra tion_du_ entre

(abba, 2)

retourne

bb

. Don Identifi ation_boule retourne

(bb, 2)

.

Théorème 33 Pour n'importe quelle boule

Br(o)

, Identifi ation_boule retourne sa représentation

(o, r)

en utilisant

O (|Σ| + |o| + r)

requêtes de orre tion.

Démonstration :

La orre tiondel'algorithmeIdentifi ation_Bouledé ouledelasuitedelemmede

ette se tion.Con ernant lapolynomialité del'algorithme, les requêtesinterviennent à

troisendroits :

1. les orre tionsdesmots

aji

(ligne4)sont aunombrede

O (|Σ| + log(|o| + r))

(soit

O(log(|o| + r))

pour avoir la plus grande orre tion plus une requête par lettre, soit

|Σ|

q

Edit

supplémentaires);

2. la orre tion dumot

(a1a2. . . an)k

(ligne9);

3. les orre tions utilisées par l'algorithme Extra tion_du_ entre (ligne 11)

pour retrouver le entre, soit d'aprèslaProposition 10

O (|o| + r)

q Edit

Edit

Autotal, l'algorithmea alors besoin de

O (|Σ| + |o| + r)

requêtes de orre tion.

Il en résultele orollaire :

Corollaire 2

 Soit

q()

un polynme. L'ensemble de toutes les

q()

-bonnes boules

Br(o)

est iden-tiable ave un algorithme qui utilise

O (|Σ| + |o| + q(|o|))

requêtes de orre tion etun temps polynomial.

 L'ensemble des bonnes boules

Br(o)

est identiable ave un algorithme qui utilise

O (|Σ| + |o| + r)

requêtes de orre tion et untemps polynomial.

Contrairement aux afd les boules sont don apprenables en utilisant des Cq Edit

.

Ce résultat est somme toute mitigé. D'une part, nous ne savons pas montrer que la

omplexitéobtenue est uneborneinférieure.D'autre part,sil'on reprendl'exemple du

plan, l'apprentissage de boules dans

R2

est de omplexité logarithmique. En fait, la omplexitédesboulesdemotsesttellequ'ilestdi iledepouvoirutiliseràbones ient

l'information ontenue dansune orre tion( ontrairement à

R2

).

De e fait, nouspouvonsaussi onstruire unalgorithme qui,à partir d'un exemple

( 'est-à-dire d'un motde la boule),identie laboule ave desmq seulement! Eneet,

une fois que l'on a obtenu un mot de la frontière supérieure de la boule, l'algorithme

Identifi ation_boulen'utiliseles q Edit

quepourtesterl'appartenan edunouveau

mot à la boule. Il s'en sert don omme de mq. Ainsi, il sut de partir d'un mot

quel onque de la boule et de faire le plus d'insertions possibles de toutes les lettres

de l'alphabet entre haque lettre de l'exemple pour pouvoir onstruire un mot de la

frontière supérieure de la boule 3

. Ensuite, à partir de e mot, il sut d'utiliser une

modi ation de l'algorithme Extra tion_du_ entre pour trouver les mot

aro

et

bro

( ommenousne onnaissonspasen ore

r

).Nousendéduisonsalorsfa ilement

(o, r)

. La omplexité de e nouvel algorithme est alors polynomiale et non plus linéaire,

mais ela montre que les q Edit

ne sont peut-être pasutilisées à leur juste valeur,

ontrairement àl'exemple del'apprentissagedansleplan.Deplus,si omme souventen

pratique 'estun humain qui joue le rle de l'ora le, une omplexité polynomiale peut

alors être trop oûteuse. Nous allons don essayer dans la se tion suivante de réduire

ette omplexité.

Au préalablenousallonsnousintéresser auxmauvaisesboules dont lasituationest

moins laire. En eet, prenons la lasse ontenant toutes les boules ayant pour entre

lemotvide :

{Bn(λ) : n ∈ N}

. Ande pouvoiridentier uneboule, ilest né essairede faireunerequêteendehorsdelaboule.Larequêteainsiquesa orre tionsontalors des

mots dont les longueurssont supérieuresou égalesà

|o| + r

, 'est-à-dire supérieuresou égalesà

r

.La tailledelareprésentation de esboulesétant

|o| + log r = log r

, esmots ont don destaillesexponentielles en

log r

...

3

Te hniquement,soit

w

unmotdelaboule.Sil'onnepeutinsérerau unelettreà

w

(et equelque soitlapositiondel'insertion),alors nouspouvonsmontrerque

w∈ Bmax

r (o)

.Deplus, n'importequel motdelaboule estun sous-motd'aumoins un motde

Bmax

r (o)

.De efait, si

w6∈ Bmax

r (o)

alors il existebien unepositiondanslemottelle quel'onpeutfaire uneinsertionetobtenirunmot

w

plus longetpluspro hede

Bmax

Nous pouvons alors distinguer deux as: soit nousautorisons le faitquele nombre

derequêtesde orre tionautoriséespuissedépendredelapluslongue orre tiondonnée

parl'ora le,auquel aslesboulessontidentiables,soitnousnel'autorisonspas,etalors

ellesne lesont pas.