Tutoriel PretopoLib. Vincent Levorato. Laboratoire d Informatique et des Systèmes Complexes - EPHE. vincent.levorato@ephe.sorbonne.
|
|
- Pierre-Yves Gauvin
- il y a 8 ans
- Total affichages :
Transcription
1 1 / 33 Tutoriel PretopoLib Vincent Levorato Laboratoire d Informatique et des Systèmes Complexes - EPHE vincent.levorato@ephe.sorbonne.fr
2 2 / 33 Plan de l exposé 1. Présentation de la structure globale 2. Etudes des différentes classes PretopoEdges PretopoSpace 3. Visualisation 4. Réalisation de simulations
3 3 / 33 PretopoLib Le langage utilisé est JAVA. Portable Possède un grand nombre d applications «tierce partie». La représentation des ensembles en JAVA se fait grâce au paquetage java.util.hashmap : on utilise des tables de hachage pour stocker les données la complexité amortie en opérations est de l ordre de Θ(1) (avec un «bon» facteur de charge) Soufian Ben Amor, Vincent Levorato, and Ivan Lavallée. Generalized percolation processes using pretopology theory. In Proceedings IEEE of RIVF 07, pages , Hanoï, Vietnam, IEEE Society. Vincent Levorato and Marc Bui. Data structures and algorithms for pretopology : the java based software library pretopolib. In Proceedings of the 8th International Conference on Innovative Internet Community Systems, pages , Schoelcher, Martinique, IEEE. Vincent Levorato. PretopoLib. Dépôt à l Agence pour la Protection des Programmes, IDDN.FR R.P , Paris, 2008.
4 4 / 33 Table de hachage La position d un objet x est calculée par la fonction h(x) dit de hachage. Par défaut, les éléments de la table sont non-ordonnés. Complexité amortie des opérations en Θ(1). Une fonction de hachage est non-injective d où des risques de collisions que l on traite par : le hachage ouvert le hachage par chaînage.
5 5 / 33 Rappels Interface mère : Collection parcourue un objet Iterator de ces éléments.
6 6 / 33 Rappels (2) L interface Map définit la notion de table de correspondance : Clé valeur Une Map est un ensemble de couples (clé, valeur).
7 7 / 33 Structure de PretopoLib (HashSet) Set HashMap PretopoEdges E Relations sur E (HashMap) Ou / Et Table de relations PretopoSpace Adhérence (redéfinissable)
8 8 / 33 Structure de données pour les adhérences statiques La table de correspondance des adhérences de E est transformée en table de hachage. Avantage : complexité amortie en temps en O(1). Inconvénient : complexité en espace dans le pire cas en O(2 n ). P(x) a x x, z y y z z x, y x, y x, z x, z y, z E E E Clé Valeur x x, z y, z x, y, z
9 Structure de données pour les adhérences dynamiques On construit les relations entre éléments dans une table de hachage comme une liste d adjacence. Avantage : complexité en espace en O(nm). Inconvénient : complexité en temps dans le pire cas en O(n 2 ). a b d val. val. a b c e d b val. val. val. c a 9 / 33 d c e e val. c val. d val.
10 10 / 33 Set Ensemble d éléments (java.util.set) Type : HashSet Implémente des opérations ensemblistes standards par la librairie com.google.common.collect.sets Contains (Set) Equals (Set) Add (Set) ContainsAll (Set) Intersection, Union, Difference (google Collections)
11 11 / 33 PretopoEdges Composé d une table de relations. Type : HashMap Une relation est composée : D un label (chaîne) D une table de liens (HashMap) et/ou D une table de correspondance (HashMap) Deux fonctions principales : boolean NeighbFunction(Elmt elt, PretopoNodes A) et/ou void putrelation(pretoponodes A, PretopoNodes B) PretopoNodes gettablerelation(pretoponodes set)
12 12 / 33 PretopoSpace Composé de : Set (E) PretopoEdges (Relations) Définit l adhérence. public PretopoNodes pseudoclosure(pretoponodes set, String rel_label, Object param) Regroupe la plupart des algorithmes en prétopologie.
13 13 / 33 Visualisation Utilisation de la librairie Prefuse (anciennement) et JUNG plus récemment. Prefuse et JUNG sont des librairies permettant de dessiner des graphes, des groupes, etc. La partie visualisation est indépendante de la partie calcul. PretopoLib Prefuse
14 14 / 33 Correspondance entre l écriture mathématique et le code Soit A un ensemble. A=new HashSet() ; La classe Set Soit x B, B un ensemble (singleton). Set B=singleton(x) ; Soit x, y C, C un ensemble. Set C=new HashSet() ; C.add(x) ; C.add(y) ; Soit D un ensemble tel que D = B C Set D=new HashSet() ; Set.intersection(B,C).copyInto(D) ;
15 15 / 33 Création de relation binaire La classe Relation Table des liens : rel_list=new HashMap<X,HashMap<X,Object»() ; Soit R une relation binaire. Relation R=new Relation("ma relation binaire") ; Il existe un arc entre x et y. R.addLink(x,y) ; Il existe une arête entre x et y. R.addSymLink(x,y) ;
16 16 / 33 Fonction de voisinage (relations binaire) R(x) A public boolean NeighbFunction (X elt, PretopoNodes A) boolean b= false ; HashMap<X, Object > l =(HashMap<X, Object >) r e l _ l i s t. get ( e l t ) ; i f ( l!= null ) I t e r a t o r <Elmt > i t r = l. keyset ( ). i t e r a t o r ( ) ; while ( i t r. hasnext ( ) &&! b ) Elmt e l t t = i t r. next ( ) ; i f (A. contains ( e l t t ) ) b=true ; return b ;
17 17 / 33 Création de relation valuée La classe RelationV Soit R une relation valuée. RelationV R=new RelationV("ma relation valuée") ; Il existe un arc entre x et y associée à la valeur v R. R.addLink(x,y,v) ; Il existe une arête entre x et y associée à la valeur v R. R.addSymLink(x,y,v) ;
18 Fonction de voisinage (relations valuées) v(x, y) s y A public boolean NeighbFunction (X elt, PretopoNodes A, double threshold ) boolean b= false ; double t o t a l =0; I t e r a t o r <X> i t r =A. getnodeset ( ). i t e r a t o r ( ) ; while ( i t r. hasnext ( ) && b!= true ) X A_elmt= i t r. next ( ) ; HashMap<X, Object > l =(HashMap<X, Object >) r e l _ l i s t. get ( e l t ) ; i f ( l!= null ) I t e r a t o r i t r _ r = l. entryset ( ). i t e r a t o r ( ) ; while ( i t r _ r. hasnext ( ) ) Entry <X, Double> e n t r y = ( Entry ) i t r _ r. next ( ) ; i f ( e n t r y. getkey ( ). equals ( A_elmt ) ) t o t a l += e n t r y. getvalue ( ) ; 18 / 33 i f ( t o t a l >= t h r e s h o l d ) b=true ; return b ;
19 19 / 33 Espace métrique La classe RelationB Soit R une "relation métrique". RelationB R=new RelationB("ma métrique") ; La notion de proximité entre les éléments se fait par leurs coordonnées. set_coord(x elt, ArrayList<Double> l) ; set_coord(e elt, double x, double y) ;
20 20 / 33 Fonction de voisinage (espace métrique) B(x, r) A public boolean NeighbFunction (X elt, PretopoNodes A, Ball b a l l ) boolean b= false ; I t e r a t o r <X> i t r =A. getnodeset ( ). i t e r a t o r ( ) ; while ( i t r. hasnext ( ) && b!= true ) X A_elmt= i t r. next ( ) ; i f ( distance ( e l t, A_elmt )<= b a l l. getradius ( ) ) b=true ; return b ;
21 21 / 33 Autre méthode de voisinage : la table de correspondance A un ensemble correspond son adhérence. TableRelation=new HashMap<Set,Set>() ; void putrelation(set A, Set B) ; PretopoNodes gettablerelation(set set) ; void cleartablerelation() ; Utilisation ou non de la table de correspondance : void setusetr(boolean b) ; boolean getusetr()
22 22 / 33 Ensemble des relations d un espace La classe PretopoEdges On regroupe toutes les relations de l espace prétopologique avec leurs fonctions de voisinage dans un seul objet. PretopoEdges relations=new PretopoEdges() ; relations.addrelation(r1) ; relations.addrelation(r2) ; relations.addrelation(r3) ;
23 23 / 33 Création de l espace prétopologique La classe PretopoSpace Un espace est composé d un ensemble d éléments (Set) et d un ensemble de relations (PretopoEdges). PretopoSpace espace=new PretopoSpace(E,relations) ;
24 24 / 33 Définition de l adhérence La classe PretopoSpace L adhérence par défaut est construite selon les bases de la théorie de la prétopologie pour chaque type d espace : (binaire) A P(E), a(a) = x E, R(x) A (valué) A P(E), a(a) = x E A, y A v(x, y) s A (métrique) A P(E), a(a) = x E, B(x, r) A public PretopoNodes pseudoclosure(set set, String rel_label, Object param) (binaire) param null (valué) param réel (double) (métrique) param boule (Ball)
25 Définition de l adhérence avec une relation binaire A P(E), a(a) = x E, R(x) A public PretopoNodes pseudoclosure ( Set set, String rel_ label, Object param ) Set pseudocset ; pseudocset=new HashSet ( set ) ; Set E = new HashSet ( ) ; Sets. d i f f e r e n c e ( Nodes, set ). copyinto (E ) ; i f ( param== null ) / / binary r e l a t i o n s space Relation r = Relations. getrelation ( r e l _ l a b e l ) ;... I t e r a t o r i t r =E. getnodeset ( ). i t e r a t o r ( ) ; while ( i t r. hasnext ( ) ) Object e l t = i t r. next ( ) ; i f ( r. NeighbFunction ( e l t, set ) ) pseudocset. add ( e l t ) ;... return pseudocset ; 25 / 33
26 Définition de l adhérence avec une relation valuée A P(E), a(a) = x E A, y A v(x, y) s A public PretopoNodes pseudoclosure ( Set set, String rel_ label, Object param ) Set pseudocset ; pseudocset=new HashSet ( set ) ; Set E = new HashSet ( ) ; Sets. d i f f e r e n c e ( Nodes, set ). copyinto (E ) ; 26 / 33 / / valued r e l a t i o n s space i f ( param. getclass ( ). equals ( Double. class ) param. getclass ( ). equals ( I n t e g e r. class ) ) RelationV r =( RelationV ) Relations. getrelation ( rel_ label ) ;... I t e r a t o r i t r = E. getnodeset ( ). i t e r a t o r ( ) ; while ( i t r. hasnext ( ) ) Object e l t = i t r. next ( ) ; i f ( r. NeighbFunction ( e l t, set, ( Double ) param ) ) pseudocset. add ( e l t ) ;...
27 27 / 33 Définition de l adhérence dans un espace métrique A P(E), a(a) = x E, B(x, r) A public PretopoNodes pseudoclosure ( PretopoNodes set, String rel_ label, Object param ) Set pseudocset ; pseudocset=new HashSet ( set ) ; Set E = new HashSet ( ) ; Sets. d i f f e r e n c e ( Nodes, set ). copyinto (E ) ; i f ( param. getclass ( ). equals ( B a l l. class ) ) / / metric space I t e r a t o r i t r =E. getnodeset ( ). i t e r a t o r ( ) ;... while ( i t r. hasnext ( ) ) Object e l t = i t r. next ( ) ; i f ( r e l. NeighbFunction ( e l t, set, ( B a l l ) param ) ) pseudocset. add ( e l t ) ;... return pseudocset ;
28 28 / 33 Méthodes de PretopoSpace Méthodes prétopologiques de base : Adhérence pseudoclosure Intérieur interior Fermeture closure Ouverture opening Famille des fermés élémentaires getallelementaryclosedsubsets Famille des fermés minimaux getallminimalclosedsubsets
29 29 / 33 Méthodes de PretopoSpace Classification : MCPR MCPR MCP MCP Classes d équivalences EquivalenceClasses Encadrement : Partition moins fine CoarsestPartition Partition plus fine FinestPartition Autres méthodes : Bord b... entre autres. Séparation entre ensembles separated Composantes fortement connexes getallstronglyconnectedcomponents Pseudo-distance (Hausdorff) pseudodistance ɛ-centres ecenters
30 <space> <nodes> / / nodes l i s t <item > <label >name of the element </ label > <x>optionnal x coordinate </ x> <y>optionnal y coordinate </ y> <z>optionnal z coordinate </ z> </ item >... </nodes> < links > <binary > / / b i n a r y r e l a t i o n <label >name of the relation </ label > < relation > <item1 >source element </ item1 > <item2 > t a r g e t element </ item2 > </ relation > </ binary > <valued > / / valued r e l a t i o n <label >name of the relation </ label > < relation > <item1 >source element </ item1 > <item2 > t a r g e t element </ item2 > <value >value of the relation </ value > </ relation > </ valued > </ l i n k s > </ space> 30 / 33 Création d un espace à partir d un fichier XML PretopoFile pf=new PretopoFile() ; PretopoSpace espace=pf.loadxml(nom du fichier) ;
31 31 / 33 Visualisation d un espace Classe PretopoVisualization Extension de la classe prefuse.display elle-même extenstion de javax.swing.jcomponent. PretopoVisualization pv = new PretopoVisualization(E,liste des relations,«paramètre de visualisation») ; vue radiale (PretopoVisual.PretopoVisualization.NORMAL) vue sous forme de grille (PretopoVisual.PretopoVisualization.GRID) vue aléatoire (PretopoVisual.PretopoVisualization.RANDOM) vue fixe utilisant les coordonnées (PretopoVisual.PretopoVisualization.FIXED)
32 32 / 33 Méthodes : Visualisation d un espace Classe PretopoVisualization (Méthodes) Coloration automatique d un groupe : setgroup(pretoponodes group_nodes,int igrp) ; Coloration manuel d un groupe : setgroup(pretoponodes group_nodes,color color) Effacement des groupes : resetgroup() Affichage ou non des liens : showlinks() hidelinks() Changer l apparence du rendu : rearrange_display(int type) Coloration des noeuds : setnodecolor(pretoponodes A,Color color) ; Récupérer le label du noeud sur lequel on clique : getlastitemclicked() ;
33 33 / 33 Mise en pratique Ecrire une méthode adhérence basée sur cette notation : A P(E), a(a) = x E, i 1,..., n R i (x) A Ecrire une simulation de l article suivant : Christine Largeron and Stéphane Bonnevay. Une méthode de structuration par recherche de fermés minimaux : application à la modélisation de flux de migrations inter-villes Papier présenté aux 5ème rencontres de la Société Française de Classification, Lyon, France, 1997.
Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Plus en détailProgrammation Orientée Objet
Programmation Orientée Objet Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 21 octobre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet 21 octobre 2014
Plus en détailRAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION)
CLASSE RACINE Object ancêtre de toutes les classes RAPPELS SUR LES METHODES HERITEES DE LA CLASSE RACINE Object ET LEUR SPECIALISATION (i.e. REDEFINITION) définit donc des méthodes héritées par toutes
Plus en détail4 Exemples de problèmes MapReduce incrémentaux
4 Exemples de problèmes MapReduce incrémentaux 1 / 32 Calcul des plus courtes distances à un noeud d un graphe Calcul des plus courts chemins entre toutes les paires de noeuds d un graphe Algorithme PageRank
Plus en détailLMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour jabbour@cril.univ-artois.fr www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Plus en détailTp 1 correction. Structures de données (IF2)
Tp 1 correction Structures de données (IF2) Remarque générale : compilez et exécutez le code au-fur-et-à mesure de son écriture. Il est plus facile de corriger une petite portion de code délimitée que
Plus en détailPackage Java.util Classe générique
Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object
Plus en détailChapitre VI- La validation de la composition.
Chapitre VI- La validation de la composition. Objectifs du chapitre : Expliquer les conséquences de l utilisation de règles de typage souples dans SEP. Présenter le mécanisme de validation des connexions
Plus en détailIntroduction. Les méthodes. Les méthodes. Identité et égalité. Identité et égalité. La copie d'objets. Identité et égalité.
Introduction La classe object Tous les objets Java héritent de la classe java.lang.object. Elle garantit que tout objet Java contient quelques méthodes fondamentales duplication comparaison Chaque classe
Plus en détailCertificat Big Data - Master MAthématiques
1 / 1 Certificat Big Data - Master MAthématiques Master 2 Auteur : Sylvain Lamprier UPMC Fouille de données et Medias Sociaux 2 / 1 Rich and big data: Millions d utilisateurs Millions de contenus Multimedia
Plus en détailIngénierie Dirigée par les Modèles. Editeurs de modèles. (Eclipse Modeling Tools) Jean-Philippe Babau
labsticc.univ-brest.fr/pages_perso/babau/ Ingénierie Dirigée par les Modèles Editeurs de modèles (Eclipse Modeling Tools) Jean-Philippe Babau Département Informatique, UFR Sciences, Laboratoire Lab-STICC
Plus en détailExceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Plus en détailCréation d objet imbriqué sous PowerShell.
Création d objet imbriqué sous PowerShell. Par Laurent Dardenne, le 13/01/2014. Niveau Ce tutoriel aborde la création d objet composé, c est-à-dire que certains de ses membres seront eux-mêmes des PSObjects.
Plus en détailTD3: tableaux avancées, première classe et chaînes
TD3: tableaux avancées, première classe et chaînes de caractères 1 Lestableaux 1.1 Élémentsthéoriques Déclaration des tableaux Pour la déclaration des tableaux, deux notations sont possibles. La première
Plus en détailProgrammation en Java IUT GEII (MC-II1) 1
Programmation en Java IUT GEII (MC-II1) 1 Christophe BLANC - Paul CHECCHIN IUT Montluçon Université Blaise Pascal Novembre 2009 Christophe BLANC - Paul CHECCHIN Programmation en Java IUT GEII (MC-II1)
Plus en détailChapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
Plus en détailCorrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Plus en détailDéveloppement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184. Frédéric BERTIN fbertin@neotilus.com
Développement mobile MIDP 2.0 Mobile 3D Graphics API (M3G) JSR 184 Frédéric BERTIN fbertin@neotilus.com Présentaion : Mobile 3D Graphics API JSR 184 M3G :présentation Package optionnel de l api J2ME. Prend
Plus en détailBig Data et Graphes : Quelques pistes de recherche
Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université
Plus en détailProgrammation Orientée Objet Java
Programmation Orientée Objet Java Bertrand Estellon Département Informatique et Interactions Aix-Marseille Université 12 novembre 2014 Bertrand Estellon (DII AMU) Programmation Orientée Objet Java 12 novembre
Plus en détailProgrammation Web. Madalina Croitoru IUT Montpellier
Programmation Web Madalina Croitoru IUT Montpellier Organisation du cours 4 semaines 4 ½ h / semaine: 2heures cours 3 ½ heures TP Notation: continue interrogation cours + rendu à la fin de chaque séance
Plus en détailProgrammation avec des objets : Cours 7. Menu du jour
1 Programmation avec des objets : Cours 7 Menu du jour 1. Retour sur la classe Liste 2. Précisions sur l interface 3. Difficultés dans le cas d erreurs 4. Soulever des exceptions 5. Utilisation des Listes
Plus en détailLangage et Concepts de ProgrammationOrientée-Objet 1 / 40
Déroulement du cours Introduction Concepts Java Remarques Langage et Concepts de Programmation Orientée-Objet Gauthier Picard École Nationale Supérieure des Mines de Saint-Étienne gauthier.picard@emse.fr
Plus en détailLicence Bio Informatique Année 2004-2005. Premiers pas. Exercice 1 Hello World parce qu il faut bien commencer par quelque chose...
Université Paris 7 Programmation Objet Licence Bio Informatique Année 2004-2005 TD n 1 - Correction Premiers pas Exercice 1 Hello World parce qu il faut bien commencer par quelque chose... 1. Enregistrez
Plus en détailProjet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
Plus en détailIntégration de l interface graphique de Ptidej dans Eclipse
Intégration de l interface graphique de Ptidej dans Eclipse Driton Salihu (salihudr@iro.umontreal.ca) Lulzim Laloshi (laloshil@iro.umontreal.ca) Département d informatique et de recherche opérationnelle
Plus en détailCréation d un service web avec NetBeans 5.5 et SJAS 9
Sommaire Création d un service web avec NetBeans 5.5 et SJAS 9 1. Présentation... 2 2. Création d un service web avec NetBeans... 2 2.1. Création d une application Web... 2 2.2. Création du service web...
Plus en détail1 Modélisation d être mauvais payeur
1 Modélisation d être mauvais payeur 1.1 Description Cet exercice est très largement inspiré d un document que M. Grégoire de Lassence de la société SAS m a transmis. Il est intitulé Guide de démarrage
Plus en détailUn ordonnanceur stupide
Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire
Plus en détailDesign patterns. Design patterns - définition. Design patterns - avantages
Design patterns Conception UML Implantation Java Anne Lapujade 1 Design patterns - définition 2 v Objectif : proposer des solutions standardisées à des problèmes de conception classiques v Design pattern
Plus en détailChapitre V. Les classes : Object, Vector, etc.
Chapitre V Les classes de base Les classes : Object, Vector, etc. Plan La classe Object Les collections La classe ArrayList La classe Vector Les classes Wrappers Les classes String et StringBuffer La classe
Plus en détailExercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT
Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT Ces exercices portent sur les items 2, 3 et 5 du programme d informatique des classes préparatoires,
Plus en détailConstruire des plug-ins pour SAS Management Console SAS 9.1
Construire des plug-ins pour SAS Management Console SAS 9.1 Janvier 2005 Sommaire 1 INTRODUCTION... 3 1.1 OBJECTIFS... 3 1.2 PERIMETRE... 3 2 LES COMPOSANTS DE SAS MANAGEMENT CONSOLE... 4 3 LA CONSTRUCTION
Plus en détailCette application développée en C# va récupérer un certain nombre d informations en ligne fournies par la ville de Paris :
Développement d un client REST, l application Vélib 1. Présentation L application présentée permet de visualiser les disponibilités des vélos et des emplacements de parking à la disposition des parisiens
Plus en détailMIS 102 Initiation à l Informatique
MIS 102 Initiation à l Informatique Responsables et cours : Cyril Gavoille Catherine Pannier Matthias Robine Marc Zeitoun Planning : 6 séances de cours 5 séances de TD (2h40) 4 séances de TP (2h40) + environ
Plus en détailMap-Reduce : un cadre de programmation parallèlle pour l analyse de grandes données. Stéphane Genaud ENSIIE
Map-Reduce : un cadre de programmation parallèlle pour l analyse de grandes données Stéphane Genaud ENSIIE Traitement de données distribuées Google a introduit Map-Reduce [Dean and Ghemawat 2004] Ils s
Plus en détailTutoriel: Création d'un Web service en C++ avec WebContentC++Framework
Tutoriel: Création d'un Web service en C++ avec WebContentC++Framework Gaël de Chalendar CEA LIST / LIC2M Journée de Présentation des Technologies WebContent INSTN 14/12/2009 Présentation de gsoap Plan
Plus en détailET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.
ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview. Sciences et Technologies de l Industrie et du Développement Durable Formation des enseignants parcours : ET24 Modèle de
Plus en détailExercices sur les interfaces
Exercices sur les interfaces Fabrice Rossi 18 octobre 1999 1 Le type Object 1.1 Manipulations élémentaires Exercice 1.1 : Indiquer l affichage produit par le programme suivant : public class UpCast1 {
Plus en détailas Architecture des Systèmes d Information
Plan Plan Programmation - Introduction - Nicolas Malandain March 14, 2005 Introduction à Java 1 Introduction Présentation Caractéristiques Le langage Java 2 Types et Variables Types simples Types complexes
Plus en détailIntroduction à Eclipse
Introduction à Eclipse Eclipse IDE est un environnement de développement intégré libre (le terme Eclipse désigne également le projet correspondant, lancé par IBM) extensible, universel et polyvalent, permettant
Plus en détailChapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Plus en détailGrandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test
Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite
Plus en détailRapport de Mini-Projet en ArcGIS Engine
Rapport de Mini-Projet en ArcGIS Engine Réalisée par : Asmae BENMESSAOUD 3ème Année Cycle d Ingénieur Géoinformation Année Universitaire 2010- Sommaire 1 Introduction L analyse géographique et la visualisation
Plus en détailNotice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker
Notice d Utilisation du logiciel Finite Element Method Magnetics version 3.4 auteur: David Meeker DeCarvalho Adelino adelino.decarvalho@iutc.u-cergy.fr septembre 2005 Table des matières 1 Introduction
Plus en détailJava et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Plus en détailPlan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Plus en détailBIRT (Business Intelligence and Reporting Tools)
BIRT (Business Intelligence and Reporting Tools) Introduction Cette publication a pour objectif de présenter l outil de reporting BIRT, dans le cadre de l unité de valeur «Data Warehouse et Outils Décisionnels»
Plus en détailDébuter avec EXPRESS. Alain Plantec. 1 Schema 2
Débuter avec EXPRESS Alain Plantec Table des matières 1 Schema 2 2 Entité 2 2.1 Attributs simples................................................ 2 2.2 Attributs collection...............................................
Plus en détailINTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Plus en détailLambda! Rémi Forax Univ Paris-Est Marne-la-Vallée
Lambda! Rémi Forax Univ Paris-Est Marne-la-Vallée forax at univ-mlv dot fr - ParisJUG Java.next() - Mars 2012 What Else? Lambda == Inner class? Java a des lambdas depuis la version 1.1 Exemple utilisant
Plus en détailOCL - Object Constraint Language
OCL - Object Constraint Language Laëtitia Matignon laetitia.matignon@univ-lyon1.fr Département Informatique - Polytech Lyon Université Claude Bernard Lyon 1 2012-2013 Laëtitia Matignon SIMA - OCL - Object
Plus en détailProgrammation par les Objets en Java
Programmation par les Objets en Java Najib TOUNSI Les classes en Java (TD 3) I. Notion de classe I.1 Classe, champs, méthodes, instanciation, this, private vs. public. Créer une classe Point (coordonnée
Plus en détailIntroduction à MapReduce/Hadoop et Spark
1 / 36 Introduction à MapReduce/Hadoop et Spark Certificat Big Data Ludovic Denoyer et Sylvain Lamprier UPMC Plan 2 / 36 Contexte 3 / 36 Contexte 4 / 36 Data driven science: le 4e paradigme (Jim Gray -
Plus en détailInfo0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java
Info0101 Intro. à l'algorithmique et à la programmation Cours 3 Le langage Java Pierre Delisle, Cyril Rabat et Christophe Jaillet Université de Reims Champagne-Ardenne Département de Mathématiques et Informatique
Plus en détail.NET - Classe de Log
.NET - Classe de Log Classe permettant de Logger des données Text Dans tous les projets, il est indispensable de pouvoir stocker de l'information textuelle : Pour le suivi des erreurs Pour le suivi de
Plus en détailLa NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.
La NP-complétude Johanne Cohen PRISM/CNRS, Versailles, France. Références 1. Algorithm Design, Jon Kleinberg, Eva Tardos, Addison-Wesley, 2006. 2. Computers and Intractability : A Guide to the Theory of
Plus en détailUne introduction à Java
Une introduction à Java IFT 287 (Semaine 1) UNIVERSITÉ DE SHERBROOKE 1 Java - Historique Développé par Sun Microsystems en 1994 Inventeur James Gosling (canadien!) Objectif langage sûr (fortement typé)
Plus en détailUne introduction à la technologie EJB (2/3)
Une introduction à la technologie EJB (2/3) 1 Les singletons des EJB 3.1 1.1 Synchronisation gérée manuellement Depuis la version 3.1, des EJB Statless à instance unique sont maintenant disponibles : ce
Plus en détail4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Plus en détailExpression des contraintes. OCL : Object C o n t r a i n t L a n g u a g e
P r o b l é m a t i q u e OCL : O b j e c t C o n s t r a i n t L a n g u a g e Le langage de contraintes d UML Les différents diagrammes d UML permettent d exprimer certaines contraintes graphiquement
Plus en détailConception des systèmes répartis
Conception des systèmes répartis Principes et concepts Gérard Padiou Département Informatique et Mathématiques appliquées ENSEEIHT Octobre 2012 Gérard Padiou Conception des systèmes répartis 1 / 37 plan
Plus en détailCours d initiation à la programmation en C++ Johann Cuenin
Cours d initiation à la programmation en C++ Johann Cuenin 11 octobre 2014 2 Table des matières 1 Introduction 5 2 Bases de la programmation en C++ 7 3 Les types composés 9 3.1 Les tableaux.............................
Plus en détailIntroduction au langage C
Introduction au langage C Cours 1: Opérations de base et premier programme Alexis Lechervy Alexis Lechervy (UNICAEN) Introduction au langage C 1 / 23 Les premiers pas Sommaire 1 Les premiers pas 2 Les
Plus en détailTutoriel d installation de Hibernate avec Eclipse
Tutoriel d installation de Hibernate avec Eclipse Table des matières 1. Création de la base de données... 4 2. Installation de Hibernate Synchronizer... 5 3. Utilisation de Hibernate... 6 3.1 Création
Plus en détailProblèmes liés à la concurrence
ENS Cachan Problématique Difficile de gérer la concurrence : Pas toujours facile d avoir des fonctions réentrantes. Risque de race condition : ex : x :=x+1 x :=x+1 On voudrait des blocs d instructions
Plus en détailResolution limit in community detection
Introduction Plan 2006 Introduction Plan Introduction Introduction Plan Introduction Point de départ : un graphe et des sous-graphes. But : quantifier le fait que les sous-graphes choisis sont des modules.
Plus en détailBig Data et Graphes : Quelques pistes de recherche
Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de
Plus en détailCours 1 : La compilation
/38 Interprétation des programmes Cours 1 : La compilation Yann Régis-Gianas yrg@pps.univ-paris-diderot.fr PPS - Université Denis Diderot Paris 7 2/38 Qu est-ce que la compilation? Vous avez tous déjà
Plus en détailIntroduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
Plus en détailCours de Génie Logiciel
Cours de Génie Logiciel Sciences-U Lyon Diagrammes UML (2) http://www.rzo.free.fr Pierre PARREND 1 Avril 2005 Sommaire Les Diagrammes UML Diagrammes de Collaboration Diagrammes d'etats-transitions Diagrammes
Plus en détailReprésentation d un entier en base b
Représentation d un entier en base b 13 octobre 2012 1 Prérequis Les bases de la programmation en langage sont supposées avoir été travaillées L écriture en base b d un entier est ainsi défini à partir
Plus en détailRétablissement d un réseau cellulaire après un désastre
Rétablissement d un réseau cellulaire après un désastre Anaïs Vergne avec Laurent Decreusefond, Ian Flint, et Philippe Martins Journées MAS 2014 29 août 2014 Rétablissement d un réseau cellulaire après
Plus en détailBases de Données NoSQL
Bases de Données NoSQL LI328 Technologies Web Mohamed-Amine Baazizi Transparents de Bernd Amann UPMC - LIP6 LI328 Technologies Web (B. Amann) 1 SGBD Universalité Systèmes «SQL» : Facilité d'utilisation
Plus en détailMapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15
MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué
Plus en détailUtilisation d objets : String et ArrayList
Chapitre 6 Utilisation d objets : String et ArrayList Dans ce chapitre, nous allons aborder l utilisation d objets de deux classes prédéfinies de Java d usage très courant. La première, nous l utilisons
Plus en détailRecherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Plus en détailArchitecture distribuée
Architecture distribuée Conception et développement d algorithmes distribués pour le moteur Baboukweb Jean-Christophe DALLEAU Département de Mathématiques et Informatique Université de La Réunion 26 juin
Plus en détailCorrigés des premiers exercices sur les classes
Corrigés des premiers exercices sur les classes Exercice 2.1.1 utilisation d une classe Voici le texte d une classe représentant de façon sommaire un compte bancaire et les opérations bancaires courantes.
Plus en détailArbres binaires de recherche
1 arbre des comparaisons 2 recherche dichotomique l'arbre est recalculé à chaque recherche 2 5 3 4 7 9 1 6 1 2 3 4 5 6 7 9 10 conserver la structure d'arbre au lieu de la reconstruire arbre binaire de
Plus en détailINITIATION AU LANGAGE C SUR PIC DE MICROSHIP
COURS PROGRAMMATION INITIATION AU LANGAGE C SUR MICROCONTROLEUR PIC page 1 / 7 INITIATION AU LANGAGE C SUR PIC DE MICROSHIP I. Historique du langage C 1972 : naissance du C dans les laboratoires BELL par
Plus en détailThéorie des Graphes Cours 3: Forêts et Arbres II / Modélisation
IFIPS S7 - informatique Université Paris-Sud 11 1er semestre 2009/2010 Théorie des Graphes Cours 3: Forêts et Arbres II / 1 Forêts et arbres II Théorème 1.1. Les assertions suivantes sont équivalentes
Plus en détailJava Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Plus en détailTP1 : Initiation à Java et Eclipse
TP1 : Initiation à Java et Eclipse 1 TP1 : Initiation à Java et Eclipse Systèmes d Exploitation Avancés I. Objectifs du TP Ce TP est une introduction au langage Java. Il vous permettra de comprendre les
Plus en détailRappel. Analyse de Données Structurées - Cours 12. Un langage avec des déclaration locales. Exemple d'un programme
Rappel Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.univ-paris-diderot.fr 6 mai 2015 Jusqu'à maintenant : un petit langage de programmation
Plus en détailPrincipes des langages de programmation INF 321. Eric Goubault
Principes des langages de programmation INF 321 Eric Goubault 24 mars 2014 2 Table des matières 1 Introduction 7 2 Programmation impérative 11 2.1 Variables et types........................... 11 2.2 Codage
Plus en détailProjet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte
Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes
Plus en détailTP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Plus en détailFormula Negator, Outil de négation de formule.
Formula Negator, Outil de négation de formule. Aymerick Savary 1,2, Mathieu Lassale 1,2, Jean-Louis Lanet 1 et Marc Frappier 2 1 Université de Limoges 2 Université de Sherbrooke Résumé. Cet article présente
Plus en détailLes structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Plus en détailProgrammation parallèle et distribuée
Programmation parallèle et distribuée (GIF-4104/7104) 5a - (hiver 2015) Marc Parizeau, Département de génie électrique et de génie informatique Plan Données massives («big data») Architecture Hadoop distribution
Plus en détail24/11/2011. Cours EJB/J2EE Copyright Michel Buffa. Plan du cours. EJB : les fondamentaux. Enterprise Java Bean. Enterprise Java Bean.
Plan du cours 2 Introduction générale : fondamentaux : les fondamentaux Michel Buffa (buffa@unice.fr), UNSA 2002, modifié par Richard Grin (version 1.1, 21/11/11), avec emprunts aux supports de Maxime
Plus en détailPHP et mysql. Code: php_mysql. Olivier Clavel - Daniel K. Schneider - Patrick Jermann - Vivian Synteta Version: 0.9 (modifié le 13/3/01 par VS)
PHP et mysql php_mysql PHP et mysql Code: php_mysql Originaux url: http://tecfa.unige.ch/guides/tie/html/php-mysql/php-mysql.html url: http://tecfa.unige.ch/guides/tie/pdf/files/php-mysql.pdf Auteurs et
Plus en détailPolymorphisme, la classe Object, les package et la visibilité en Java... 1
Polymorphisme, la classe Object, les package et la visibilité en Java. Polymorphisme, la classe Object, les package et la visibilité en Java.... 1 Polymorphisme.... 1 Le DownCast... 4 La Classe Object....
Plus en détailCours 1: Java et les objets
Ressources Les interface homme-machine et le langage Java DUT première année Henri Garreta, Faculté des Sciences (Luminy) Cyril Pain-Barre & Sébastien Nedjar, IUT d Aix-Marseille (Aix) Cours 1: infodoc.iut.univ-aix.fr/~ihm/
Plus en détailF. Barthélemy. 17 mai 2005
Typage de la généricité en Java F. Barthélemy 17 mai 2005 1 Le shéma général La g én éricit é en Java est un ajout r éalis é sur un langage existant depuis d éjà une dizaine d ann ées, avec des contraintes
Plus en détailDG-ADAJ: Une plateforme Desktop Grid
DG-ADAJ: Une plateforme pour Desktop Grid Olejnik Richard, Bernard Toursel Université des Sciences et Technologies de Lille Laboratoire d Informatique Fondamentale de Lille (LIFL UMR CNRS 8022) Bât M3
Plus en détailLES TYPES DE DONNÉES DU LANGAGE PASCAL
LES TYPES DE DONNÉES DU LANGAGE PASCAL 75 LES TYPES DE DONNÉES DU LANGAGE PASCAL CHAPITRE 4 OBJECTIFS PRÉSENTER LES NOTIONS D ÉTIQUETTE, DE CONS- TANTE ET DE IABLE DANS LE CONTEXTE DU LAN- GAGE PASCAL.
Plus en détailMémo d utilisation de ADE-4
Mémo d utilisation de ADE-4 Jérôme Mathieu http://www.jerome.mathieu.freesurf.fr 2003 ADE-4 est un logiciel d analyses des communautés écologiques créé par l équipe de biostatistiques de Lyon. Il propose
Plus en détailObjets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
Plus en détail