Dans les deux articles précédents(SIG et aide à la décision (2) : le croisement de deux critères flous,etSIG et aide à la décision (1) : le classement avec des nombres flous), nous avons vus des exemples d’utilisation de la logique floue pour le traitement des informations géographiques. Il est temps de mettre la main à la patte. C’est pourquoi nous mettons ici à votre disposition une commande ArcGis permettant de créer un critère souple (flou).
Dans une deuxième étape (le prochain article) nous verrons comment effectuer l’agrégation de deux critères flous avec une autre commande, que nous mettrons aussi à votre disposition.
Comme nous l’avons vu dans les exemples des articles précédents, la première étape pour traiter les informations de manière floue est de transformer les valeurs d’un attribut classique en nombre flou:
Le noyau est l’ensemble des éléments qui appartiennent totalement au critère, c’est-à-dire dont le degré d’appartenance vaut 1.
Le support est l’ensemble des éléments appartenant, même très peu, au critère, c’est-à-dire dont le degré d’appartenance est différent de 0.
La hauteur d’un ensemble flou est définie par le degré d’appartenance maximum. Nous allons utiliser 1 comme valeur par défaut, mais il est clair qu’il ya des situations ou la valeur maximum d’un critère n’est pas synonyme de satisfaction maximum (1).
En bas de cette page vous trouverez les liens de téléchargement d’une commande ArcMap qui permet de créer un nouvel attribut, à partir d’un attribut existant, et répondant aux critères d’un nombre flou.
La commande Critère Souple
Un critère est un champ numérique d’une couche d’une classe d’entités. Le contenu de ce champ sera transformé dans un autre champ, numérique aussi, mais comportant des valeurs dans la plage 0 à 1. Cette transformation est faite pour faire coïncider les valeurs du champ d’origine avec un degré de satisfaction du critère : 1 correspond à une satisfaction totale, 0 à une insatisfaction totale, les autres valeurs étant des satisfactions partielles.
Une fois la commande installée,le bouton affiche l’interface suivante :
La commande fonctionne sur des fichiers de formes (shapefiles) et sur des Geodatabases fichiers. Elle ne fonctionne pas sur des Geodatabases personnelles (.mdb), des Geodatabases Entreprise, et des bases SpatiaLite. Ceci est dû au fait que la commande écrit un fichier de métadonnées dans le Workspace de la couche. Ceci est possible avec les shapefiles et avec les geodatabases fichier (répertoire .gdb). Il n’y a pas de protection intégrée dans la commande! Si vous essayez de travailler avec une geodatabase personnelle, ça marchera…jusqu’au plantage!(désolés…).
Méthodes de transformation
La fenêtre propose cinq transformations d’un champ en critère souple (nombre flou) :
Type 1 :La première correspond en réalité à un nombre non flou, mais permet l’agrégation d’un critère non flou avec des critères flous.
Le critère est défini de manière exacte. Toute valeur différente de celle entrée dans la fenêtre « a : » sera mise à 0.
Type 2 :La deuxième permet de définir un nombre flou où seulement une valeur exacte (« b : ») donne entière satisfaction. Les valeurs inférieures à la borne « a : » et supérieures à la borne « c : » auront une satisfaction nulle, tandis que les valeurs entre « a : » et « b : » et entre « b : » et « c : » correspondront à des valeurs entre 0 et 1. Ces valeurs correspondent à la valeur de la courbe. Ceci correspond à un nombre exact avec une certaine incertitude.
Type 3 :La troisième permet d’établir un « seuil » flou. Toutes les valeurs inférieures à « a : » seront nulles, toutes les valeurs supérieures à « b : » seront égales à 1, tandis que les valeurs entre « a : » et « b : » auront des valeurs entre 0 et 1. Ceci correspond à la notion plus grand que, avec une certaine incertitude.
Type 4 :La quatrième correspond à un seuil inversé. Toutes les valeurs inférieures à « a : » seront égales à 1, toutes les valeurs supérieures à « b : » seront nulles, tandis que les valeurs entre « a : » et « b : » auront des valeurs entre 0 et 1. Ceci correspond à la notion plus petit que avec une certaine incertitude.
Type 5 :La cinquième méthode permet de créer un critère flou classique. La plage de valeurs comprises entre « b : » et « c : » donnent totale satisfaction et ont une valeur de 1.
Les valeurs inférieures à « a : » et supérieures à « d : » seront exclues et auront une valeur de 0. Les valeurs entre « a : » et « b : » ainsi que celles entre « b : » et « d : » auront des valeurs entre 0 et 1. Ceci correspond au nombre flou type, avec son noyau et son supportr. Comme nous l’avons indiqué plus haut, la hauteur par défaut est 1.
Aides à la transformation : statistiques d’un champ
Le bouton permet d’afficher les statistiques du champ sélectionné dans la fenêtre « attributs disponibles ». D’autre part il affiche la liste des valeurs différentes contenues dans le champ (limité à 100 valeurs uniques).
Aides à la transformation : métadonnées
Le bouton affiche une fenêtre avec la description des critères souples contenus dans les couches de données.
La fenêtre suivante montre un exemple de métadonnées pour un critère souple :
Les métadonnées sont stockées dans un fichier séparé (.fzy), géré par la commande.
La gestion de ces fichiers est automatique. Par exemple, l’élimination des métadonnées correspondantes à un critère souple si celui-ci est effacé manuellement de la table de la classe d’entités.
Par contre, si vous déplacez des couches dans des répertoires ou geodatabases différentes, vous devrez déplacer le fichier .fzy manuellement.
Langues disponibles
Une liste déroulante permet de sélectionner la langue à utiliser.
Les langues disponibles sont :
• Français (par défaut)
• Anglais
• Espagnol
• Vietnamien
Même si la commande est censée passer d’une langue à une autre sans problème, selon la version de Windows utilisée, il est plus sûr de fermer et rouvrir la commande après avoir sélectionné une autre langue dans le menu déroulant.
Versions d’ArcGis
La commande peut être utilisée avec les versions d’ArcGis comprises entre 9.2 et 10.3, et avec les versions de Windows Xp, Vista W7 et W8.
Téléchargement de l’outil (Version 10.3.0.6)
Les liens suivants vous permettent de télécharger la commande (fichier .zip) et le manuel d’utilisation (.pdf) qui reprend le contenu de cet article.
Installation des outils
Les outils sont fournis sous la forme d’un fichier .dll accompagné d’un base de données Access. Copiez et décompressez le fichier de la commande dans un répertoire permanent de votre disque.
Pour l’installer vous devez passer par le menu Personnaliser -> Mode personnalisation d’ArcMap.
La fenêtre de personnalisation s’ouvre :
Dans l’onglet Commandes, cliquez sur le bouton Ajouter depuis un fichier. Pointez sur le fichier fuzzy_numberV92_103ML.dll que vous aurez préalablement copié dans un répertoire permanent de votre disque local AVEC le fichier Text.mdb livré en même temps. Ce fichier contient les différentes versions des langues utilisées. Ce n’est pas très élégant, mais ça permet à la commande de fonctionner sans adaptation particulière sous Xp,Vista,W7 et w8.
Cliquez sur OK. Le message suivant doit apparaître pour vous indiquer que l’installation s’est déroulée sans problème.
Cliquez sur OK. Dans la fenêtre de Commandes disponibles vous serez positionné automatiquement sur la catégorie NASCA commandes et vous verrez l’outil disponible : Critère souple.
Pour pouvoir l’utiliser, cliquez-glissez sur l’icône de la commande et déposez-la dans une barre d’outil ouverte d’ArcMap.
Dans le prochain article nous verrons le deuxième outil, qui permet l’agrégation de deux critères souples (flous)