• Nenhum resultado encontrado

Analyse mathématique de la situation pour le chercheur Nous utilisons le vocabulaire suivant : un algorithme est un algorithme

No documento de recherche pour la classe (páginas 155-160)

Analyse mathématique

2. Analyse mathématique de la situation pour le chercheur Nous utilisons le vocabulaire suivant : un algorithme est un algorithme

Dans la sous-section suivante, nous présentons une version mathématisée de la situation 1.

1.3. Formalisation de la situation 1. La représentation que nous utilisons, ici, met en jeu des objets de Z2 à savoir des points, des vecteurs, des droites et des demi-plans.

Considérons D4 = {(1,0),(1,1),(0,1),(1,1)}. Nous appelons droites les ensembles suivants : {z Z2,hz, ui =a}u D4 et a∈ Z. On dira que la droite est :

horizontale si u= (0,1) ; – verticale si u= (1,0) ; – diagonale siu= (1,−1) ; – anti-diagonale siu= (1,1).

Une droite D sépare Z2 en trois parties P1 = {z Z2,hz, ui < a}, P2 ={z∈Z2,hz, ui> a}etD, nous dirons que les points deP1 sontrouges, ceux deP2 bleuset ceux deDsontnoirs. Nous définissons aussila frontière F issue deDd’un sous ensembleAdeZ2 par l’intersection deAetD. Nous pouvons maintenant énoncer le problème.

Enoncé :Sur une partie finieAdeZ2 vierge, 2 joueurs s’affrontent.

Le premier joueur que nous appelleronsle chercheur cherche à trou- ver une frontière de Aque le joueur 2, que nous appellerons le don- neur, cache.

Pour trouver la frontière, le chercheur a le droit de demander au joueur 2 la couleur de n’importe quel point de A. Le but pour le chercheur est de trouver la frontière en utilisant le minimum d’inter- rogations et pour le donneur de retarder le plus longtemps possible la découverte de la frontière.

Dans ce qui suit, nous allons analyser ces situations. Dans un premier temps, nous nous consacrons à la situation du côté du chercheur en met- tant en avant les différentes conceptions du problèmes qui pourraient être développées. Ensuite, nous nous consacrerons au donneur. Nous essaierons dans nos analyses de prendre en compte l’aspect expérimental en donnant une attention particulière aux problèmes rencontrés, aux cas particuliers et aux exemples.

De plus, notre analyse se limitera à des territoires vierges de formerec- tangulaire.

2. Analyse mathématique de la situation pour le chercheur

2. ANALYSE MATHÉMATIQUE DE LA SITUATION POUR LE CHERCHEUR 135

Pvérif, s’assurer que la stratégie employée trouve la frontière ou au niveau de la configuration de cases Pgen s’assurer que la configuration de cases engendrent cette frontière.

Si notre stratégie n’est pas suffisament structurée, nous allons nous diri- ger versPgen. Ce problème peut alors nous amener à développer le résultat suivant :

Lemme X.2

Le point croix est noir dans les configurations suivantes :

Nous pouvons alors nous poser le problème de la réciproque et conclure que ce sont les seules configurations pour lesquelles nous pouvons donner la couleur noire à un point.

Ce lemme nous permet de dire si un point est noir et permet même dans les cas 3 et 4 de déterminer la frontière, car nous connaissons 2 points noirs.

Le problèmePgenpeut aussi amener à établir la stratégie suivante : véri- fier que la configuration engendre 2 points noirs ou vérifier qu’elle engendre un point noir et la direction de la frontière. Le résultat justifiant cette stra- tégie est le suivant :

Théorème X.3

Soit F une frontière alors :

a) si 2 points sont noirs,F est issue de la droite passant par ces 2 points ; b) si un point est noir et siF est dirigée par le vecteur u,F est issue de

la droite passant par ce point et dirigée paru.

Nous rencontrons ainsi le problème Pdirection, quelles sont les configu- rations qui engendrent une unique direction ? Nous ne traiterons pas ce problème tout de suite, nous verrons plus tard un théorème qui sera une ré- ponse partielle de ce problème. Nous pouvons aussi rencontrer le problème Pnoir, quelles sont les configurations qui engendrent 2 points noirs ?

Nous allons maintenant nous concentrer sur les stratégies de recherche que nous pouvons développer pour résoudre Pchercheur. En particulier, ces stratégies sont construites avec une volonté d’optimiser le nombre d’inter- rogations qu’elles utilisent. Si la stratégie est jugée suffisament optimale, nous pouvons alors essayer de construire un algorithme de recherche ba- sée sur celle-ci, le problème de la construction d’un algorithme est Palgo. Nous sommes alors confrontés àPevalC, évaluer l’optimalité d’un algorithme de recherche. Pour répondre à PevalC, il nous faut déterminer le nombre d’interrogations utilisée par l’algorithme3, c’est le problème PnombreC. Une réponse à PnombreC fournit un majorant à l’optimum, cela donne donc une réponse au problèmeP+ : déterminer un majorant. De plus, l’évaluation ne peut se faire sans confrontation avec un minorant, c’est le problème P : déterminer un minorant au nombre minimum d’interrogations.

Remarque : Une fois que nous avons constuit un algorithme, il nous faut prou- ver que cet algorithme trouve la frontière quelle que soit la frontière choisie par le donneur pour S0 ou quelque soit l’algorithme de défense qu’utilise le donneur pour S14. Les résultats produits pour résoudre Pgen, les lemmes X.3 et X.2, peuvent alors être des outils à utiliser pour prouver qu’un algorithme de recherche trouve la frontière. D’ailleurs nous verrons que nous utilisons ces résultats pour prouver que les algorithmes que nous proposons trouvent effec- tivement la frontière.

Avant de voir comment construire des algorithmes de recherche, nous allons étudier Péval, évaluer l’optimalité d’un algorithme, qui pose avant tout la question de savoir quelle optimalité nous allons considérer.

2.1. Définition de l’optimalité. Une première chose que nous de- vons signaler est que nous ne considérerons que des algorithmes qui jouent de manière non-aléatoires, car cela ne change rien au niveau de la réponse à Pchercheur mais rend les définitions plus complexes. Par contre, considérer des algorithmes aléatoires permet d’engendrer de nouveaux problèmes, en particulier de nouvelles optimalités, et de faire appel à de nouveaux inva- riants opératoires et représentations.

L’optimalité a considéré pour l’algorithme de recherche n’est pas définie dans les énoncés. Pour définir une optimalité, nous pouvons commencer par définir une relation d’ordre entre les algorithmes. Nous envisageons les 2 relations suivantes :

(1) optimalité au pire des cas :A<B lorsqu’au pire des cas,A utilise moins d’interrogations queB;

(2) optimalité locale :A<Blorsqu’il existe une frontière queAtrouve en utilisant moins d’interrogations que B.

La seconde relation n’est pas une relation valide, car il peut exister des cas où A < B etB > A. Toutefois, cela n’empêche pas, a priori, l’existence d’un algorithme de recherche optimal pour cette optimalité, qui serait alors un algorithme qui, quelque soit la manière dont joue le joueur 2, utilise moins d’interrogations que tout autre algorithme. Ce serait une sorte d’algorithme

« ultimement optimal » : un algorithme est ultimement optimal lorsqu’il est optimal contre tout algorithme de défense. Or un tel algorithme n’existe pas sur un rectangle dont l’une des dimensions est strictement supérieure à 1. En effet, suppposons qu’un tel algorithme Aexiste et considérons un rectangle de dimensions non nulles et une frontière horizontale f. Alors comme il existe un algorithme de recherche qui détermine f en 2 interrogations, A déterminef en 2 interrogations. Donc l’algorithmeAjoue son premier coup sur un point du segment f. Considérons maintenant, une autre frontière horizontale f parallèle à f alors nous pouvons effectuer pour f le même raisonnement que pourf et doncAcommence nécessairement par interroger un point de f. Donc A joue son premier coup sur f etf, or f et f sont disjointes, donc ce n’est pas possible. De ce fait, A n’existe pas.

La première relation est quant à elle valide (c’est une relation d’ordre totale), un algorithme optimal est alors l’algorithme qui au pire des cas

4Prouver qu’un algorithme trouve la frontière quelque soit la frontière choisie par le donneur est équivalent à prouver qu’il la trouve quelque soit l’algorithme de défense utilisé.

2. ANALYSE MATHÉMATIQUE DE LA SITUATION POUR LE CHERCHEUR 137

utilisent le plus petit nombre d’interrogations. L’optimalité au pire des cas se formalisent de la manière suivante pour S0 :

Définition X.4 (Nombre d’interrogations, au pire, utilisées pour S0). Si A est un algorithme de recherche sur un rectangle R, F l’ensemble des frontières possibles sur RetA(f) le nombre d’interrogations utilisées parA pour trouver la frontière f.

Lenombre d’interrogations au pire utilisées parA surR est X = max{A(f)|f ∈ F}

Nous disons alors que A s’arrête en X interrogations au pire.

La définition précédente se reformule de la manière suivante :

Définition X.5. Un algorithme A s’arrête en X interrogations si les deux conditions suivantes sont réunies :

– quelque soit la frontière, A trouve la frontière en moins deX interro- gations ;

– il existe une frontière pour laquelle A effectue X interrogations.

Un algorithme optimal au pire des cas se définit alors de la manière suivante :

Définition X.6 (Algorithme de recherche optimal au pire des cas pour S0). SoitRun rectangle,Al’ensemble des algorithmes de recherche surRet F l’ensemble des frontière possibles surR alors un algorithme de recherche A0 est optimum au pire surR lorsque :

max{A0(f)|f ∈ F}= min

A∈Amax{A(f)|f ∈ F}=m

m est alors appelé optimal au pire des cas ou, plus court, optimal au pire.

Nous faisons la même chose pour S1 :

Définition X.7 (Nombre d’interrogations au pire utilisées pour S1). Si A est un algorithme de recherche sur un rectangle R,SA l’ensemble des algorithmes de défense sur R, S SA et A(S) le nombre d’interrogations utilisées par Apour trouver la frontière sur R lorsque le donneur utiliseS.

Lenombre d’interrogations au pire utilisées parA surR est : X= max{A(S), S SA}

Nous disons que As’arrête en au pire X interrogations.

Nous définissons alors un algorithme optimal de la manière suivante : Définition X.8 (Algorithme optimal au pire pour S1). Un algorithme de recherche A0 est alors optimal au pire surR lorsque :

max{A0(S), S∈SA0}=m= min

A∈Amax{A(S), S SA}

m est alors appelé optimal au pire des cas ou, plus court, optimal au pire.

Ces deux optimalités sont, en fait, équivalentes. En effet, considérons un algorithme de recherche A qui termine en X interrogations pour S1, alors il existe un algorithme de défense qui fait effectuer X interrogations à A.

Appelonsf la frontière trouvée parAlorsqu’il joue contre cet algorithme de défense, alors dans la situationS0, si le donneur choisit la frontièref,Ava la trouver en Xinterrogations. D’autre part, si Atermine enX interrogations pour S0 alors il existe une frontière f que A trouve en X interrogations.

Donc lorsqueAjoue contre l’algorithme de défense associée àf, il utilise X interrogations.

Un algorithme de défense contrant un algorithme de recherche équivaut donc à choisir une frontière. Dans ce qui suit, nous ne considérerons que l’optimalité au pire et ne ferons plus de distinctions, pour le chercheur, entre les situations S0 etS1.

Remarque : Dans les définitions concernantS1, nous ne considérons que des al- gorithmes de défense contrant toutalgorithme de recherche et non des algo- rithmes de défense contrantun unique algorithme de recherche. Nous disons qu’un algorithme de défense qui ne prend comme instance qu’un seul algorithme de recherche est unalgorithme de défense local et qu’un algorithme de défense qui prend tout algorithme de recherche comme instance est un algorithme de défense globale.

Nous pourrions définir une optimalité analogue en remplaçant l’ensemble des algorithmes de défense globaux par l’ensemble des algorithmes de défense contrant l’algorithme. A priori, cela ne donne pas la même optimalité. La dé- finition que nous avons donnée est celle adaptée à S1, car le donneur qui n’a pas, a priori, connaissance de l’algorithme de recherche utilisé par le chercheur doit chercher des algorithmes de défense globaux.

Ces optimalités sont, toutefois, équivalentes, car soit A un algorithme de recherche, nous pouvons transformer tout algorithme de défense local S en un algorithme de défense globaleS avecA(S) =A(S). Pour cela, soitB un algorithme de recherche alors tant queBinterroge le même point queAdonner la couleur queS aurait donné. Sinon, donner une couleur cohérente.

Revenons maintenant sur Pchercheur, nous allons proposer des stratégies et des algorithmes de recherche que nous pouvons développer en essayant de résoudre ce problème. Nous allons, dans un premier temps, proposer des stratégies et algorithmes de recherche, qui utiliseront le lemme X.3 qui donne les conditions d’arrêt pour les algorithmes de recherche.

2.2. Stratégies issues du lemme X.3. Ce lemme donne deux idées pour trouver un algorithme de recherche :

a) trouver deux points de la frontière ;

b) trouver un point de la frontière et sa direction.

Cela pose les problèmes suivants :

Palgonoir, comment trouver un point de la frontière ? – Palgodirec, comment trouver la direction de la frontière ?

En particulier, ces problèmes sont respectivement reliés au problème Pnoir etPdirection, par le fait que résoudre Pnoir (resp. Pdirection) peut per- mettre la résolution de Palgonoir (resp.Palgodirec).

D’autre part, comme nous cherchons à optimiser l’algorithme, cela pose aussi le problème suivant : quelle est la meilleure stratégie, commencer à

2. ANALYSE MATHÉMATIQUE DE LA SITUATION POUR LE CHERCHEUR 139

chercher un point de la frontière ou commencer par chercher l’orientation de la frontière ?

2.2.1. Stratégie : trouver deux points de la frontière. Dans cette sous- sous-section, nous présentons différents algorithmes de recherche qui com- mencent par chercher deux points de la frontière. Nous pouvons commencer par citer les algorithmes triviaux comme celui qui consiste à interroger les points un par un, de gauche à droite, en allant de haut en bas, mais nous pouvons observer que cet algorithme n’est pas efficace en jouant contre la frontière vide. En expérimentant pour construire un tel algorithme, nous pouvons observer le résultat suivant :

Lemme X.9

Une segment horizontal ou vertical qui contient deux points de couleurs différentes contient un point de la frontière.

Remarque : Ceci n’est plus vrai pour un segment diagonal ou antidiagonal.

Ce lemme nous donne l’idée de la stratégie suivante : interroger les extré- mités des lignes ou des colonnes puis lorsque nous trouvons deux extrémités de couleurs différentes, chercher sur ce segment le point qui est de couleur noire. Cela pose donc le problème suivant : étant donné un segment dont les extrémités sont de couleurs différentes, comment trouver un point de la frontière ?. Une méthode triviale serait d’interroger chaque point, en al- lant de gauche à droite, mais cette méthode n’est pas efficace à cause de l’observation suivante :

Lemme X.10

Si 2 points situés sur une même ligne horizontale, verticale, diagonale ou anti-diagonale sont de même couleur alors les points du segment admet- tant ces points comme extrémités sont de la même couleur.

« Faire des sauts » est donc plus efficace. Nous proposons les deux algo- rithmes suivants, basés sur cette stratégie, pour trouver le point frontière : l’algorithme de pas ketl’algorithme de subdivision en k segment.

No documento de recherche pour la classe (páginas 155-160)