01.01.2015 Views

Table des matières - Gilles Daniel

Table des matières - Gilles Daniel

Table des matières - Gilles Daniel

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Comparaison de trois implémentations du modèle de Schelling. 385<br />

peut schématiser globalement ces spécifications par une boîte (Figure 17.2) et<br />

décrire comme suit l’algorithme qui sera repris pour l’implémentation sous Excel :<br />

Algorithme UnPas<br />

Début<br />

pour toute cellule i, j faire<br />

si Occupation(i, j) n’est pas Libre alors<br />

si NbrEtrangers(i, j) > S alors<br />

// l’habitant est insatisfait<br />

si ListeHabitationsLibres est non vide alors //action<br />

choisir une habitation m dans ListeHabitationsLibres<br />

Calculer la localisation (ii, jj) de m<br />

Déménager de (i, j) vers (ii, jj)<br />

Mettre à jour ListeHabitationsLibres<br />

fin si<br />

fin si<br />

fin si<br />

fin pour<br />

Fin Algorithme<br />

L’évaluation utilise la fonction NbrEtrangers(i, j) qui calcule le nombre<br />

d’individus du voisinage de la cellule j dont le groupe social est différent de (i, j). La<br />

phase d’action utilise la liste ListeHabitationsLibres qui contient les positions <strong>des</strong><br />

cellules libres. Cette liste nécessite deux procédures : ChoisirHabitation pour<br />

choisir une maison libre dans la liste et Mettre à Jour la liste après un déplacement.<br />

Nous ne détaillons pas ici ces sous-programmes appelés dans l’algorithme principal,<br />

car ils sont détaillés dans l’implémentation sous Excel et StarLogo..<br />

Dans le cas d’un maillage carré avec un voisinage de Moore (8 voisins pour un<br />

rayon de 1), l’opérateur de voisinage contient un tableau V ayant nV = 8 cases,<br />

chaque case contenant un vecteur de décalage de la forme (∆x, ∆y). Ainsi le tableau<br />

V contient les données suivantes :<br />

V = ((0, -1), (1, 0), (0, 1), (-1, 0), (-1, -1), (1, -1), (1, 1), (-1, 1))<br />

Remarquons que dans un maillage carré de NL lignes et NC colonnes, les<br />

cellules peuvent être numérotées de 0 à N-1, la cellule de numéro m a pour<br />

coordonnées j (numéro de colonne), et i (numéro de ligne), qui se calculent de la<br />

manière suivante :<br />

j = ( m mod NC)+ 1 [17.1]<br />

i = ( m div NC)+ 1 [17.2]

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!