V.2.0 - Dernière mise à jour : 11/10/2024
Objectifs : présenter les bibliothèques les
plus courantes pour agréger les critères !
Plusieurs propositions seront indiqués ci-dessous en fonction des recherches et trouvailles sur le Net !
Les données exemple sont issues de TerrSet (cf. 2-8 TerrSet Tutoriel2020). La source d'origine est celle du MassGIS.
Elles permettent des passerelles entre applications et des comparaisons de résultats !
Le jeu de données est disponible ici => mem14mas_data.zip.
Il n'est pas nécessaire de procéder au géoréférencement des données pour comprendre la méthode WLC par l'exemple développée ci-après, mais toutes les paramètres pour le faire sont ici : Référence spatiale des données du MassGIS.
"Un des avantages de la méthode WLC est la possibilité de donner des poids relatifs différents à chacun des facteurs dans le processus d'agrégation. La pondération des facteurs, parfois appelés "pondération par compromis", revient à attribuer à chaque facteur un coefficient de pondération. Ces coefficients indiquent l'importance relative d'un facteur par rapport à tous les autres facteurs et contrôlent la façon dont les facteurs vont se compenser. Dans le cas de la méthode WLC, où les facteurs se compensent totalement, les facteurs ayant une aptitude élevée pour un emplacement donné peuvent compenser d'autres facteurs ayant une faible aptitude au même emplacement. Le degré par lequel un facteur peut en compenser un autre est déterminé par ce coefficient de pondération." [in Exercice 2-8 (Sources : TerrSet Tutoriel2020)].
Mais avant cela, il faut réaliser les couches de contraintes qui, multipliées aux facteurs, annuleront l'aptitude à moins de 50 m d'un cours d'eau ou celle des postes d'occupation du sol (OdS) déjà urbanisés.
Tout ceci est possible en raison de la "compensation intégrale" de la méthode WLC !
Il faut donc y remédier par la création de fichiers contraintes.
Pour l'eau, il s'agit d'une image booléenne des 50 m protégés autour des objets "eau". Les zones qui doivent être protégées reçoivent la valeur 0 tandis que celles qui peuvent être construite reçoivent la valeur 1. Quand les contraintes sont multipliées par la carte d'aptitude, les zones soumises aux contraintes sont masquées (c'est-à-dire fixées à 0), tandis que celles qui ne sont pas soumises à des contraintes conservent leur valeur d'origine.
? Constituer une donnée catégorielle uniquement avec les "Eaux libres" (réservoirs, lacs, "mares"...) par reclassement avec Reclassification (Reclassify, Spatial Analyst Tools)
L'aide indique que "L'outil Reclassification vous permet de transformer vos données catégorielles selon une échelle allant de 0 à 10 (vous ne pouvez pas reclassifier les données directement selon l'échelle allant de 0 à 1 avec cet outil) ; ensuite, vous divisez les données transformées obtenues par 10 pour obtenir l'échelle de 0 à 1." (Fonctionnement de l'appartenance floue, Spatial Analyst Tools).
a) Reprendre le projet Westborough constitué à la fm14 Données catégorielles
b) Dans le menu Geoprocessing, chercher Reclassify (en français Reclassification, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : mcelanduse.rst
Reclass field : Value
Cliquer sur Unique pour faire afficher tous les postes d'OdS
Reclassification en suivant les indications ci-dessous :
Poste d'occupation du sol Ancienne valeur Nouvelle valeur sans nomenclature 0 0 Cropland 1 0 Pasture 2 0 Forest 3 0 Open Undeveloped 4 0 Open Developed 5 0 Multi-Family Residential 6 0 Small Lots Residential 7 0 Med. Lots Residential 8 0 Large Lots Residential 9 0 Commercial 10 0 Industrial 11 0 Transportation 12 0 Open Water 13 1
? Constitution d'une zone tampon (buffer) autour des "Eaux libres" pour les distances inférieures ou égales à 50m, dans le menu Geoprocessing, chercher Expand (Développer, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : mceWATER
Output raster : watercon
Number of cells : 3 (les pixels font 20m mais la fonction n'accepte pas de valeurs décimales comme multiplicateur. Donc on exagérera par mesure de précaution.)
Zone values : 1 (il faudra inverser plus tard.)
Puis Run
Les valeurs à "1" sont les zones en eau et à "0" pour celles qui ne le sont pas, il faut donc les permuter.
Il faut dé-sélectionner les pixels en surbrillance avec Clear (menu Map/Selection), s'il y en a.
Éventuellement, changer la symbologie en noir et blanc pour bien voir l'opposition.
? Pour intervertir les codes de watercon - on veut que le "0" soit l'eau, dans le menu Geoprocessing, chercher Reclassify (Reclassement, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : watercon
Reclass field : value
Reclassification (utiliser les valeurs ci-dessous)
Value New 0 1 1 0 NODATA NODATA
Output Raster : watercon_final
Puis Run
Nous avons maintenant notre contrainte "Eaux libres".
En plus de la contrainte juridique étudiée ci-dessus, le nouveau développement résidentiel (lotissement) sera soumis aux contraintes de l'utilisation courante du terrain ; un nouveau développement ne peut intervenir sur un terrain déjà construit.
Nous allons donc construire une image booléenne produite à partir de MCELANDUSE, telle que les zones adaptées au développement résidentiel auront la valeur 1 et les zones inaptes la valeur 0.
Pour MCELANDUSE les catégories 1 à 4 sont considérées comme aptes (valeur 1) et les catégories 5 à 13 sont soumises à des contraintes, donc inaptes (valeur 0).
? Pour les postes d'OdS de MCELANDUSE, dans le menu Geoprocessing, chercher Reclassify (Reclassement, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : mcelanduse.rst
Reclass field : value_1 (qui comporte les codes des postes d'OdS)
Reclassification (utiliser les valeurs ci-dessous).
Si vous n'arrivez pas à avoir la table ci-dessous en 3 colonnes, cliquez sur le "+", Open an Other Tool et recliquez sur Reclassify (!)
Ne pas cliquer sur "Unique" et, éventuellement, avant de renseigner "Input raster", saisissez une ligne de la table, enregistrez-là en dbf puis, réimportez-la.
Si cela ne fonctionne pas, refaire un Reclassify !
Attention, la valeur de "End" est exclue et celle de "Start" est incluse !
Start End New 1 5 1 5 14 0 NODATA NODATA NODATA
Output Raster : landusecon
Puis Run
Nous avons maintenant notre contrainte "ODS".
Il est possible de recourir à deux outils, au moins :
Les deux se valent, c'est une question de goût !
? Dans le menu Geoprocessing, chercher Weighted sum (Somme pondérée, Spatial Analyst) et choisissez les paramètres suivants (à récupérer après le calcul dans AHP, Exercice 2-8 tab. n°3) :
Input raster :
Raster : landfuzz
Field : Value
Weight : 92
Cliquez sur Add another (ajouter une couche de plus)
Raster : townfuzz
Field : Value
Weight : 100
Cliquez sur Add another (ajouter une couche de plus)
Raster : waterfuzz
Field : Value
Weight : 139
Cliquez sur Add another (ajouter une couche de plus)
Raster : roadfuzz
Field : Value
Weight : 283
Cliquez sur Add another (ajouter une couche de plus)
Raster : slopfuzz
Field : Value
Weight : 254
Cliquez sur Add another (ajouter une couche de plus)
Raster : devlopdistfuzz
Field : Value
Weight : 133
Output raster : MCEWLC
Dans la version qui a servi rédiger cet exemple, ArcGIS Pro 2.8.0, il n'est pas possible de rentrer des coefficients décimaux.
Il faudrait donc, si on voulait rester dans une gamme comprise entre 0 et 1, diviser par 1000 le résultat.
Mais les outils de reclassement utilisés ensuite ne traitent que des données entières... donc nous allons rester sur une gamme entre 0 et 1000 !
Il faut, aussi, tenir compte des contraintes :
Le plus simple est de finaliser la carte d'aptitude en utilisant la calculatrice raster, comme expliqué au point suivant, en recopiant le script ci-dessous et en le collant dans la fenêtre du Map Algebra expression :
("MCEWLC") * "watercon_final.rst" * "landcon.rst"
Output raster : MCEWLCmsq (msq pour masqué par exemple)
? Dans le menu Geoprocessing, chercher Raster Calculator (Calculatrice raster, Spatial Analyst Tools) et choisissez les paramètres suivants (à récupérer au dessus ou après le calcul dans AHP, Exercice 2-8 tab. n°3) :
Vous allez successivement sélectionner les différentes couches raster dans Rasters puis les opérateurs dans Tools en respectant les espaces et les parenthèses "qui vont bien".
Ou recopier le script ci-dessous et le coller dans la fenêtre du Map Algebra expression :
(("landfuzz" * 90) + ("townfuzz" * 100) + ("waterfuzz" * 139) + ("ROADfuzz"*283) + ("slopfuzz" * 254) + ("develodistfuzz" * 133)) * "watercon_final.rst" * "landcon.rst"
Output raster : MCEWLCmsq
? Reste à éliminer les parcelles de trop petite taille et de trop faible aptitude
"Les approches WLC et OWA ont pour résultat des images d'aptitude continue qui rendent problématique la sélection de sites spécifiques pour le développement résidentiel ou n'importe quelle autre attribution. Dans l'approche booléenne, l'aptitude des sites a été définie clairement (bien que plutôt arbitrairement) et le seul problème de la sélection des sites était un problème de contiguïté, traité par l'ajout de la contrainte de postagrégation impliquant que les sites aptes doivent avoir une surface d'au moins 20 hectares. Avec un résultat continu, il y a d'abord le problème du choix des emplacements parmi les emplacements possibles, dont chacun a un certain degré d'aptitude. C'est seulement une fois le choix fait que le problème de contiguïté est traité comme dans le résultat booléen.
Il y a plusieurs méthodes de sélection des sites à l'aide de l'image continue d'aptitude. Nous allons combiner ici deux approches basiques. Dans la première approche, un certain niveau d'aptitude est précisé comme un seuil à prendre en compte comme emplacement finalement apte ou non. Par exemple, tous les emplacements ayant un score d'aptitude d'au moins 0.2 (200) seront choisis comme aptes pour une certaine attribution tandis que ceux dont l'aptitude est inférieure à 0.2 (200) ne seront pas choisis. Cette décision "strict" ("hard") a pour résultat une carte booléenne indiquant tous les sites possibles.
Dans la seconde approche, ce n'est pas le degré d'aptitude mais la quantité totale de terrain à sélectionner (ou à réserver à un autre usage) qui détermine un seuil. Dans ce cas, tous les emplacements (c'est-à-dire les pixels) sont classés selon leur degré d'aptitude. Après classement, les pixels sont sélectionnés/attribués en fonction de leur aptitude jusqu'à ce que la quantité de terrain nécessaire soit atteinte. Par exemple, 1 000 hectares de terrain pourraient devoir être sélectionnés/attribués pour le développement résidentiel. Grâce à cette approche, tous les emplacements sont évalués et les 1 000 hectares les plus aptes sont sélectionnés. Le résultat est de nouveau une carte booléenne indiquant les sites sélectionnés.
Les deux types de seuils (par aptitude ou zone totale) peuvent être considérés comme des contraintes postagrégation supplémentaires. Les contraintes sur le résultat final concernent des emplacements particuliers. Cependant, il faut noter que le problème de contiguïté et de taille des sites n'est pas pris en compte. C'est seulement après la définition des seuils lorsque l'image booléenne est produite, que les résultats peuvent être évalués en termes de contiguïté et de taille au moyen de méthodes semblables à celles décrites ci-dessus.
Outre ces solutions essentiellement booléennes pour la sélection des sites à l'aide d'une image continue d'aptitude, des solutions non booléennes pour la sélection des sites sont peut-être possibles grâce à des calculs de surface anisotropiques*. Cependant, ces méthodes ne sont pas très développées pour l'instant et ne seront pas traitées dans cet exercice." [in Exercice 2-10 (Sources : TerrSet Tutoriel2020)].
? Constitution d'une image booléenne d'aptitude minimum, dans le menu Geoprocessing, chercher Reclassify (Reclassement, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : MCEWLCmsq
Reclass field : VALUE
Reclassification [utiliser les valeurs ci-dessous. Si vous n'arriviez pas à avoir la table ci-dessous en 3 colonnes, cliquez sur le "+", Open an Other Tool et recliquez sur Reclassify (!)]
Attention, la valeur de "End" est exclue et celle de "Start" est incluse !
Start End New 0 200 0 200 1000 1 NODATA NODATA NODATA
Output Raster : MCEWLCmsq200bool
Puis Run
Nous avons maintenant notre contrainte booléenne pour calculer l'aptitude minimum.
? Masquage de l'image d'aptitude générale MCEWLCmsq par celle d'aptitude minimum à la valeur 200
Dans le menu Geoprocessing, chercher Raster Calculator (Calculatrice raster, Spatial Analyst Tools) et choisissez les paramètres suivants :
Vous allez successivement sélectionner les différentes couches raster dans Rasters puis les opérateurs dans Tools en respectant les espaces et les parenthèses "qui vont bien".
Ou recopier le script ci-dessous et le coller dans la fenêtre du Map Algebra expression :
"MCEWLCmsq" * "MCEWLCmsq200bool"
Output raster : MCEWLCmsq200
? Groupage des pixels contigus du raster MCEWLCmsq200bool qui ne contient que des pixels d'une valeur supérieure à 200.
Dans le menu Geoprocessing, chercher Region Group (Groupes par régions, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : MCEWLCmsq200bool (toutes les valeurs sont supérieures à 200 et ce sont des entiers !)
Output raster : RegionMCEWLC200
Number of neighbors to use : Eight (directions orthogonale et diagonale)
Zone grouping method : Within
Add link field to output (coché par défaut)
Excluded value : 0 (pas la peine de calculer sa surface, il n'y aura pas de développement ici)
Puis Run
? Calcul de la surface des différents regroupements.
Dans le menu Geoprocessing, chercher Zonal Statistics (Statistiques zonales, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : RegionMCEWLC200
Zone field : Value
Input value raster : RegionMCEWLC200 (le même)
Output raster : RegionMCEWLC200_ZStat
Statistic type : Sum
Ignore NoData in calculations (coché par défaut)
Puis Run
? Faire un Histogramme sur le résultat,
Clic droit sur RegionMCEWLC200_ZStat dans Contents (Contenu)
Create Chart / Histogram
Variable / Number / Band 1
Le graphique montre très peu de grandes surfaces.
Si c'est 1 000 ha la taille minimum requise, combien de groupes sont susceptibles d'être éligibles ?
Lesquels ?
Attention, c'est dans l'unité de la couche (le m2) !
? Constitution d'une image booléenne où la surface minimum sera de 1 000 ha (soit 10 000 m2 x 1 000 = 10 000 000) pour le minimum du End (pour un New à 0), le maximum du End (pour un New à 1) sera valué au-delà (50 000 000 par exemple).
Dans le menu Geoprocessing, chercher Reclassify (Reclassement, Spatial Analyst Tools) et choisissez les paramètres suivants :
Input raster : RegionMCEWLC200_ZStat
Reclass field : VALUE
Reclassification [utiliser les valeurs ci-dessous. Si vous n'arriviez pas à avoir la table ci-dessous en 3 colonnes, cliquez sur le "+", Open an Other Tool et recliquez sur Reclassify (!)]
Attention, la valeur de "End" est exclue et celle de "Start" est incluse !
Start End New 0 10000000 0 10000000 100000000 1 NODATA NODATA NODATA
Output Raster : SUIT200SIZE1000 (pour aptitude à 200 et surface à 1 000 ha minimum)
Puis Run
Work in progress !
Work in progress !
Work in progress !
EASTMAN J. R., JIN W., KYEM P., TOLEDANO J., 1995, "Raster Procedures for Multi-Criteria/Multi-Objective Decisions", Photogrammetric Engineering & Remote Sensing, Vol.61, 539?547.
HARYPRASETYO D., MUHAMAD J., FAUZI R., 2016, "Development of online Spatial Multi-Criteria Decision Analyst application: Case study on determining area suitability for school location in Surabaya, Indonesia", IOP Conference Series: Earth and Environmental Science, Vol.37, N°1, 012051. https://iopscience.iop.org/article/10.1088/1755-1315/37/1/012051/meta
Communiquez-moi par courrier électronique les réponses aux questions suivantes Question n°1.5.1.
Question n°1.5.2.
Question n°1.5.3.
|
NB : les mots suivis de "*" font partie du vocabulaire géographique, donc leur définition doit être connue. Faites-vous un glossaire.