GRAPHES FONCTIONNELSANR-GRAAL Serge Burckel avril 2007.

Slides:



Advertisements
Présentations similaires
Programmation linéaire et Recherche opérationnelle
Advertisements

L’INFORMATIQUE Mihalcea Cezar.
Langages de description séquentielle
Systèmes, algorithmes et applications: Efficacité du parallélisme. Gaétan Hains LIFO, Université d'Orléans Janvier 2001.
Calcul géométrique avec des données incertaines
Structures de données et complexité
Sensibilisation à l’Algorithmique
Introduction à l’Algorithmique
Sensibilisation à l’Algorithmique et structure de données
Les démarches de développement
Les démarches de développement
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
Chap. 1 INTRODUCTION Beaucoup de problèmes de la vie courante, tels la gestion de réseaux de communication ou l'ordonnancement de tâches, correspondent.
I. 3 Cryptages composés.
CALCUL PARALLELE PRODUIT : MATRICE – VECTEUR 10 pages Exposé par :
Méthodes d‘optimisation en finance
Algorithmique et Programmation
VI – Rang d’une matrice Mots clés : Rang.
ASI 3 Méthodes numériques pour l’ingénieur
Bibliothèque standard du C++
TRAITEMENT D’IMAGE SIF-1033.
Etude longitudinale d’essais multilocaux: apports du modèle mixte
Rappel... Opérations élémentaires sur les matrices:
Sylvie Alayrangues Jacques-Olivier Lachaud
Systèmes d’équations linéaires
Chapitre 3bis Applications linéaires et Matrices
Rappel... Solution itérative de systèmes linéaires (suite et fin).
Maîtrise des risques et sûreté de fonctionnement – Avignon – 6-10 Octobre 2008 Modélisation des dysfonctionnements dun système dans le cadre dactivités.
Alignement de séquences (suite)
Transformée de Fourier discrète et transformée de Fourier rapide
Réseaux de neurones.
Structures de données IFT-2000
Les dominos Peut-on aligner tous les dominos d’un jeu ?
Coloration gap sommet identifiante de graphes
Mémoires associatives
GPA-779 Perceptron multicouche
Programmation linéaire en nombres entiers : la méthode du simplexe
Optimisation linéaire
Recherche Opérationnelle
SUJETS SPÉCIAUX EN INFORMATIQUE I
Pr. M. Talibi Alaoui Département Mathématique et Informatique
Sémantique dénotationnelle
Calcul des groupes d'homologie d’objets discrets
Programmation dynamique
Messages Pas de dépannage mardi le 26 à 11h30. Achat de groupe de Matlab version étudiante?
GPA750 – Gestion de Projets
Transformations linéaires et sous-espaces associés
Programmation linéaire en nombres entiers : les méthodes de troncature
MAXIMISER les RESULTATS
Animateur : Med HAIJOUBI
ASI 3 Méthodes numériques pour l’ingénieur
Géométrie épipolaire (deux vues)
ASI 3 Méthodes numériques pour l’ingénieur
Programmer en langage c
La spécialité mathématique en TS
01/09/2009 CalculmatricielCalculmatriciel. I. Matrices.
Programmation linéaire en nombres entiers
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
Modèles Mathématiques et représentation discrètes pour la description des images couleur Luc Brun.
Les réseaux de neurones à réservoir en traitement d’images
2008/ Plan du cours 1.Introduction –Contenu du cours 2.Logique mathématique –Calcul propositionnel –Calcul des prédicats –Logique floue et aide à.
Problème de double digestion
Les réseaux de neurones à réservoir en traitement d’images
Optimisation pour la Conception de Systèmes Embarqués
Les démarches de développement
Algorithmes parallèles
L E C ORPS D ’ UN A LGORITHME / P ROGRAMME – L A PARTIE I NSTRUCTION Réalisé par : OUZEGGANE Redouane Département de Technologie Faculté de Technologie.
GdR MoMaS Novembre 2003 Conditions d’interface optimales algébriques pour la vibro-élasticité. François-Xavier Roux (ONERA) Laurent Sériès (ONERA) Yacine.
Matlab (Matrix Laboratory) Langage de programmation évolué. Traitement direct d’opérations matricielles, dont l’inversion et l’analyse d’opérateurs ou.
1 UE Intro. Optimisation L3 INFO UPSud II. Programmation linéaire en variables entières (ou mixtes)
Transcription de la présentation:

GRAPHES FONCTIONNELSANR-GRAAL Serge Burckel avril 2007

Graphes pour lInformatique Informatique pour les Graphes

Motivations : Réconcilier les maths et linfo…. Calcul Clos A:=A B B:=A B A:=A B dimension=2 Exemple de léchange E(A,B) = (B,A) Calcul Classique C:=A A:=B B:=C dimension=3 Maths : hautement parallèles Info : fortement séquentielle

SCopie de S N étapes Image E(S) N étapes

S Image E(S) RAM cache UC OBJECTIFS

Applications Processeurs In Situ Zero-Delay Flat-tech Compilateurs Pré-Comp Post-Comp Faisabilité DATA Space = Comp. Space Traitement dimages

Cas facile : linfini Axiome du choix => (Tarski 1926) lensemble S admet un « pairing » càd une injection de S² dans S. Toute application E sur S N se calcule en N+1 étapes dassignations. Exemple : calcul de E sur 5 x 1 := 2 x1. 3 x2. 5 x3. 7 x4. 11 x5 x 2 := E 2 (d 2 (x 1 ), d 3 (x 1 ), d 5 (x 1 ), d 7 (x 1 ), d 11 (x 1 )) x 3 := E 3 (d 2 (x 1 ), d 3 (x 1 ), d 5 (x 1 ), d 7 (x 1 ), d 11 (x 1 )) x 4 := E 4 (d 2 (x 1 ), d 3 (x 1 ), d 5 (x 1 ), d 7 (x 1 ), d 11 (x 1 )) x 5 := E 5 (d 2 (x 1 ), d 3 (x 1 ), d 5 (x 1 ), d 7 (x 1 ), d 11 (x 1 )) x 1 := E 1 (d 2 (x 1 ), d 3 (x 1 ), d 5 (x 1 ), d 7 (x 1 ), d 11 (x 1 )) où d p (x) = max{ k : p k | x }

Cas difficile : {0,1} Puisque : si on peut calculer in situ pour {0,1} N alors on peut aussi le faire pour F N. Codage/décodage binaire : x i [ i b 1 i b 2 …. i b k ]

Résultats par les graphes : 1. Toute application E sur la structure {0,1} N a un calcul clos. (SB) Graphes Eulériens de De Bruijn + un peu dArithmétique Le modèle standard de Calcul :

3. Toute application linéaire E sur une structure K N a un calcul clos en au plus 2N-1 opérations linéaires. (Marianne Morillon, SB) Par les matrices : 2. Toute application E sur la structure {0,1} N a un calcul clos en au plus N 2 opérations. (Marianne Morillon & SB) Corollaire 1 Décompositions de graphes par « Complémentation Locale Relative » +

Corollaire 3 : représentation calculatoire des matrices. Toute matrice M à coefficients dans un corps K est représentable par une nouvelle matrice associée M C. Ce codage permet de calculer directement les images, les images inverses…. Corollaire 2 : décomposition des matrices/graphes TOUTE matrice carrée sur {0,1} (pas nécessairement inversible) est obtenue à partir de lidentité par une séquence finie dopérations : Ligne i := Ligne i Ligne j

Exemple sur {0,1} : E(a,b,c,d)=(a+d,a+b+c, a+c+d,a+c) M= MC=MC= Calcul de E : a:=a+d b:=a+b+c+d c:=a+c d:=c+d ==>Calcul de E -1 : d:=c+d c:=a+c b:=a+b+c+d a:=a+d « remonter le temps »

Algorithme de « séquentialisation » simple dune matrice M. Le cas {0,1} et à réflexion près. Input : M Output : M C Pour i de 1 à N : --si M[i,i]=0 alors ----faire M[i,i]:=1(et éventuellement ----rectifier la structure initiale associée à M) --pour j de i+1 à N : ----si M[j,i]=1 alors : faire M[j,i]:= faire M[j]:=M[j] M[i] (lignes)

Contribution à la quête du GRAAL A réflexivité près + ordre total sur les sommets matrice dadjacence=graphe dirigé ==> calcul clos de matrice en N étapes ==> dim(M)=dim(M C ) ==> lalgorithme précédent entraîne que : Tout graphe G est «construit» par un graphe G C Graphes comme constructeurs de graphes G GCGC x1:=x1+x2 x2:=x1+x2 Programme 1 2

Relation d équivalence : G C == H C : « ils construisent les mêmes graphes (toujours à réflexions près). » Simplifications de constructeurs. Exemples : G=G C ==

Analogie avec décompositions modulaires et généralisations... GGCGC H HCHC Une autre conséquence : « les sommets peuvent se servir des opérations réalisées par les sommets précédents »

Un point important et agréable : par construction, les graphes G C sont toujours réflexifs…donc aucun soucis pour faire une itération des constructeurs : G <= G C <= G CC <= G CCC <=…. <= signifiant : appliquer le calcul puis mettre tous les arcs réflexifs. Mais alors...par finitude, on a ultimement : G => G CCC...C Pour un certain k, G construit lui même son k-ième constructeur itéré !!

G GCGC 1 2 Ici G => G C Mais ce k peut-être très grand…. Pour 4 sommets…jusquà 18 itérations.

Une autre conséquence : Noyaux itératifs THEOREME : Soit G=(V,E) un graphe dirigé fini avec V={ x 1, x 2,…., x N } ordonné. Il existe un stable K 0 de G tel que l algorithme suivant colorie tous les sommets de G : 0. Colorer les sommets de K 0 1. Pour i de 1 à N si x i est coloré colorer les x k tels que (x i, x k ) E

Remarque : La preuve de ce Thm initialement basée sur les G C a été simplifiée depuis et encore plus par une bonne remarque de Stephan Thomassé (le 4 avril 2007).

4. Toute application bijective E sur une structure F N a un calcul clos en au plus 2N-1 opérations. (SB) 5. Toute application E sur une structure F N a un calcul clos en au plus 5N-4 opérations. (Emeric Gioan & SB) 6. Toute application E sur une structure F N a un calcul clos en au plus 4N opérations. (Emeric Gioan & SB) résultats récents : inductions/coloriages

Remarque : le calcul clos dune bijection sur {0,1} N est toujours de la forme : x 1 := x 1 + f 1 ( x 2 x 3 …. x N-1 x N ) x 2 := x 2 + f 2 (x 1 x 3 …. x N-1 x N ) x 3 := x 3 + f 3 (x 1 x 2 …. x N-1 x N ) …... x N-1 := x N-1 + f N-1 (x 1 x 2 x 3 …. x N ) x N := x N + f N (x 1 x 2 x 3 …. x N-1 ) x N-1 := x N-1 + g N-1 (x 1 x 2 x 3 …. x N ) …... x 3 := x 3 + g 3 (x 1 x 2 …. x N-1 x N ) x 2 := x 2 + g 2 (x 1 x 3 …. x N-1 x N ) x 1 := x 1 + g 1 ( x 2 x 3 …. x N-1 x N ) Conséquence :comme pour les linéaires, le « sens inverse » calcule la bijection inverse E -1. Pour le LOGarithme Discret..??

Graphes fonctionnels Les 14 modèles de calculs sur 3 éléments.

Jeux en 3 étapes. F(1)=3, F(2)=1, F(3)=1, F(4)= STEP : 0123 Toute application sur {1,2,3,4} se réalise en 3 étapes de ce jeu. Rem : aussi en 2 étapes. Mais pas (2,1,1,1)

Définitions G=(V,E) un graphe dirigé. A(V) : les applications de V dans V B(V) : les bijections de V dans V I(G) A(V) : les applications F ayant comme support G : Pour tout x de V, (x, F(x)) est un arc de E. Soient : G 0 ={id V } et G k+1 ={i f : i dans I(G) et f dans G k } Définition G est k-fonctionnelsi A(V) G k G est k-bijectif si B(V) G k

Autre exemple : « la boule de sapin » Il est n²-fonctionnel. Conjecture/Tests pour n=3…7 : il est (n²-3n+3)-fonctionnel.

Résultats partiels : k-fonctionnel (k+1)-fonctionnel k-bijectif (k+1)-bijectif k-fonctionnel k-bijectif (trivial) k-bijectif nk-fonctionnel (…..) La conjecture entraîne que toute application sur F N se calcule par une séquence de 2N assignations. CONJECTURE K-bijectif (K+1)-fonctionnel ???

3-bijectif et 4-fonctionnel K-bijectif K-fonctionnel Point remarquable : TOUT graphe qui permet de calculer toutes ses bijections en exactement k étapes permet toujours de calculer toutes ses applications !! Ceci nest plus vrai sil ne peut que calculer ses bijections en au plus k étapes :

Développements Ordres dassignations & calculs rapides. EX : E(a,b,c)=(a.b+a.c, b+c, a+b+c) c := a b := b+c a := a.b c := c+b Autres modèles de calculs par autres graphes. ( Strassen)

BUT : Etant donnée une bijection E sur {0,1} N exprimée sous forme de N expressions algébriques pour ses projections, trouver une expression algébrique dun « coloriage » C(X): {0,1} N --> {0,1} des lignes de la table de E tel que pour tous X,X C(X)=1+C(X) si X=[0,x] et X=[1,x] ou E(X)=[0,y] et E(X)=[1,y] METHODE ACTUELLE….trop gourmande et sans doutes inutile : Exemple E(a,b,c)=(b+c,b,a) : au choix au choix ==> C(a,b,c)=a+c QUESTION TECHNIQUE OUVERTE MERCI…/