TP 1 : Choix d`une voiture

Transcription

TP 1 : Choix d`une voiture
TP 1 : Choix d'une voiture
Introduction à diviz
Patrick Meyer∗
Télécom Bretagne
Introduction
1
Le but de ce TP est de apprendre à utiliser le logiciel diviz , et à explorer
amcd).
les possibilités qu'ore diviz en Aide Multicritère à la Décision (
L'outil diviz permet de créer des chaînes de traitements algorithmiques
complexes utiles en
amcd. Ces workows sont créés via une interface gra-
phique qui vous permet de glisser-déposer les éléments de calculs nécessaires
et de les enchaîner ensuite de manière cohérente. Après l'exécution de votre
chaîne de calculs, vous pouvez facilement étudier les résultats naux obtenus,
ainsi que tous les résultats intermédiaires. L'outil vous permet également de
facilement paramétrer ces algorithmes et de garder une trace de vos exécutions passées.
En premier lieu, téléchargez le logiciel diviz à l'adresse
decision-deck.org/diviz/download.html
http://www.
et installez le sur votre ordina-
teur.
Nous commençons par une présentation du problème de décision que
nous allons étudier. Des détails supplémentaires sur cet exemple peuvent
+
être trouvés dans [BMP 00, chapitre 6].
Le problème de décision
En 1993, Thierry, un étudiant âgé de 21 ans, est passionné par les voitures
de sport et aimerait acheter une voiture d'occasion puissante. Il sélectionne
cinq critères liés au coût (critère g1), à la performance du moteur (critères
g2 and g3) et à la sécurité (critères g4 et g5). La liste des alternatives et
de leurs évaluations sur ces cinq critères est présentée dans le tableau 1. Le
critère de coût (e) et les critères de performance acceleration (secondes)
∗
[email protected]
http://www.diviz.org
1.
1
ID voiture
marque
coût
(g1,
e)
accel.
reprise
freins
tenue de route
(g2, s)
(g3, s)
(g4 )
(g5 )
a01
Tipo
18342
30.7
37.2
2.33
3
a02
Alfa
15335
30.2
41.6
2
2.5
a03
Sunny
16973
29
34.9
2.66
2.5
a04
Mazda
15460
30.4
35.8
1.66
1.5
a05
Colt
15131
29.7
35.6
1.66
1.75
a06
Corolla
13841
30.8
36.5
1.33
2
a07
Civic
18971
28
35.6
2.33
2
a08
Astra
18319
28.9
35.3
1.66
2
a09
Escort
19800
29.4
34.7
2
1.75
a10
R19
16966
30
37.7
2.33
3.25
a11
P309-16
17537
28.3
34.8
2.33
2.75
a12
P309
15980
29.6
35.3
2.33
2.75
a13
Galant
17219
30.2
36.9
1.66
1.25
a14
R21t
21334
28.9
36.7
2
2.25
Table 1 Tableau de performance pour le problème de choix de Thierry
et reprise (secondes) doivent être minimisés, tandis que les critères de sécurité freinage et tenue de route doivent être maximisés. Notez que les
valeurs prisent par ces deux derniers critères sont des évaluations moyennes
obtenues d'évaluations qualitatives multiples qui ont été recodées en entiers
entre 0 et 4. De plus amples détails sur les données peuvent être trouvées
+
dans [BMP 00].
An d'aider Thierry à choisir la voiture qui lui convient le mieux, nous
allons classer ces voitures en utilisant la somme pondérée comme opérateur
d'agrégation.
Étape 1 : Ajout de données à diviz
Le tableau de performance du tableau 1 est disponible au format csv
(comma separated value) à l'adresse http://public.telecom-bretagne.
eu/~pmeyer/courses/TPdiviz/performanceTable.csv. Téléchargez ce chier et stockez le sur votre ordinateur. Ouvrez-le dans votre tableur préféré
an de visualiser son contenu. Dans une première étape, ce chier doit être
converti au format
XMCDA
an de le rendre compatible avec les diérents
programmes disponibles dans diviz.
XMCDA est un standard de données qui permet de décrire des données liées
à l'
amcd. Les programmes proposés dans le logiciel diviz comprennent et
parlent tous le
XMCDA
et deviennent ainsi interopérables.
Exercice diviz 1. Lancez diviz, créez un workow vide, glissez et déposez
le module
csvToXMCDA-performanceTable
2
du panneau de droite dans l'es-
pace de travail vide. Ajoutez le chier contenant le tableau de performance
(csv) à diviz en glissant et en déposant l'élément
File(s)
de la liste de
droite dans l'espace de travail et en sélectionnant sur votre ordinateur le chier csv que vous venez de télécharger. Connectez ce chier csv au module
csvToXMCDA-performanceTable,
Le module
mat
et exécutez le workow (ctrl
csvToXMCDA-performanceTable
+ F11).
a généré trois sorties au for-
XMCDA : tout d'abord un chier contenant la description des alternatives
(leurs identiants), ensuite un chier contenant la description des critères,
et pour terminer un chier contenant les performances des alternatives sur
les critères.
A cette étape du processus d'aide à la décision, il peut être intéressant de
présenter un résumé des données du problème à Thierry an de lui permettre
de mieux les appréhender. Le module
criteriaDescriptiveStatistics cal-
cule des indicateurs statistiques élémentaires à partir des données présentes
dans le tableau de performances, alors que
plotStarGraphPerformanceTable
génère des représentations graphiques des données du problème sous la forme
de diagrammes en étoile.
Exercice diviz 2. Utilisez criteriaDescriptiveStatistics et plotStarGraphPerformanceTable pour présenter à Thierry un résumé synthétique des
données du tableau de performance. Ajoutez ces modules à votre espace de
travail, connectez-les correctement aux sorties de
Table,
csvToXMCDA-performance-
et exécutez le workow.
Thierry doit maintenant être conscient des intervalles de valeurs des
échelles des critres, ainsi que de la distribution des alternatives sur ces
échelles.
Étape 2 : Normalisation des données
On propose maintenant à Thierry de normaliser les données du tableau
de performance an de ramener toutes les évaluations dans un intervalle commun (disons
[0, 1]).
La technique de normalisation choisie est, pour chaque
critère, la division de toutes les évaluations par la valeur maximale atteinte
sur ce critère. Du coup, la valeur maximale aura la valeur
originale de
0
Le module
1 et une évaluation
0 après la normalisation.
performanceTableTransformation permet de transformer les
restera
valeurs d'un tableau de performances (critère par critère) à travers diérentes
fonctions de normalisation.
Exercice diviz 3. Dans diviz, glissez et déposez le module
TableTransformation
performance-
dans votre espace de travail et connectez-le correc-
tement aux données an d'obtenir un tableau de performances normalisé.
En double-cliquant sur le module, une fenêtre de paramètres apparait qui
3
vous permet de spécier le type de normalisation que vous désirez appliquer.
Choisissez Divide by max dans le menu déroulant. Fermez cette fenêtre et
exécutez ensuite votre workow (ctrl
+ F11).
Étape 3 : La technique d'agrégation
Maintenant que toutes les évaluations ont été ramenées dans un intervalle
commun ([0, 1]), on aimerait utiliser la somme pondérée pour agréger ces
évaluations normalisées an d'obtenir un score global pour chaque voiture.
Ce score doit permettre à Thierry de classer les voitures de la meilleure à la
plus mauvaise.
Il considère que les critères
et
g3
ont un poids de
1, g2
a un poids
g4 et g5 ont un poids de 0.5. Ces informations sont stockées dans le
weights.csv que vous pouvez télécharger à l'adresse http://public.
telecom-bretagne.eu/~pmeyer/courses/TPdiviz/weights.csv (les poids
de
2
g1
et
chier
négatifs dans ce chier correspondent aux critères qui sont à minimiser).
csvToXMCDA-criteriaValues permet
du format csv vers le format XMCDA.
Dans diviz le module
mer un chier de poids
Exercice diviz 4. Ajoutez le module
de transfor-
csvToXMCDA-criteriaValues dans
weights.csv précédemment télé-
votre espace de travail ainsi que le chier
chargé. Connectez ces éléments entre eux, exécutez le workow et observez
la sortie du module
csvToXMCDA-criteriaValues.
Dans diviz, le module
generalWeightedSum permet de calculer la somme
pondérée des évaluations des voitures par rapport aux poids des critères.
Exercice diviz 5. Ajoutez le module
generalWeightedSum
et connectez le
correctement au reste du workow de traitement, an qu'il calcule la somme
pondérée des évaluations normalisées par rapport aux poids indiqués par
Thierry. Exécutez votre workow, et discutez le résultat.
Étape 4 : La recommandation
Le score obtenu permet de classer toutes les alternatives du problème de
Thierry. Le module
rankAlternativesValues
permet d'obtenir le rang de
chaque alternative en fonction de ce score.
Exercice diviz 6. Ajoutez le module
rankAlternativesValues au workow
et déterminez quelle voiture doit être recommandée à Thierry.
Étape 5 : Représentation graphique des données
Des modules comme
plotCriteriaValues
et
plotAlternativesValues
permettent de représenter des données numériques sous forme de diagramme
4
à barres (barchart). Le module
plotAlternativesPreorder
est capable de
créer un graphe représentant le préordre des alternatives par rapport à leurs
évaluations globales (obtenues par la somme pondérée).
Exercice diviz 7. Utilisez des modules graphiques pour représenter les en-
trées et les sorties du problème de décision de Thierry. Ne vous limitez pas
forcément aux 3 modules présentés ci-avant. En quoi ces modules peuvent
vous aider dans la justication de votre recommandation à Thierry ?
Étape 6 : Thierry trouve du travail
Thierry vient de trouver un CDI très bien payé. Il estime que cela pourrait
changer ses préférences : le critère de coût n'est plus important, et il désire
qu'il ne soit plus considéré dans la recommandation de décision.
Exercice diviz 8. Créez un scénario alternatif pour la phase d'agrégation
(créez une 2e branche du workow dans le même espace de travail). Rajoutez des chiers d'entrée pour tenir compte de la disparition du critère de
coût dans l'agrégation. Quelle recommandation faites-vous à Thierry dans ce
scénario ?
Étape 7 : Des préférences a priori de Thierry
Après une discussion avec Thierry, on se rend compte qu'il est capable
d'émettre des préférences globales sur un certain nombre de voitures sous la
forme d'un classement :
P309-16
Sunny Galant
Escort
R21t.
Exercice diviz 9. Créez un chier CSV qui contiendra cette information
sous la forme suivante :
rang
a11
1
a03
2
...
...
(veillez à garder la première case de la première ligne vide). Le module
csvToXMCDA-alternativesValues
XMCDA.
vous transformera ce chier au format
5
Étape 8 : Comparer la sortie de la somme pondérée
au classement a priori de Thierry
An de vérier si la somme pondérée respecte le classement de Thierry
des 5 voitures, on propose de calculer l'indice de corrélation de rangs de Kendall entre le classement obtenu par la somme pondérée et celui de Thierry.
A cette n, on doit d'abord obtenir les rangs de ces 5 alternatives dans le
classement fourni par la somme pondérée. Ceci peut être fait via le module
rankAlternativesValues
pour lequel on va désactiver certaines alterna-
tives.
Exercice diviz 10. Créez une copie du chier csv contenant le tableau de
performances sur votre ordinateur. Eecer les données qui ne correspondent
pas aux 5 alternatives que Thierry arrive à classer. Réutilisez le module
csvToXMCDA-performanceTable
an d'obtenir une sortie (alternatives) dé-
crivant les identiants des 5 alternatives retenues. Utilisez maintenant cette
sortie pour ltrer les rangs des alternatives via le module
Values.
La sortie de
rankAlternativesValues
rankAlternatives-
sera le classement des 5 alterna-
tives spéciées par Thierry par la somme pondérée (veillez à spécier dans le
module que la voiture avec la plus haute valeur doit être classée première).
Ensuite, le module
alternativesValuesKendall est utilisé pour calculer
le taux de Kendall entre les 2 classements.
Exercice diviz 11. Déterminez le taux de Kendall entre le classement par la
somme pondérée et celui indiqué par Thierry. Est-ce que le modèle de somme
pondéré représente bien le classement a priori de Thierry ?
Étape 9 : Création d'un rapport
generateXMCDAReport permet de fusionner plusieurs entrées /
sorties en XMCDA an de créer un rapport. Le nombre d'entrées est déterminé
Le module
par la fenêtre de paramètres du module, qui peut être ouverte en double
cliquant sur le module.
Exercice diviz 12. Créer un rapport contenant les moments clés du pro-
cessus d'aide à la décision qui vient d'être mis en place.
Références
+
[BMP 00] D. Bouyssou, T. Marchant, M. Pirlot, P. Perny, A. Tsoukias, and
P. Vincke. Evaluation and decision models, A critical Perspective.
Kluwer's International Series. Kluwer, Massachusetts, 2000. 1, 2
6

Documents pareils