CARTOGRAPHIE DÉCISIONNELLE MULTICRITÈRE. S. Chakhar LAMSADE Université Paris Dauphine
2 1.Problématique et objectif. 2.Méthodologie pour la cartographie décisionnelle. 3.Algèbre pour la cartographie décisionnelle. 4.Implémentation informatique. 5.Conclusion. Plan.
3 → Les travaux d'intégration SIG-AMC proposés présentent plusieurs limites : * adoptent les modes d’intégration indirecte ou encastrée. * intègrent une seule (ou un nombre limité) de méthode(s) d'AMC. * intègrent essentiellement des méthodes de type critère unique de synthèse. * demandent une connaissance approfondie du SIG et de l’AMC. → Objectif : Apporter des solutions conceptuelle, méthodologique et informatique pour supporter la cartographie décisionnelle multicritère qui permet d’éviter ces limites → Nous proposons : 1. Cadre conceptuel : une intégration entre SIG / Fonctions d’EMC / Module du choix de la procédure d’agrégation multicritère (PAMC). 2. Méthodologie à deux phases : * Phase I : Inférence des paramètres préférentiels et génération d’une carte décisionnelle. * Phase II : Exploitation de la carte décisionnelle pour l’aide à la décision. 3. Algèbre pour la cartographie décisionnelle. 4. Application au problème de génération des corridors. 5. Implémentation informatique. Problématique et objectif.
4 Infor. Additionnelles e.g. u i [cMin, cMax] Carte décisionnelle g(u i )=[g 1 (u i1 ),...,g m (u im )] u i {C 1,…C r } u i C j Etape 1. Définition du problème Etape 2. Génération d’une carte intermédiaire Etape 3. Classification multicritère Phase II. Exploitation Génération des alternatives potentielles Recommandation Cartes critères Evaluation MC Phase I. Inférence des paramètres préférentiels et génération d’une carte décisionnelle MODULE D’INFERENCE Max s.t. S(u i,u k ) - ; (u i,u k ) S + - S(u i,u k ) - ; (u i,u k ) S 1 j w j =1; j F w j lb i ; j F Etape 4. Génération d’une carte finale Méthodologie. g1g1 gmgm gjgj u ij
5 Représentation en SIGModélisation proposée alternative de type ponctuel une unité spatiale alternative de type linéaire suite d’unités spatiales adjacentes linéairement alternative de type polygone une ou plusieurs unités spatiales contiguës Problèmes de localisation Problèmes de tracé d’infrastructures linéaires (e.g. autoroutes, lignes de haute tension) Problèmes d’évaluation du territoire, aménagement urbaine Problème Méthodologie.
6 Opérandes : cartes géographiques : map-layer, alternative-map, criterion-map, decision-map, sd-model objets géographiques : xPixel; gPoint, gLine, gPolygon autres opérandes : aConstraint, aLambda, pThresold, aProcedure, etc. Opérateurs : fonctions élémentaires d’aide à la décision en générale et mc en particulier, e.g. DOMINATE, OUTRANK, CHOICE, RANGE, CONCORDANCE, FEASIBLE + fonctions standards de l’algèbre des cartes, e.g. PUT, MERGE, INTERSECTS Spécification d’une algèbre : → Type : nom du TAD (géographique). → Set: opérandes (types de données) utilisés pour décrire les axiomes du TAD. → Syntaxe : ensemble des opérations définies sur les opérandes. → Axiomes : expriment les comportements des opérateurs. Algèbre pour la cartographie décisionnelle.
7 Type: map-layer Set: map-layer, gPoint, gLine, gPolygon, ref-system, scale, real Syntax: MAKE name → map-layer PUT map-layer x real x real → gPoint PUT map-layer x gPoint x gPoint → gLine PUT map-layer x gPoint x … x gPoint → gPolygon INTERSECT map-layer x … x map-layer → map-layer Axioms: m: map-layer; p:gPoint; v1, v2: real PUT(m,v1,v2) = p.MAKE(v1,v2) Type: gPoint Set: gPoint, real, boolean Syntax: MAKE real x real → gPoint ISEQUAL gPoint x gPoint → boolean DISTANCE gPoint x gPoint → real X gpoint → real Y gpoint → real Axioms: i,j: real; p, q: gPoint X(MAKE (i, j)) = i Y(MAKE (i,j)) = j Type: gLine Set: gPoint, gLine, real Syntax: MAKE gPoint x gPoint → gPoint START gLine → gPoint END gLine → gPoint LENGTH gLine → real Axioms: p, q: gPoint START (MAKE (p, q)) = p END (MAKE (p, q)) = q Type: gPolygon Set: gPoint, gLine, gPolygon, real, boolean Syntax: MAKE gPoint x … x gPoint → gPolygon AREA gPolygon → real CENTROID gPolygon → gPoint CONTAINS gPolygon x gPoint → boolean INTERSECTS gPolygon x gLine → boolean Axioms: p 1,…, p n, x, r: gPoint; l:gLine; v: real AREA(MAKE(p 1,…,p n )) = _area CENTROID(MAKE(p 1,…,p n )) = _gPoint CONTAINS(MAKE(p 1,…,p n ), r) =if ( (p) in (p 1,…, p n ) X(r) X(p) and Y(r) Y(p)) then T INTERSECTS(MAKE (p 1,…,p n ),l) = CONTAINS( MAKE(p 1,…,p n ), SART(l)) or CONTAINS( MAKE(p 1,…,p n ), END(l)) Algèbre pour la cartographie décisionnelle. gPoint gLine gPolygon scale map-layer {} ref-system
8 Type: decision-map Set: map-layer, criterion-map, sUnit, uSet, sAssignments, sCatogries, sProfiles, Thresholds, aOperator Syntax: MAKE criterion-map x …x criterion-map → decision-map GROUP map-layer → decision-map MERGE decision-map x sUnit x sUnit → decision-map LOCATE decision-map → sUnit CORRIDOR desicion-map x sUnit x sUnit → uSet INFER decision-map x sAssignments x sCatogries x sProfiles x Thresholds x aOperator → decision-map Axioms: d: decision-map; s,e: sUnit; cm 1,…,cm m : criterion-map; MAKE(cm 1,…,cm m ) =INTERSECT(cm 1,…,cm m ) CORRIDOR(d,s,e) ={u i : u i d u 1 =s u n =e ADJACENT(u i,u i+1 )} Type: sUnit Set: map-layer, criterion-map, sUnit, value, boolean cFamily Syntax: ASSIGN sUnit x criterion-map x value → sUnit OUTRANK sUnit x sUnit → boolean CONCORDANCE sUnit x sUnit → real DISCORDANCE sUnit x sUnit → real ADJACENT sUnit x sUnit → boolean Axioms: u,u’: sUnit; c,aLambda:real; f:cFamily OUTRANK(u,u’) = If (CONCORDANCE (u,u’) >= c and DISCORDANCE(u,u’) >= aLambda) then T CONCORDANCE(u,u’) = [ f cFamily PDISCORDANCE(u,u’,f) * f.weight] / [ f cFamily f.weight] Algèbre pour la cartographie décisionnelle. decision-map sUnit cMin cMax map-layer {}
9 Type: sd-model Set: map-layer, decision-map, criterion-map, sUnit, uSet, cFamily, aProcedure, nProcedure Syntax: DOMINATE decision-map x cFamily → decision-map NORMALIZE decision-map x cFamily x nProcedure → decision-map AGGREGATE decision-map x cFamily x nProcedure → decision-map CHOICE decision-map x cFamily x aProcedure → uSet Axioms: m,r: decisision-map; u:sUnit; f: cFamily; a: aProcedure; n: nProcedure DOMINATE(m,f) = (u) (u’) (u m) (u’ m) [if [ (g) (g f) PERFORMANCE(m,u,g) PERFORMANCE(m,u’,g)] and [ (g') (g' f) PERFORMANCE(m,u’,g') > PERFORMANCE(m,u,g')] then PUT(u,r) ]] NORMALIZE(m,f,n) = (u) (g) (u m) (g f) SET(m,u,g, n.combine) AGGREGATE(m,f,a) = (u) (g) (u m) (g f) SET(m,u,g, a.combine) Type: nProcedure Set: value Syntax: CREATE DEFERRED → value COMBINE value x value x ٠٠٠ x value → value Algèbre pour la cartographie décisionnelle. Type: aProcedure Set: value Syntax: CREATE DEFERRED → value COMBINE value x value x ٠٠٠ x value → value sd-model agg decision-map critereion-map {} cFamilyaProcedure
10 class map-layer { //… public: map-layer intersect(); … } class decision-map { ref-system string; scale numeric; … public: decision-map make(criterion-map); uSet corridor(decision-map, sUnit, sUnit); … } Algèbre pour la cartographie décisionnelle. class criterion-map { //… public: //… } main() { r decision-map; c1, c2, c3 criterion-map; r=intersect(c1,c2,c3); s sUnit; e sUnit; ret uSet; ret=corridor(r,s,e); }
11 Avantages : * Formalisation mathématique rigoureuse. * Adaptée pour une modélisation orientée objet. * Indépendante de la manière dont les données sont stockées. * ne nécessite pas une connaissance approfondie du SIG/AMC. * un point de départ pour la définition : - d’une algèbre de cartographie décisionnelle visuelle. - d’une algèbre de cartographie décisionnelle basée sur des scripts. Algèbre pour la cartographie décisionnelle.
12 carte décisionnelle input.txt Iris GLPK (Routines en C) inference.cpp (en C++) output.txt input.tri user DMA (en C++) Module du choix de la PAMC (en Java) Système d’inférence (en VBA) PAMCsBDG ArcGIS user Prototype : Système d’inférence.
13 Prototype : Système d’inférence.
14 Prototype : Système d’inférence.
15 Reste à faire : 1. Finaliser le prototype: * Système d’inférence: Inférence de veto et limites de catégories et affectation robuste * Implémentation du module du choix de la PAMC * Implémentation de l’algèbre 2. Application au problème de génération des corridors Perspectives : 1. Etendre l’algèbre pour supporter les problèmes évoquant des alternatives composées. 2. Ajout de la dimension temporelle. 3. Algèbre visuelle pour la cartographie décisionnelle. 4. Prise en compte de l’incertitude et de l’imprécision. Conclusion.