Singularités plurielles

Avalanches
dans
les écosystèmes computationnels



Juan Luis Jimenez Laredo, Frédéric Guinand, Damien Olivier, Yoann Pigné et Charlie



Rochebrune, janvier 2015

Au menu ce soir

  1. Singularité quesako ?
  2. Utilisation de la singularité
  3. Puisqu'il faut une conclusion

Singularité quesako ?

Singularité ?



Changement brusque dans l’évolution, la structure, la forme d’un système physique, vivant, artificiel ou d’une trajectoire.

Singularité d'une fonction $f$.
C'est un point $p_0$ pour lequel le "comportement" de l'équation $f(x)$ n'est pas semblable à celui des points $p$ voisin de $p_0$.

Singularité
Source

Singularités mathématiques

Générique versus singulier

Fonction valeur absolue
Source
Générique
Étant donné une collection d’objets $x$ formant un espace $X$ (mesuré, topologique, ou algébrique...), on dit qu’une propriété $\cal{P}$ de ces objets est générique si elle est vraie « presque partout », c’est-à-dire pour « presque tout » objet $x$.
Singulier
Les $x$ qui ne vérifient pas $\cal{P}$ sont singuliers (eu égard à $\cal{P}$). « Singularité » a donc valeur d’ « exception », de « dégénérescence ». C’est par exemple le lieu où certaines fonctions ne sont pas « bien définies », où certaines quantités deviennent infinies, etc...

Singularités en informatique

Singularité technologique

Point hypothétique dans notre futur, à partir duquel nous atteindrons un niveau de croissance technologique d’un ordre supérieure.
Explosion de l’intelligence artificielle, des machines intelligentes conçoivent des machines plus intelligentes. I.J. Good (1960).

Avènement d’entités dépassant l’intelligence humaine. Ray Kurzweill (2005).
Transhumanisme
Extrait de A.I Intelligence Artificielle (CR : Warner Bros)

Singularités en informatique

Données pathologiques

Entrées provoquant un comportement atypique d'un algorithme, comme une violation de sa complexité en moyenne, ou même son exactitude.
  1. Tables de hachage : jeux de clés qui entrent en collision sur les valeurs de hachage.
  2. Quicksort normalement $O(n \log n)$ mais $O(n^2)$ dans certains cas.
  3. Min/MAX ou alpha/beta sur la profondeur.

Singularités en informatique

Ecosystème computationnel

Écosystème : Ensemble structuré comprenant un substrat et la biocénose qui y vit. Cet ensemble est caractérisé par des échanges de matière et d’énergie dus aux interactions entre les organismes vivants et le substrat.
Simulation distribuée : Ensemble structuré comprenant un environnement d’exécution en éventuelle évolution, et des composants logiciels qui s’y exécutent. Cet ensemble est caractérisé par des échanges d’informations dus aux interactions entre les composants du système.

Singularités en informatique

Recherche de généricité
d'auto-organisation pour la distribution

Singularités en informatique

Données pathologiques

ANTCO2

Utilisation de la singularité

Singularité naturelle

Métamorphose du fourmilion

Larve fourmilion
Larve de fourmilion
Larve fourmilion
Taille 10 mm, vie larvaire 2 ans environ

Singularité naturelle

Métamorphose du fourmilion

Larve fourmilion
Cocon d'un fourmilion, durée de la phase 3 semaines
Imago
Imago
Fourmilion adulte
Fourmilion adulte

Singularité naturelle

Fonctionnement du piège du fourmilion


Source - National Geographic

Singularité naturelle

Le piège du fourmilion

Larve fourmilion
Structure du piège
Larve fourmilion
Champ de piège
Larve fourmilion
Piège

Singularité naturelle

Il a tout compris, moi pas encore !

  • Physique des avalanches et des milieux granulaires ;
  • Entretien d'un état critique, angle critique $\frac{\Pi}{6}$ ;
  • Système ouvert ;
  • $\Rightarrow $ système critique auto-organisé .
Changement de phase
État critique
Criticalité auto-organisée
État critique auto-organisé

Modèle

Automate cellulaire

  • Les cellules représentent l'empilement des grains ;
  • Le tas est défini par une suite de nombres qui représentent la hauteur de chaque empilement ;
  • L’empilement $i$ dépend de la hauteur de ses voisins ;
  • Le modèle est unidimensionnel ;
  • Peu réaliste concernant la taille des avalanches .
Tas de sable Tas de sable
Tas de sable Tas de sable

Modèle

Automate cellulaire

Introduction d'aléatoire
  • Règle 1 mécanisme de chute. Si une cellule vide $c_{j−1}$ se trouve au dessous d'une cellule occupée $c_j$ , la pile des cellules occupées $c_j$ , $c_{j+1}$ , $c_{j+2}$ . . . se déplace vers le bas, respectivement en $c_{j−1}$ , $c_{j}$ , $c_{j+1}$...
  • Règle 2 : éboulement. Une pile est un empilement de cellules pleines de hauteur $h \geq 1$ dont le voisinage droit est vide Si $h = 1$ alors la cellule pleine se décale à droite, sinon on détermine de façon aléatoire le nombre $n$ de cellules pleines qui se décalent à droite. La règle 1 est prioritaire sur la règle 2.
  • $\Rightarrow$ Avalanches de taille variable.
Tas de sable Tas de sable Tas de sable
Tas de sable Tas de sable Tas de sable

Modèle

Modèle abélien du tas de sable - Bak–Tang–Wiesenfeld (1987)

  • Quadrillage de $n\times n$ cases ;
  • Dans chaque case, nous pouvons empiler au plus trois grains ;
  • S’il y a quatre grains dans une case donnée, un éboulement se produit : la case se vide de ses quatre grains qui sont envoyés dans les quatre cases voisines, un par case .

Propriétés

  • On atteint une configuration stable lorsque chaque case contient au maximum trois grains.
  • L'ordre des éboulements n'a pas d'importance.
  • Loi de puissance

Tas de sable

Utilisation de la singularité

Environnement de calcul $=$ tas de sable ?

Grille
Dans le contexte de l'équilibrage de charge, même comportement ?
Tas de sable

Environnement de calcul

Modèle

  • Automate cellulaire ;
  • Une cellule $\rightarrow$ une ressource de calcul (RC) ;
  • Hypothèse : chaque RC peut gérer $k$ tâches à la fois ;
  • Règle d'équilibrage : si $\mbox{charge}_{RC} > k$ alors transférer $m \leq k$ taches aux voisins.
    • Equilibrage de charge

Environnement de calcul

Modèle - Simulation

  1. Volcan
    • Une tâche initiale génère une ou d'autres tâches quand elle est terminée ;
    • Paramètres : durée d'exécution des tâches, nombre de tâches générées par intervalles ;
  2. Pluie
    • Des tâches arrivent périodiquement dans le système ;
    • La RC est choisie aléatoirement ;
    • Paramètres : taux d'arrivée, durée d'exécution des tâches.

Grains de sable $\Leftrightarrow $ Tâches

Environnement de calcul

Résultats

  • Système "sous-chargé" $\rightarrow$ presque pas d'avalanches ;
  • Si $N_{\mbox{tâches}}(t) \geq N_{\mbox{RC}} \times k$ alors
    le système est surchargé $\rightarrow$ avalanches en permanence ;
  • Quel est le comportement au milieu ?

Tas de sable

Sans échelle

avalanche
avalanche
avalanche
avalanche

Loi de puissance

Loi de puissance

Sensibilité aux paramètres

Robuste aux changements des paramètres ? Partiellement >>:)

  • Stratégie d'équilibrage (voisinage, aléatoire) $\rightarrow$ ok !
  • Voisinage (Von Neuman/Moore) $\rightarrow$ ok !
  • Topologie (grille, tore, anneau) $\rightarrow$ ok !
  • Application (volcan, pluie) $\rightarrow$ ok !
  • Paramètre de charge (temps d'éxécution, nombre de tâches, taux d'arrivée) $\rightarrow$ non !

Charge critique $\approx$ 80% du nombre maximal de tâches.

Charge

Puisqu'il faut conclure

Perspectives

Utilité

  • Contexte : centre de calcul haute performance, réseau de capteurs autonomes, ....
  • Utilisation : efficacité, autonomie et économie d'énergie ;
  • Hypothèses : les RC ont une gestion d'énergie et peuvent se mettre en veille.

Question
Comment calibrer le centre de calcul, le réseau de capteur de façon décentralisée et économe ?

Perspectives

Éléments de réponse

  • Chaque tâche est estampillée par le nombre de saut durant sa migration ;
  • Chaque RC rencontrée enregistre l'estampille et effectue une analyse de la distribution de ces dernières ;


L'analyse est approximée par une formule du type : $$ \begin{eqnarray*} y &=& \frac{a}{x^{\alpha}} \\ \end{eqnarray*} $$ dont on cherche à déterminer $\alpha$.

Perspectives

Éléments de réponse

$\frac{a}{x^{\alpha}}$ : $\alpha$ décroit $\rightarrow$ surcharge éventuelle.
Distributions-Comparaisons

Perspectives

Réponse à une surcharge éventuelle

Si la RC est en périphérie du système, elle réveille des voisins.
Reveil

Perspectives

Comment économiser des ressources

Une RC est en périphérie du système inactive depuis "longtemps" se met en veille.
dodo

Merci de votre attention

Bibliographie

[Bak-1996] P. Bak. Quand la nature s’organise ; avalanches, tremblements de terre et autres cataclysmes. Flamarion, 1999.
Trad. de "How Nature Works : The Science of Self-Organized Criticality". New York : Copernicus (1996).

[BTW-1987] P. Bak, C. Tang and K. Wiesenfeld. Self-organized criticality : an explanation of 1/ƒ noise. Physical Review Letters 59 (1987) 381-384.

[DUR-2003] J. Duran, Sables émouvants - La physique du sable au quotidien -. Belin - Pour la science, (2003).

[RAJ-2002] J. Rajchenbach. Development of grain avalanches. Phys. Rev. Lett., (2002), 89(7) :074301.

[HOF-2013]D. Hofstadter et E. Sander. L'analogie: cœur de la pensée. Odile Jacob, (2013)

[NAU-1982]D. Nau. An investigation of the causes of pathology in games. Artificial Intelligence, (1982), Volume 19. 257-278

[AND-2009]Y. André. Leçons de Mathématiques contemporaines à l IRCAM. (2009).

[LAR-2014]J.L. Laredo, P. Bouvry, F. Guinand, B. Dorronsoro, C. Fernandes. The sandpile scheduler The sandpile scheduler - How self-organized criticality may lead to dynamic load-balancing}. Cluster Computing, (2014), Volume 17(2), 191-204