\( \newcommand{\llbracket}{[\![} \newcommand{\rrbracket}{]\!]} \renewcommand{\epsilon}{\varepsilon} \newcommand{\ZZ}{\mathbb{Z}} \newcommand{\NN}{\mathbb{N}} \newcommand{\QQ}{\mathbb{Q}} \newcommand{\RR}{\mathbb{R}} \newcommand{\ACA}{\mathcal{A}} \newcommand{\ACC}{\mathcal{C}} \newcommand{\ACV}{\mathcal{V}} \newcommand{\ACQ}{\mathcal{Q}} \)

Accélérations en 2D

Cours M2 - MIT
Victor Poupet
\(\newcommand{\TR}{\operatorname{TR}}\)

Accélération constante

Accélération constante

Proposition

Tout langage reconnu en temps \(\TR + k\) (\(k\geq 0\)) par un AC fonctionnant sur le voisinage de Moore est reconnu en temps réel par un AC sur le même voisinage.

Proposition

Tout langage reconnu en temps \(\TR + k\) (\(k\geq 0\)) par un AC fonctionnant sur le voisinage de von Neumann est reconnu en temps réel par un AC sur le même voisinage.

Voisinage de Moore

Sur le voisinage de Moore, l'accélération constante est similaire au cas 1D

Voisinage de von Neumann

La même méthode ne fonctionne pas directement (il manque des informations pour propager la correction)


Accélération linéaire

Voisinage de Moore

Théorème

Pour tout \(\epsilon > 0\), tout langage reconnu en temps \((\TR+f)\) par un AC sur le voisinage de Moore peut être reconnu en temps \((\TR + \lceil \epsilon f\rceil)\) sur ce même voisinage


Idée de la preuve:

Compression

Les cellules stockent \(k^2\) états de l'automate initial

Simulation

Preuve par récurrence

Synchronisation


Problème : Les cellules ne finissent pas la compression en même temps

Solution : Simuler l'automate initial dès que les données sont disponibles


Voisinage quelconque

Théorème

Pour tout voisinage complet \(V\) et tout \(\epsilon>0\), tout langage reconnu en temps \((\TR + f)\) par un AC sur \(V\) peut être reconnu en temps \((1+\epsilon)\TR + \epsilon f\) sur le même voisinage


Idée de la preuve:

Simulation

Problème : Après compression, une cellule voit \(kV+c\) pour les états qu'elle contient, pas \(V^k+c\)


Solution : Stocker plus d'information !

  • \(m = (k-1)|V| - k + 1\)
  • \(V^{m+k} \subseteq V^m + kV\)
  • chaque cellule stocke \(V^m +c\) pour les états qu'elle contient

À chaque étape, les cellules calculent \(k\) étapes de l'AC initial pour tous les états qu'elles contiennent

Enveloppe convexe

Def.

L'enveloppe convexe de \(V\) est le plus petit polygone convexe contenant \(V\)

Les sommets de l'enveloppe convexe sont des éléments de \(V\)

Prop.

Si \(V\) est complet, son enveloppe convexe contient une boule ouverte autour de l'origine

Prop.

\(\forall x\in\QQ^2\), si \(x\) est sur le bord de l'enveloppe convexe alors

\(x = \lambda u + (1-\lambda) v\)

avec \(u, v\in V\) et \(\lambda \in [0, 1]\cap \QQ\)

Compression

Problème : Le chemin optimal vers l'origine dépend du rapport \(\frac{m}{n}\)


Idée :

  • Si le voisinage est de type Moore, on peut compresser optimalement
  • Approximation des autres voisinages par des voisinages de type Moore
  • On peut compresser « presque » optimalement

Voisinages de type Moore

Définition : cf. illustration

Prop.

Sur un voisinage de type Moore, on peut compresser l'entrée par un facteur \((k+1)\) en temps

\(\frac{k}{k+1}\TR\)

Preuve : Comme pour le cas du voisinage de Moore

Proportion fixée

Pour des mots d'entrée de proportion fixée \(\rho\), le voisinage complet \(V\) peut se comporter comme un voisinage de type Moore \(V'\)

Proportion approchée


Pour tout mot en entrée, il y a un \(V'\in M_\epsilon\) qui peut le compresser d'un facteur \((k+1)\) en temps

\((1+\epsilon)\frac{k}{k+1}\TR_V\)

Bilan


Temps total : \((1+\epsilon)\TR + \epsilon f\)