• Aucun résultat trouvé

Algorithme Compacted-Explore-and-Map

3.4 Exploration en temps polynomial

3.4.5 Algorithme Compacted-Explore-and-Map

Nous supposons maintenant qu’aucune borne sup´erieure sur le nombren de sommets du graphe orient´e explor´e n’est connue. Le robot devine diff´erentes valeurs et ex´ecute l’al-gorithme CEM-Borne-Sup pour chacune d’elles. L’algorithme Compacted-Explore-and-Map consiste en des appels successifs `a CEM-Borne-Sup avec des valeurs croissantes de ˆ

n. Plus pr´ecis´ement, l’algorithme utilise la suite 22k

. Apr`es log logn essais, l’algorithme ex´ecute CEM-Borne-Sup avec une valeur ˆn plus grande ou ´egale `a n et donc r´eussit `a explorer et `a cartographier le graphe orient´e.

Preuve du th´eor`eme 3.3. L’algorithme CEM-Borne-Sup est ex´ecut´e O(log logn) fois. La valeur de ˆn pour chaque ex´ecution est born´ee par n sauf pour la derni`ere o`u ˆn est born´e par n2. Par cons´equent, l’algorithme Compacted-Explore-and-Map s’ex´ecute en temps O(n10d4) et utilise O(n2d(logn+ logd)) bits.

Une ex´ecution se termine lorsque le caillou est perdu. En effet, sinest sous-estim´e, les ˆ

n r´ep´etions pr´eliminaires ne sont pas forc´ement suffisantes pour assurer au robot d’ˆetre dans un chemin ferm´e. Par cons´equent, le robot n’utilise pas plus deO(log logn) cailloux. Rigoureusement, un autre ´ev´enement peut venir perturber les ex´ecutions de l’algorithme

CEM-Borne-Sup. Il peut arriver que le robot trouve un caillou perdu dans une ex´ecution ant´erieure au lieu du caillou d´epos´e en dernier. Comme il a ´et´e not´e dans [BFR+02], ceci peut ˆetre ´evit´e en ramassant tous les cailloux pr´esents sur un chemin ferm´e avant de travailler dessus avec le caillou. De plus, pour assurer que l’algorithme ne terminera pas avant d’avoir compl`etement explor´e le graphe, l’algorithme demande au robot de parcourir le graphe pour ramasser tous les cailloux d´epos´es dans les ex´ecutions pr´ec´edentes avant de v´erifier pour la derni`ere fois que la carte calcul´ee est bien une carte du graphe orient´e

3.5. PERSPECTIVES 89

3.5 Perspectives

Notre algorithme Teste-toutes-les-cartes n´ecessite de stocker la carte `a tester. Cependant l’exploration avec arrˆet est une tˆache a priori plus facile que la cartographie. On pourrait donc esp´erer trouver un algorithme utilisant moins de m´emoire que la quantit´e n´ecessaire pour stocker une carte. Une autre direction int´eressante d’investigation est la recherche d’un algorithme compact d’exploration sous la contrainte d’une ex´ecution en temps polynomial. Dans ce chapitre, nous avons d´ecrit un algorithme d’exploration en temps polynomial utilisant un robot ayant une m´emoire de tailleO(n2d(logn+logd)) bits. Cette valeur est loin de la borne inf´erieure Ω(nlogd). L’algorithme exponentiel n´ecessite quant `a lui une m´emoire de O(nd(logn + logd)) bits. Il serait int´eressant de trouver le compromis exact entre le temps et l’espace m´emoire pour l’exploration des graphes orient´es.

Chapitre 4

Impact de la taille m´emoire sur les

capacit´es d’exploration

Dans ce chapitre, nous ´etudions plus en d´etail la relation entre le nombre d’´etats d’un automate et le nombre de graphes que celui-ci peut explorer. En particulier, existe-t-il une hi´erarchie stricte des automates, c’est-`a-dire est-ce que toute augmentation du nombre d’´etats entraˆıne une augmentation de la capacit´e d’exploration ?

4.1 Introduction

Budach a montr´e qu’aucun automate fini ne peut explorer tous les graphes [Bud78]. Rollik a mˆeme montr´e l’existence d’un pi`ege commun `a tous les automates d’une taille donn´ee [Rol80] en montrant l’existence d’un pi`ege pour toute ´equipe finie d’automates finis. Dans le chapitre 2, nous avons construit des pi`eges plus petits pour ce type d’´equipes. Il d´ecoule de ces r´esultats l’existence d’un pi`ege planaire 3-r´egulier de tailleKO(K)commun `a tous les automates `a K ´etats. Comme tout graphe est explorable par un automate ayant un nombre d’´etats polynomial en son nombre de sommets [Rei05], on en d´eduit qu’en augmentant exponentiellement le nombre d’´etats que peut avoir un automate, on augmente strictement le nombre de graphes que celui-ci peut explorer. Nous conjecturons que c’est le cas pour toute augmentation du nombre d’´etats, si petite soit elle.

Nous avons vu dans le chapitre 2 que les graphes r´eguliers sont difficiles `a explorer. En effet, l’automate ne peut pas distinguer les diff´erents sommets en utilisant leur degr´e. Dans ce chapitre, nous nous concentrons sur les graphes r´eguliers car ceux-ci semblent capturer les cas difficiles d’exploration.

Nous utilisons ici le mod`ele de l’automate de Mealy qui, comme nous l’avons not´e dans l’introduction de cette th`ese, capture mieux la quantit´e de m´emoire n´ecessaire `a l’exploration lorsque celle-ci est faible. Par contre, contrairement `a la d´efinition 8, nous consid´erons dans ce chapitre que l’automate d´ebute en arrivant sur un certain sommet de d´epart depuis un certain port de d´epart. Autrement dit, l’automate ne d´ecide pas du num´ero de port d’entr´ee de d´epart. (Dans la d´efinition 8, le port d’entr´ee initial est consid´er´e ˆetre ⊥.)

92 CHAPITRE 4. TAILLE M ´EMOIRE ET CAPACIT ´E D’EXPLORATION

Puisque nous nous int´eressons `a l’exploration des graphes ind´ependamment de leur orientation locale et de la position de d´epart de l’automate, nous introduisons la notion suivante :

D´efinition 27 Soit K un entier strictement positif. La classe des graphesK-explorables

est l’ensemble GK des graphes r´eguliers tel que pour tout G ∈ GK, il existe un automate

A d’au plus K ´etats visitant tous les sommets de G pour toute orientation locale de G, tout sommet de d´epart u0 et tout num´ero de port d’entr´ee initial i0.

Clairement, la suite d’ensembles GK est croissante, c’est-`a-dire GK ⊆ GK+1 pour tout

K >0. Nous pouvons maintenant formuler pr´ecis´ement notre conjecture :

Conjecture. Pour tout K >0, GK 6=GK+1.

Les r´esultats de ce chapitre ´etayent partiellement cette conjecture. Nous prouvons qu’une augmentation polynomiale du nombre d’´etats entraˆıne une augmentation de la capacit´e d’exploration (Section 4.2). Plus pr´ecis´ement, nous montrons qu’il existe une fonction polynomiale f : IN → IN, telle que GK est strictement inclus dans Gf(K), pour tout K > 0. Notons qu’une telle augmentation du nombre d’´etats ´equivaut `a seulement multiplier par une constante le nombre de bits de m´emoire. Par ailleurs, nous montrons que la conjecture est vraie pour les petites valeurs de K (Section 4.3). Plus pr´ecis´ement, nous montrons que GK est strictement inclus dans GK+1, pour K = 1,2. De plus, nous caract´erisons exactement les classes G1 et G2. La classe G1 des graphes r´eguliers pouvant ˆetre explor´es par un automate sans m´emoire (c’est-`a-dire `a un ´etat) est constitu´ee des cycles et des graphes complets `a 1 et 2 sommets. La classeG2des graphes r´eguliers pouvant ˆetre explor´es par un automate `a deux ´etats est constitu´ee de tous les cycles et de toutes les cliques.