probleme du postier chinois « chinese postman problem » ( ccp)

20
UNIVERSITÉ DES SCIENCES ET DE LA TECHNOLOGIE D’ORAN « MOHAMED BOUDIAF » PROBLEME DU POSTIER CHINOIS « CHINESE POSTMAN PROBLEM » ( CCP) Présenté par: SARI OMAR M1 S1 G5 ** T.I.C ** Professeur : Mr hamdaoui Promoti on 2011/20

Upload: valmai

Post on 24-Feb-2016

129 views

Category:

Documents


0 download

DESCRIPTION

PROBLEME DU POSTIER CHINOIS « CHINESE POSTMAN PROBLEM » ( CCP). Université des Sciences et de la Technologie d’Oran « Mohamed Boudiaf ». Présenté par: SARI OMAR M1 S1 G5 ** T.I.C ** . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

UNIVERSITÉ DES SCIENCES ET DE LA TECHNOLOGIE D’ORAN « MOHAMED BOUDIAF »

PROBLEME DU POSTIER CHINOIS « CHINESE POSTMAN PROBLEM » ( CCP)

Présenté par:SARI OMAR M1 S1 G5** T.I.C **

Professeur :Mr hamdaoui

Promotion 2011/2012

Page 2: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

PLAN DE TRAVAIL

DISCRIPTION DU PROBLEME• COMPLIXITE• APPLICATION

MODELISATION• DEFINITION• FORMULATION• METHODE DE RESOLUTION

• EXEMPLE DISCRIPTION DU PROBLEM MODELISATION D’UNE VILLE RESOLUTION DU PROBLEM COMPLIXITE

INTRODUCTION• objectifs.

CONCLUSION & PERSPICTIVE

Page 3: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Introduction

La recherche opérationnelle (RO) vise à l'amélioration du fonctionnement des entreprises et des organismes publics par l'application de l'approche scientifique. Reposant sur l'utilisation de méthodes scientifiques, de techniques spécialisées et des ordinateurs, la RO permet d'obtenir une évaluation quantitative des politiques, stratégies et actions possibles dans le cours des opérations d'une organisation ou d'un système. Le problème du postier chinois (CPP) est bien connu et résolu dans sa version classique. Petit à petit, des contraintes supplémentaires sont venues s'ajouter pour obtenir une meilleure modélisation du monde réel. Ainsi, nous avons le problème du postier chinois asymétrique (PPCA) ou le cout de traversée de l'arête diffère suivant le sens du parcours, le problème du postier rural (PPR) et le problème du postier hiérarchique (PPH).

Ce rapport est consacré à présenter un problème du postier chinois CPP (Chinese Postman Problème) sur un graphe connexe non dirigé.

Objectifs

Reconnaître le problème du postier chinois. Comprendre et appliquer l’algorithme du facteur chinois

Page 4: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

DISCRIPTION DU PROBLEME Etant donné un graphe connexe G = (V,E), le problème CPP (Chinese Postman Problem) consiste à trouver une tournée de cout total minimal qui passe par toutes les arêtes ou arcs, chacune au moins une seule fois. Les méthodes de résolution exploitent la remarque suivante : le cycle recherché correspond à un cycle eulérien dans un multi-graphe G’ = (V, E’), comprenant les arêtes originales plus les copies d'arêtes nécessaires pour avoir un graphe eulérien, c'est-à-dire pour rendre pair le degré de chaque nœud. Ainsi, le UCPP revient à construire un graphe eulérien G’ minimisant le coût total des copies.

COMPLEXITE Le problème du postier chinois est résoluble en temps polynomial si le graphe est orienté ou non orienté. Dans le cas d’un graphe mixte, il devient NP-difficile.

Page 5: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

APPLICATION  Les différentes versions des problèmes de tournées de véhicule modélisent un nombre important d'applications réelles ,qui peuvent être intéressantes dans les deux domaines publique et privé. Pour cette raison ce problème a été très étudié par les chercheurs surtout dans les dernières années. On citera quelques diverses applications :

 Calendrier aérien (Airline Scheduling) Cette application peut se modéliser en un problème de tournées sur arcs. Plus précisément, quand il s'agit de la planification du calendrier des avions sur les routes de vol (en anglais c'est "scheduling of planes to flight legs") et de la planification de l'équipage ("scheduling of crew"). Dans le graphe du modèle, chaque nœud représente une destination et chaque arc représente une route de vol. Plusieurs contraintes peuvent être considérées dans cette modélisation directe du problème, comme la capacité de routes de vol en avions, les horaires de départ et d'arrivée des avions, contraintes de temps de rester sur place, etc. Dans cette application, les coûts sont très élevés en comparant aux autres applications de problème CARP(Capacitated Arc Routing Problem), ce qui rend une réduction très élevée au niveau de millions des dollars de revenus pour les compagnies aériennes, d'où l'importance de traiter ce problème.

Page 6: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Relevé des compteurs électriques (Electric Meter Reading) Nous rencontrons cette application dans des organismes de service publiques et municipaux dans certains pays. Elle se produit, périodiquement, quand il s'agit de recueillir des données d'une maison en maison par des lecteurs à fin d'établir les factures individuelles. Les lecteurs sont transportés vers le début de leur parcours, travaillent pour un nombre d'heures et sont libres de quitter après. Pour minimiser le coût du travail, les entreprises veulent minimiser les temps morts-position, et donc, minimiser le nombre de travailleurs.Cette application alors, peut se modéliser comme un problème CARP, parce qu'il s'agit d'organiser les tournées des lecteurs en supposant le temps de la lecture de chaque compteur est limité.

  d’autres Applications

la distribution des lettres. le ramassage des poubelles (la collecte des ordure). le nettoyage des rues. le déneigement des rues. La surveillance de la patrouille de police. l’ordinateur qui dessine le traçage d’un réseau (ou ploter mécanique).….. Dans ce rapport on a pris  la collecte des ordures” comme exemple à modélisé .‟

Page 7: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

MODELSATON Idée

Rendre le graphe «eulérien» en ajoutant un nombre d’arêtes dont la longueur totale est minimale.

Définition (ucpp)

La variable Xij est le nombre de copies de l'arête (i,j). La fonction objectif est le coût total du parcours à une constante près (le coût total des arêtes). Les contraintes stipulent que le nombre de copies incidentes à un nœud i doit être pair si et seulement si le nœud est pair. Pij : le poids de l’arête (i; j).A :ensemble des arêtes de G*.σ(i) = ensemble des arêtes incidentes au sommet vi.V = ensemble de nœuds du graphe G.T = ensemble des nœuds de degré impair appartenant à V.

Page 8: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

MODELSATON Formulation En 1973 Edmonds et Johnson ont montré que le problème peut se formuler par le programme linéaire suivant. La variable xij est le nombre de copies de l'arête (i,j). La fonction objectif est le coût total du parcours à une constante près (le coût total des arêtes).

Minimiser

sous réserve de =

Xij   (Vi,Vj) AOù Pij = le poids de l’arête (i; j)Xij = nombre de copies de l’arête (i; j)A = ensemble des arêtes de G*vi = sommet i et vj = sommet j(i) = ensemble des arêtes incidentes au sommet viV = ensemble de noeuds du graphe GT = ensemble des noeuds de de degré impair appartenant à V

Page 9: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

MODELSATON

METHODE DE RESOLUTION Un graphe est eulérien si on peut parcourir toutes les arêtes une et une seule fois en partant d’un sommet et en y revenant.  

Si le graphe de la ville est eulérien, la solution optimale est directement trouvée en parcourant le graphe à partir du

dépôt. Sinon,

notre algorithme va trouver les rues qu’il faut parcourir plusieurs fois pour que le chemin soit optimal.

Page 10: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

ALGORITHME OPTIMAL (EXACTE)  L’ALGORITHME DU FACTEUR CHINOIS (FC) (1967) :

Input : graphe G connexe et non orienté

1) L’ensemble S de sommets impair.2) pour chaque paire de sommets (u,v) ds S.

Trouver le chemin le plus court P dans G entre (u, v) (Algorithme de Djikstra). Soit d(u, v) la longueur de ce chemin P.

3) Créer un graphe complet K avec les sommets de S.4) Pour chaque arête e de K, Assigner à l’arête e la longueur d(u ,v) où u et v sont les extrémités de

e.5) Trouver le couplage parfait M dans K pour que le poids total soit minimum (Algorithme hongrois).6) Pour chaque arête e dans M

Reprendre P correspondant au chemin le plus court entre les extrémités de e. Pour chaque arête f de P, ajouter au graphe G une copie de f avec sa longueur

7) Soit G* un graphe eulérien formé en ajoutant à G les arêtes dupliquées au point précédent.8) Construire un cycle eulérien W dans G* (Algorithme de Fleury) .9) Le cycle eulérien W correspond au chemin optimal du problème du facteur Chinois du graphe G de

départ .

Page 11: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Exemple ( collecte des ordures )

Description du problème

La ville a décidé de faire des économies. Notre camionneur doit parcourir à partir du dépôt toutes les rues de la ville pour ramasser les poubelles et de manière minimale, pour ne pas gaspiller du mazout ni du temps et revenir au dépôt. Le problème n’est pas aussi facile qu’on pourrait l’imaginer…

MODELISATION D’UNE VILLE  Un graphe est une structure de données constituée d’arêtes modélisant les routes et de sommets modélisant les carrefours. Les arêtes ont un coût représentant la distance entre deux carrefours.

Page 12: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

MODELISATION D’UNE VILLE

6

Page 13: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Soit G, le graphe suivant

1).Trouver l’ensemble S des sommets impairs.

S ={A,C,E,D} où d°(A) = d°(C) = d°(E) = 3 et d°(D) = 5.

2). Pour chaque paire de sommets (U,V ) Є S, trouver le chemin le plus court entre U et V dans G. (Alg Djistkra).

d(A,C) = d(A,B) + d(B,C) = 4 + 7 = 11 , d(C,E) = 9 .d(A,D) = d(A,B) + d(B,D) = 4 + 6 = 10 , d(C,D) = 5.d(A,E) = d(A,F) + d(F,E) = 3 + 6 = 9 , d(D,E) = 4.

3 & 4). Construire un graphe complet K avec les sommets appartenant à S. Le poids de l’arête entre chaque sommet est la distance calculée précédemment .

A

F E

D

CB4

310

7

7 126

109

5

6_ Graphe G_

A

E

D

C

10

4

5

9

11

4

_ Graphe complet K _

Page 14: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

5). le couplage parfait M ? construire un graphe bipartie K’ avec les sommets de K.

-Aplliqué l’Algorithme Hangrois.

A’ C’ D’ E’ A 100 11 10 9

C 11 100 5 9

D 10 5 100 4

E 9 9 4 100

A E

DC

E’A’

C’ D’

119 10

119

4

104

9

5 5

_ Graphe bipartie K’ _

9

A’ C’ D’ E’

A 100 11 10 9

C 0 100 5 9

D 0 0 100 4 E 0 0 0 100

Page 15: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

A’ C’ D’ E’

A 100 7 6 5

C 0 100 1 5

D 0 0 100 0

E 0 0 0 100

A’ C’ D’ E’

A 100 2 1 0

C 0 100 0 4

D 0 0 100 0

E 0 0 0 100

A’ C’ D’ E’

A 100 0 1 0

C 0 100 0 4

D 0 0 100 0

E 0 0 0 100

A’ C’ D’ E’

A 100 0 1 0

C 0 100 0 4

D 1 0 100 0

E 0 4 0 100

Page 16: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

A’ C’ D’ E’

A 100 0 1 0

C 0 100 0 4

D 1 0 100 0

E 0 4 0 100

A’ C’ D’ E’

A 100 0 1 0

C 0 100 0 4

D 1 0 100 0

E 0 4 0 100

on ne peut pas le choisir car

d(A,C) > d(A,E)

donc Le couplage de poids minimum est le couplage A,E et C,D, de poids 9 + 5 = 14

A

E

D

C

10

4

5

9

11

4

_ Graphe complet K _

A’ C’ D’ E’

A 100 0 1 0

C 1 100 0 4

D 1 0 100 0

E 3 4 0 100

Page 17: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

6 & 7). Transformer le graphe G en un graphe eulérien G*, en doublant les arêtes du chemin le plus court entre les sommets du couplage réalisé

A

F E

D

CB4

3 10

7

7 12

6

109

5

6

_ Graphe eulérien G*_

5

6

3

8 & 9). Trouver le chemin eulérien qui parcourt toutes les arêtes de G* en appliquant L’algorithme de Fleury. Le chemin eulérien parcourt les sommets tel quel : A, B, C, D, E, F, A, D, B, F, D, C, E, F, A.

Page 18: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Complexité

Lorsqu’il s’agit d’un graphe eulérien, la complexité est en O(jEj). Dans le cas général, on utilise l’algorithme de Dijkstra sur chaque sommet :la complexité totale est de O log ) ).et On utilise ensuite l’algorithme (⃓E⃓ (⃓E⃓ ⃓V⃓hongrois dont la complexité est de O( ). L’étape 6 s’effectue en O( ) et la complexité du chemin eulérien est en O ). Ceci nous amène à une complexité (⃓E⃓totale de O ( ).

Page 19: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Conclusion

Les Algorithmes étudiés dans ce rapport ne résout pas tous les cas, ils sont valables que pour les graphes non- orientés, Le problème du postier chinois (CPP ou Chinese Postman Problem) est résoluble en temps polynomial si le graphe est orienté ou non orienté. Dans le cas d’un graphe mixte, il devient NP-difficile.

Perspectives

Il y’a une possibilité de trouver d’autre algorithme plus efficace qui résout tous les cas y compris pour les graphes orientés, Mixte ….

Page 20: PROBLEME  DU POSTIER CHINOIS      « CHINESE POSTMAN PROBLEM »                             ( CCP)

Merci Pour Votre Attention