Subdivision du réseau géographique desservi : mise en place d’une architecture

Dans le document Combinaison des techniques d’optimisation et de l’intelligence artificielle distribuée pour la mise en place d’un système de covoiturage dynamique (Page 175-192)

III. Chapitre III

III.3. Une modélisation graphique innovante pour la mise en place d’une architecture

III.3.2. Subdivision du réseau géographique desservi : mise en place d’une architecture

) ( ) ( 1 , 2 , 1 1 1 1 * , , , jw jw e w V V j PI e w V V U Min TD Min W T TD p p p w j p w p w j p =

=

ω

+

ω

= =

La nécessité de cadrer avec les contraintes de correspondance entre les offres et les demandes ainsi que la gestion des conflits d’affectations possibles entre des usagers demandant un même itinéraire implique le fait que les solutions ainsi générées peuvent ne pas être optimales mais seulement optimisées. Par ailleurs, même si des solutions optimales ont pu être générées sur l’ensemble des itinéraires partiels, la recomposition de celles-ci n’induit pas forcément une solution optimale globale pour le trajet demandé.

Sur la base de la formulation et modélisations précédemment définies pour les données du système, un procédé de décomposition est proposé dans ce qui suit pour mettre en évidence la répartition difforme de ces données sur le réseau de covoiturage. Cette décomposition sera utile pour la distribution et décentralisation du procédé d’optimisation des affectations en parallèle.

III.3.2. Subdivision du réseau géographique desservi : mise en

place d’une architecture physique dynamique distribuée

Dans le but d’optimiser les traitements effectués par un système aussi complexe que le covoiturage dynamique optimisé, énoncé selon une précédente étude comme étant un problème NP-difficile (c.f. §II.3.2.) ; nous nous proposons d’élaborer une plateforme dynamique distribuée. La mise en place d’une telle plateforme favorise la décomposition du processus global initial en plusieurs tâches moins complexes. Ces tâches correspondraient au traitement d’itinéraires partiels et seront réalisées de manière décentralisée et en parallèle afin d’atténuer la complexité des traitements effectués en vue de réaliser l’affectation des voitures aux usagers en temps réel. Le principe de décomposition que nous proposons de mettre en place permet ainsi d’alléger l’impact des traitements à priori lourds sur la qualité du service fourni et les temps de réponse.

Pour ce faire et compte tenu de la modélisation détaillée précédemment, nous nous proposons de mettre en place une architecture « physique » distribuée établie à l’image de l’état courant du réseau géographique de desserte. Pour cela, nous nous sommes inspirés de quelques travaux existants évoquant le même principe et dont les modélisations proposées sont quelque peu semblables à la nôtre. Nous citons particulièrement les travaux relatifs aux problèmes de transport tels que ceux de (18), (2) et (69). Les approches proposées par ces derniers sont basées sur le concept de graphe dynamique distribué et mettent en place des

175 systèmes d’aide au déplacement des voyageurs. Les services fournis de par ces travaux sont particulièrement utiles puisqu’ils proposent des systèmes d’aide à la décision distribués dans un contexte d’optimisation des systèmes de transport. Les travaux conduits dans ce contexte traitent du problème de recherche d’itinéraires pour l’aide au transport des voyageurs et proposent des modélisations d’architectures distribuées en faveur de la décentralisation de processus.

Dans ce contexte, nous nous proposons de modéliser la représentation du réseau de desserte sous forme d’un graphe dynamique distribué mettant en place un procédé de décomposition de la modélisation précédemment définie. En effet, les données du système telles que précédemment formulées comme étant fortement dépendantes de la fonction temps, la modélisation choisie suit la variation de celles-ci démontrant les propriétés de dynamique du graphe représentatif du réseau de desserte. Celles-ci ayant été prouvées, nous nous concentrons dans ce qui suit sur le choix adéquat d’une stratégie de subdivision qui mette en exergue l’aspect distribué de ces données.

III.3.2.1. Subdivision : Principe et objectifs

Sur la base de l’objectif premier de nos travaux visant à mettre en place un service de covoiturage efficace et rapide, il est impératif que les performances du système soient à la hauteur des attentes des usagers. Il s’agit essentiellement de mettre à leur disposition un service qui permette de rechercher à leur place l’offre qui corresponde le mieux à leurs attentes tout en assurant l’efficacité des traitements.

Etant donné la complexité combinatoire des problèmes de covoiturage dynamiques optimisés, nous avons alors opté pour un choix qui porte sur la réduction du problème initial en un ensemble de sous-problèmes de moindre complexité. Ceci se traduit dans notre approche par une décomposition du processus d’affectation en plusieurs sous-processus légers (i.e. threads) exécutés en parallèle et envisagés comme des unités autonomes. Ces dernières sont créées conformément au principe de subdivision appliqué sur le réseau géographique de desserte. L’architecture logicielle définie par la suite est à l’image de la modélisation physique établie.

La modélisation sous forme de graphe dynamique proposée précédemment se base essentiellement sur les intrants du système, à savoir l’offre et la demande de covoiturage. Nous avons aussi choisi de nous concentrer sur les mêmes paramètres de notre système afin d’appliquer un procédé de décomposition dynamique sur le terrain où évoluent les voitures et

176 piétons, et ce en vue de mettre en exergue les zones de concentration des offres et demandes. Notre objectif premier étant d’en ressortir les aires géographiques impliquant plusieurs usagers, et ce en faveur du traitement parallèle des requêtes. En effet, rassemblées dans un périmètre restreint, les demandes et offres sont dotées d’une probabilité de ressemblance plus forte que si elles sont éloignées dans l’espace. Ceci nous aidera donc à mettre en évidence les similitudes entre les demandes et les offres aussi bien qu’entre les demandes elles-mêmes. Notre but premier étant d’alléger les traitements d’affectation et ainsi atténuer l’impact de sa complexité grandissante sur les performances du système au fur et à mesure que le flux des passagers et conducteurs augmente.

III.3.2.2. Propriétés des zones de décomposition

Le formalisme précédemment détaillé correspond à une modélisation conforme aux graphes dynamiques. La représentation que nous proposons est choisie de manière à modéliser, adéquatement, le réseau de desserte visualisé de par une cartographie réelle à l’aide de l’outil GPS intégré au niveau de notre système. Cette modélisation doit impérativement contenir toutes les données nécessaires aux traitements des requêtes et faire état de l’image du système de covoiturage à l’instant t considéré. En effet, pour une efficacité absolue, toute information existante est susceptible d’aider à la bonne réalisation du processus d’affectation et doit donc être représentée au niveau du modèle mis en place.

Par ailleurs, pour la décomposition du réseau de desserte, considérer un procédé efficace permettant d’englober l’ensemble des données disponibles tout en évitant les redondances d’information prime sur tout autre objectif. Nous nous proposons alors d’aboutir de par ce principe de subdivision à la création d’un ensemble de zones géographiques distinctes dont les principales caractéristiques sont les suivantes (52):

a. Similarité de forme :

Toutes les zones créées représentent des aires géographiques de formes et de dimensions similaires. En effet, chaque zone est déterminée en fonction d’un diamètre préfixé à l’avance par l’administrateur du système au niveau du paramétrage initial. Par conséquent, toutes les zones auront le même diamètre et donc la même surface. Nous voulons concrétiser de par cette propriété la conformité de toutes les parties du réseau à un modèle précis couvrant l’ensemble du territoire sur lequel sont dispersées les offres et demandes de covoiturage à l’instant t considéré.

177

b. Distinction des surfaces couvertes :

Toute zone possède son propre périmètre qui englobe un ensemble d’informations relatives aux demandes des covoiturés et/ou aux offres des covoitureurs. Ceci pour répondre à l’objectif premier du principe de subdivision proposé et qui concerne la mise en place d’une architecture logicielle distribuée à l’image de la modélisation du réseau réalisée lors de cette étape. En effet, à chaque zone correspondra une composante logicielle, plus ou moins indépendante, traitant de manière locale les données incluses dans chaque zone considérée. Un ensemble de composantes autonomes (ou semi-autonomes) est ainsi créé pour les zones établies. Elles s’exécutent en parallèle de manière à optimiser le traitement global du système.

c. Intersection sur un territoire commun :

Deux zones ou plus peuvent avoir des zones d’intersection communes. Ces dernières peuvent représenter un point unique ou plusieurs comme elles peuvent représenter une aire géographique vide. Les intersections de ces zones, dans ce cas, représentent simplement un territoire commun vierge, dénudé de toute information faisant partie des intrants du système comme le montre l’exemple au niveau de la Figure III.8.

Figure III.8. Terrain vierge commun à deux zones

d. Chevauchement des zones sur des données :

Deux zones ou plus peuvent se croiser tout en se partageant des données susceptibles d’aider à la bonne mise en œuvre du système ; à savoir des points de départs et/ou d’arrivées de covoitureurs et/ou covoiturés, des points intermédiaires repères de passage de véhicules, des nœuds de prise ou dépose de passagers, ou même des bouts d’itinéraires en commun tel que c’est le cas pour l’exemple illustré dans la Figure III.9.

178

Figure III.9. Intersection non vide de zones (point(s) et / ou route(s))

e. Traitement d’une requête exclusivement réservé à une seule zone :

La redondance et le partage de données au niveau des zones est utile puisque chacune des composantes créées a besoin de pouvoir communiquer avec ses voisines pour pouvoir traiter au mieux les requêtes des usagers localisés au niveau des zones considérées. Cependant, elle peut être conflictuelle dans le cas où deux zones ou plus se partagent des données sur les origines de requêtes d’usagers. Dans ce cas, les composantes responsables de ces zones se verront traiter les mêmes requêtes accaparant inutilement les ressources. Ceci peut induire à une lourdeur des traitements et donc à une régression des performances du système. Aussi, un accès simultané aux mêmes données et leur traitement parallèle par des entités logicielles différentes peut engendrer des conflits au niveau des affectations réalisées. Des affectations différentes portant sur les mêmes usagers ont ainsi une forte probabilité d’avoir lieu. Afin de remédier à ce problème, les algorithmes de décomposition que nous proposons de mettre en place affectent les origines et destinations des requêtes des utilisateurs une et une seule fois, d’une part afin d’éviter les traitements inutiles, et d’autre part pour mieux cerner le problème et couvrir tout le réseau géographique avec un nombre minimum de zones géographiques. Celles-ci doivent alors être le plus dispersées possible, avoir de petites intersections tout en couvrant toutes les informations existantes. Ces informations, relatives aux données sur les usagers transitant au niveau du système font l’objet d’un traitement distribué sur les zones érigées. D’où l’utilité de distinguer l’appartenance de ces données en exclusivité à une zone bien déterminée, et ce afin d’éviter les pièges conflictuels d’affectations multiples de piétons, ou non faisables de voitures et ainsi veiller à la bonne marche du système dans le but essentiel de réaliser des affectations dynamiques optimisées et efficaces.

179

f. Techniques de classification non supervisée pour la subdivision :

Une zone est définie en fonction d’un nombre de points voisins dans le réseau spatio-temporel dans le cadre duquel le processus est conduit. En effet, à l’instant t, l’ensemble des points (i.e. nœuds précédemment définis) voisins en terme de distance et ayant lieu d’être considérés au moment de la création des zones sont à la base de l’établissement d’une zone spécifique. Dans ce contexte, nous nous sommes particulièrement intéressés aux méthodes de classification33 de données suivant un ou plusieurs critères de rapprochement pour la création de nuages de points. Il s’agit dans ces méthodes et plus particulièrement dans la « classification non supervisée »34 de créer un ensemble de k classes où chacune correspond à un ensemble d’individus. Les aires géographiques de plus ou moins forte densité sont alors à l’origine de la création de « clusters » auxquels on associe des étiquettes de classe. Les classes ainsi définies sont associées, dans notre étude, aux zones dont deux types sont discernés sur la base de la nature de l’information manipulée (c.f. § III.3.2.3). Les observations disponibles sur le réseau sont, par la suite, analysées et étudiées sur la base d’un critère bien déterminé, ici la distance ; et ce afin de pouvoir par la suite les rassembler en un ensemble de classes de voisins proches dans l’espace.

g. Une zone est un cluster : espace de recherche limité

Le réseau de desserte que nous modélisons est réduit à un espace bidimensionnel où l’information dont nous disposons se présente comme étant un ensemble de données relatives à des points géographiques. Ces points qui sont les individus, objets de classification, correspondent à des nœuds (adresses d’origines, destinations de déplacements, etc.) représentés par leurs coordonnées GPS (i.e. Longitude et Latitude). L’ensemble de ces données, constituant les observations du système, peut ainsi faire l’objet d’une classification où le caractère dominant de séparation est la distance entre chaque deux nœuds d’une population faisant partie d’un même cluster. Une classe réelle, sous-jacente occupe ainsi une région limitée du plan espace-temps représentant le réseau de desserte. Chaque classe ainsi constituée est relative à un ensemble de nœuds proches (i.e. voisins dans l’espace) observés de par la modélisation graphique précédemment détaillée. La représentation adoptée, détaillée dans un premier temps, est susceptible d’être décomposée et ainsi donner lieu à une multitude de clusters (i.e.

33 http://atlas.irit.fr/TETRALOGIE/annexeA.htm

34

180 zones). Dans notre cas, il s’agit d’un ensemble de zones bâties par le biais d’un principe de décomposition inspiré des techniques de classification et détaillé dans une section ultérieure (c.f. § III.3.2.3)

h. Classification floue et dynamique

Comme nous l’avons précédemment observé, deux zones ou plus peuvent se chevaucher et se partager un ou plusieurs individus (i.e. nœuds) avec des degrés d’appartenance différents et dont la somme est égale à 1 (118). Cela sous-entend que deux zones ou plus peuvent se partager des connaissances sur un ensemble de données communes. Par ailleurs, s’il s’agit de requêtes de covoiturés, le traitement en est exclusivement réservé à une zone et une seule ; probablement celle à laquelle appartient le degré d’appartenance le plus fort. Partant de ce principe, nous nous plaçons alors dans le cadre d’une classification non supervisée floue (119) où le nombre de groupes est à priori inconnu et doit être défini grâce à l’algorithme de décomposition. Aussi, étant placés dans le cadre d’un service de covoiturage dynamique où des offres et demandes peuvent survenir à n’importe quel moment, il est impératif de considérer l’évolution du nombre d’individus pour une continuelle mise à jour des classes ainsi établies. Le nombre même des clusters peut évoluer au fur et à mesure de l’évolution des traitements et donc au cours de l’exécution du processus d’affectation ou même durant le procédé de décomposition.

i. Zone de forme circulaire :

Chaque zone est associée à une région d’observations « similaires » selon le critère fixé (i.e. proches dans l’espace selon une distance fixe prédéfinie au préalable). De multiples tentatives nous ont conduits, dans la majorité des cas, à une ébauche sur la construction de zones dynamiques en matière de forme pour qu’elles puissent intégrer de nouvelles données et s’élargir en conséquence. Cependant, l’expansion dynamique et progressive des zones implique une forte tendance vers l’élargissement des espaces de recherche, le chevauchement des zones pouvant aller jusqu’à une superposition totale, et donc des traitements lourds, redondants rendant inutile le principe de décomposition. Chose qui viendra entraver notre principal objectif qui est de contrecarrer la complexité exponentielle du problème de CDO. Sur la base de ces limites et impacts négatifs d’un choix portant sur les formes dynamiques, une zone, construite à un intant t donné, est

181 donc assimilée à un espace géographique de forme circulaire figée et fixe. Elle est dotée des paramètres suivants :

o Cardinal

( )

N

( )

t : le nombre d’individus qui y sont inclus à l’instant t considéré o Centre

( )

C : le centre de la zone i Z . i

o Rayon (r ) : le rayon de la zone i Z . Ce rayon est le même pour toutes les zones i

établies pour assurer leur conformité et aussi une bonne dispersion équitable des données entre celles-ci. La distance, terme de vérification de l’appartence des nœuds au cluster, est à notre sens fixe. Ceci, entre autre, par souci d’équité au niveau de la distribution des tâches sur les entités logicielles responsables chacune de traiter une zone bien déterminée.

j. Zone : calcul des centres

A partir de l’ensemble de voisins déterminés à chaque itération de l’algorithme de subdivision détaillé plus tard, les propriétés de chacune des classes créées sont ainsi définies, essentiellement son centre et son rayon. A partir de ces paramètres, de nouvelles populations peuvent être créées déterminant ainsi l’espace de connaissances de chacune des zones (« classes ») identifiées (119). Le centre de la zone est calculé de sorte à ce qu’il soit le point représentatif (i.e. isobarycentre ») des points les plus éloignés de l’ensemble considéré. Plusieurs cas de figure peuvent avoir lieu d’être et doivent donc être considérés selon que l’ensemble des voisins déterminés contient un seul, deux, trois nœuds ou plus. Ces cas sont expliqués dans ce qui suit :

o La population de nœuds voisins déterminée contient un seul nœud éloigné du reste des points du réseau à une distance strictement supérieure au diamètre préfixé au niveau du système. La Figure III.10 montre le cas du traçage d’une zone pour un point unique qui est lui-même le centre de celle-ci.

182

Figure III.10. Calcul des centres pour une zone contenant un point unique

o Si les points voisins sont au nombre de deux et qu’aucun nœud n’appartient au périmètre de la zone incluant la paire de nœuds ainsi définie, le centre de la zone les incluant est alors calculé comme étant le milieu de la droite qui relie les deux points en question. Un exemple en est montré à la Figure III.11.

Figure III.11. Calcul des centres pour une zone contenant 2 points

La zone ainsi tracée est, par conséquent, établie sur la base du point équidistant calculé à partir des deux nœuds donnés et de leur voisinage, au départ, vierge. Cependant, l’espace de connaissance d’une zone peut évoluer pour inclure d’autres nœuds relatifs à de nouvelles offres ou demandes de covoiturage. si celles-ci arrivent à parvenir au système, elles doivent, en effet, être prise en compte instantanément et intégrées au traitement. Par ailleurs, une fois le centre établi, la zone est définitivement construite et ses propriétés (les centre et périmètre) demeurent inchangés jusqu’à la fin du processus.

183 o Si l’ensemble des voisins a pour taille 3 ou plus

(

Cardinal(N)≥3

)

, alors le centre de la zone contenant l’ensemble de ces nœuds (i.e. individus) est le centre de gravité du triangle dont les sommets sont représentés par les points les plus distants de cet ensemble. Le centre de cette zone est donc déterminé comme tracé au niveau de la Figure III.12. Il s’agit en effet du centre de gravité identifié comme étant l’isobarycentre des trois sommets et le centre de masse de l’intérieur du triangle. Ce point se trouve aux deux-tiers de chaque médiane en partant du sommet. Les individus choisis comme sommets du triangle sont ceux qui présentent les plus grandes distances parmi celles calculées sur toute la population de nœuds voisins deux à deux.

Figure III.12. Calcul des centres et création des zones : ensembles de 3 voisins ou plus

Ainsi, pour un nœud unique au sein de l’ensemble, le centre est le nœud lui-même. Dans le cas de deux nœuds, le milieu de la droite passant par les deux nœuds en question est considéré comme étant le centre de la zone. Dans le cas de trois nœuds ou plus, le centre du cercle les

Dans le document Combinaison des techniques d’optimisation et de l’intelligence artificielle distribuée pour la mise en place d’un système de covoiturage dynamique (Page 175-192)