PFA Optimisation des Trajets de Collecte

Slides:



Advertisements
Présentations similaires
Chap. 4 Recherche en Table
Advertisements

Chapitre annexe. Récursivité
Algorithmes et structures de données avancés
GEF 435 Principes des systèmes d’exploitation
Problème de 8 dames: Sachant que dans un jeu des échecs, une dame peut pendre toute pièce se trouvant sur la colonne ou sur la ligne ou sur les diagonales.
Equipe optimisation TempoSoft
A.Faÿ 1 Recherche opérationnelle Résumé de cours.
INTRODUCTION.
Génération de colonnes
Traitement Co-Séquentiel: Appariment et Fusion de Plusieurs Listes
UNIVERSITE DES SCIENCES ET DE LA TECHNOLOGIE D’ORAN
Cours 7 - Les pointeurs, l'allocation dynamique, les listes chaînées
Structures de données linéaires
Eric Guilbert, Marc Daniel *, Eric Saux
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
Algorithmique et Programmation
Algorithmes Branch & Bound
Heuristiques A. Introduction B. Recherche d ’une branche
Groupe 1: Classes de même intervalle
La segmentation
Bases de données lexicales
RECONNAISSANCE DE FORMES
FICHIERS : Définition : Algorithme général:
Les fichiers indexés (Les B-arbres)
Algorithme de Bellman-Ford
IFT-2000: Structures de données Les graphes Dominic Genest, 2009.
PFA Optimisation des Trajets de Collecte
LA VALEUR ÉCONOMIQUE AJOUTÉE (VÉA)
Programmation linéaire en nombres entiers Algorithme de la subdivision successive («Branch and Bound Algorithm»)
Génération d’un segment de droite
Gestion de Fichiers Tri Interne Efficace et Tri Externe.
Algorithmes d ’approximation
Recherche Opérationnelle
Gestion de Fichiers GF-10: Traitement Co-Sequentiel: Appariment et Fusion de Plusieures Listes (Base sur les sections de Folk, Zoellick & Riccardi,
Calcul des groupes d'homologie d’objets discrets
Programmation dynamique
Pour le chemin le plus court pour tous les couples
Programmation linéaire en nombres entiers : les méthodes de troncature

Graphes 1. Introduction 2. Définition 3. Représentation mémoire
Projet Télédétection Vidéo Surveillance Deovan Thipphavanh – Mokrani Abdeslam – Naoui Saïd Master 2 Pro SIS / 2006.
On cherche le plus court chemin de E à S sur le graphe suivant :
Optimisation par les algorithmes génétiques
Optimisation des Trajets de Collecte
Programmation linéaire en nombres entiers
Algorithmes Branch & Bound
STATISTIQUES – PROBABILITÉS
Cours 4 - Trois algorithmes de recherche dans un tableau
Que sont les fichiers de mobilité de l’INSEE?
GF-11: Tri Interne Efficace et Tri Externe
Analyse spectrale Raphaël ARROUAS Etienne OUSS
Structures de données avancées : LH (Hachage linéaire) D. E ZEGOUR Institut National d ’Informatique.
Mercredi 22 avril 2015Page 1 PFA Optimisation des Trajets de Collecte Réalisé par : Eymat Loïc Grange Benoît Fournier Jérémy Moutmir Hamza Garon Sébastien.
Recherche de motifs par projections aléatoires
Dr. MOKEDDEM République Algérienne Démocratique et Populaire
Algorithme de DIJKSTRA
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
1 Gestion des voitures médecins d'Urgences-Santé Michel Gendreau Émilie Frot¹ Gilbert Laporte Frédéric Semet¹ Centre de recherche sur les transports Université.
La pile de crêpes.
INTRODUCTION AUX BASES DE DONNEES
Problème du Car Sequencing
CSI25101 Tri Plus efficace. CSI25102 Tri récursif Le tri récursif divise les données de grande taille en deux presque moitiés et est appelé récursivement.
TP n°3 – Implantation d’un atelier de mécanique avec le logiciel Impact   Une entreprise de décolletage souhaite aménager une zone stockage produit fini.
Algorithmique Boucles et Itérations
▪ IUT de calais-boulogne ▪ IUT Calais-Boulogne Département Informatique Rue Louis David - BP 689 – Calais Cedex Tel : Fax :
Tests relatifs aux variables qualitatives: Tests du Chi-deux.
Scénario Quatre hipsters entrent en collision un dans l'autre dans un ascenseur plein de personnes. En conséquence ils laissent tomber leurs téléphones.
Quelques point de repère pour élaborer une progression concernant la technique opératoire de la division euclidienne (CM1 et CM2) I Rappels pour l’enseignant.
Algorithmes Branch & Bound Module IAD/RP/RO Master d ’informatique Paris 6 Philippe Chrétienne.
M. BENJELLOUN : 2005 Le but final est de programmer un jeu où l'ordinateur choisira un nombre aléatoire entre 0 et 100 que vous devez deviner.
Transcription de la présentation:

PFA Optimisation des Trajets de Collecte Réalisé par : Eymat Loïc Grange Benoît Fournier Jérémy Moutmir Hamza Garon Sébastien Senhaji Mohammed Responsable pédagogique : Pellegrini François Responsables scientifiques : Sopena Eric et Dussech Bruno mardi 11 avril 2017 Page 1

Plan Présentation du projet Approche théorique et solutions proposées Contexte du projet Analyse de l’existant Approche théorique et solutions proposées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 2

Contexte du projet (1) Ce projet s’inscrit dans le cadre du projet de fin d’année à l’ENSEIRB. Le projet est proposé par le LaBRI dans le but de développer une plate-forme logicielle à destination des professionnels de la collecte des déchets ménagers pour la société ECOBOX. mardi 11 avril 2017 Page 3

Contexte du projet (2) Le but du projet est de fournir une bibliothèque de fonctions permettant d’optimiser le trajet de collecte des bennes à ordures. Notre projet se découpe en deux parties : Constituer des zones de ramassage à partir de tronçons de ramassage ; Puis déterminer un cycle qui minimisera le trajet entre les zones, le cycle étant découpé en morceaux que nous appellerons tournées. mardi 11 avril 2017 Page 4

Analyse de l’existant Zones : Cycle : Nécessité d’adapter ces algorithmes et implémenter l’algorithme « KMEANS » . Éventuellement rechercher d’autres algorithmes permettant de résoudre les même problèmes. Cycle : Les algorithmes « RAI » et « Hongrois », permettant de créer le cycle, ont déjà été implémentés et ont été fournis par le client lors du démarrage du projet. mardi 11 avril 2017 Page 5

Plan Approche théorique et solutions proposées Présentation du projet Constitution de zones Présentation de l’algorithme « KMEANS » Adaptation au problème Choix des centres Problèmes rencontrés Constitution de cycles Présentation de l’algorithme « Hongrois » Présentation de l’algorithme « RAI » Constitution de tournées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 6

Constitution de zones Regrouper des points proches en entités appelées « zone » But : diminuer le nombre d’entités manipulées lors de la constitution d’un cycle Algorithme employé : KMEANS mardi 11 avril 2017 Page 7

KMEANS – Présentation Partitionne un groupe de points en K sous-groupes Fabrique des zones qui minimisent la somme des distances des points au centre de la zone Utilise le « coût » entre les points pour effectuer ce travail mardi 11 avril 2017 Page 8

KMEANS – Fonctionnement mardi 11 avril 2017 Page 9

KMEANS – Fonctionnement Choisir aléatoirement K points qui représenteront les centres de zone Attacher chaque point à la zone dont le centre est le plus proche en terme de « coût » Calculer le nouveau centre de chaque zone Réitérer les étapes 2. et 3. jusqu’à stabilité des zones mardi 11 avril 2017 Page 10

KMEANS – Fonctionnement Carte des points Choix des centres mardi 11 avril 2017 Page 11

KMEANS – Fonctionnement Choisir aléatoirement K points qui représenteront les centres de zone Attacher chaque point à la zone dont le centre est le plus proche en terme de « coût » Calculer le nouveau centre de chaque zone Réitérer les étapes 2. et 3. jusqu’à stabilité des zones mardi 11 avril 2017 Page 12

KMEANS – Fonctionnement Ajout des points Le coût inter-points est ici la distance euclidienne On raccroche chaque point au centre le plus proche mardi 11 avril 2017 Page 13

KMEANS – Fonctionnement Choisir aléatoirement K points qui représenteront les centres de zone Attacher chaque point à la zone dont le centre est le plus proche en terme de « coût » Calculer le nouveau centre de chaque zone Réitérer les étapes 2. et 3. jusqu’à stabilité des zones mardi 11 avril 2017 Page 14

KMEANS – Fonctionnement Calcul du nouveau centre Cercles : zones précédemment construites Points rouges : centres inchangés Points verts : centre différent mardi 11 avril 2017 Page 15

KMEANS – Fonctionnement Choisir aléatoirement K points qui représenteront les centres de zone Attacher chaque point à la zone dont le centre est le plus proche en terme de « coût » Calculer le nouveau centre de chaque zone Réitérer les étapes 2. et 3. jusqu’à stabilité des zones mardi 11 avril 2017 Page 16

KMEANS – Fonctionnement Fin de l’algorithme Stabilité atteinte Les centres des zones ne bougent plus Les points sont rattachés aux même zones mardi 11 avril 2017 Page 17

KMEANS – Adaptation au problème Nombre de zones initial inconnu Trouver une alternative au choix aléatoire des centres initiaux Déterminiser ce choix Faire un choix cartésien Nombre de zones doit pouvoir varier durant l’exécution Division des zones de poids ou coût trop grands Fusion des zones de poids ou coût trop faibles mardi 11 avril 2017 Page 18

KMEANS – Adaptation au problème Estimation du nombre de zones initial N en fonction du poids : Soit S la somme des poids des points de la carte Soit M le poids maximum d’une zone (fournit en paramètre) N = S / M mardi 11 avril 2017 Page 19

KMEANS – Adaptation au problème Nombre de zones initial inconnu Trouver une alternative au choix aléatoire des centres initiaux Déterminiser ce choix Faire un choix cartésien Nombre de zones doit pouvoir varier durant l’exécution Division des zones de poids ou coût trop grands Fusion des zones de poids ou coût trop faibles mardi 11 avril 2017 Page 20

KMEANS – Adaptation au problème Choix pseudo-aléatoire des centres initiaux Utilisation du générateur pseudo-aléatoire rand() de la librairie C Déterminisation des valeurs générée avec la fonction srand() avec un paramètre fixé à l’avance mardi 11 avril 2017 Page 21

KMEANS – Adaptation au problème Nombre de zones initial inconnu Trouver une alternative au choix aléatoire des centres initiaux Déterminiser ce choix Faire un choix cartésien Nombre de zones doit pouvoir varier durant l’exécution Division des zones de poids ou coût trop grands Fusion des zones de poids ou coût trop faibles mardi 11 avril 2017 Page 22

KMEANS – Adaptation au problème Quadrillage de la carte pour le choix des centres initiaux Calcul du rectangle encadrant l’ensemble des points Quadrillage en fonction du nombre de zones initial Les intersections représentent les centres initiaux « fictifs » des zones Fabrication des zones avec ces centres « fictifs » et avec comme coût inter-points la distance euclidienne Calcul du nouveau centre de chaque zone mardi 11 avril 2017 Page 23

KMEANS – Adaptation au problème Quadrillage et zones fictives Calcul des nouveaux centres mardi 11 avril 2017 Page 24

KMEANS – Adaptation au problème Nombre de zones initial inconnu Trouver une alternative au choix aléatoire des centres initiaux Déterminiser ce choix Faire un choix cartésien Nombre de zones doit pouvoir varier durant l’exécution Division des zones de poids ou coût trop grands Fusion des zones de poids ou coût trop faibles mardi 11 avril 2017 Page 25

KMEANS – Adaptation au problème Division d’une zone en cas de : Poids trop grand Le nouveau centre est le centre des points de la zone initiale privée de son centre Coût trop grand Le nouveau centre est le points le plus éloigné du centre de la zone initiale en terme de coût inter-points mardi 11 avril 2017 Page 26

KMEANS – Adaptation au problème Poids trop grand Coût trop grand mardi 11 avril 2017 Page 27

KMEANS – Adaptation au problème Nombre de zones initial inconnu Trouver une alternative au choix aléatoire des centres initiaux Déterminiser ce choix Faire un choix cartésien Nombre de zones doit pouvoir varier durant l’exécution Division des zones de poids ou coût trop grands Fusion des zones de poids ou coût trop faibles mardi 11 avril 2017 Page 28

KMEANS – Adaptation au problème Fusion d’une zone Poids ou Coût trop petit ET Proche d’une autre zone Empêche la fusion de zones isolées mardi 11 avril 2017 Page 29

On arrive donc à un algorithme KMEANS « dynamique » mardi 11 avril 2017 Page 30

KMEANS – Problème rencontré Boucle dans l’exécution Division et fusion successives sur le même ensemble de zones Solution : détecter les configurations de zone similaires durant l’exécution de l’algorithme mardi 11 avril 2017 Page 31

KMEANS – Problème rencontré Détection des redondances de l’algorithme Utilisation d’une fonction de hachage de la liste des zones Ne doit dépendre que du centre de chaque zone Stockage du haché de chaque tour dans un tableau pour comparaison Tableau de taille le nombre de tour maximum prévu Si redondance détectée, arrêt de l’exécution dans un état final On arrête l’exécution avec toutes les zones correctement construites mardi 11 avril 2017 Page 32

Plan Approche théorique et solutions proposées Présentation du projet Constitution de zones Présentation de l’algorithme « KMEANS » Adaptation au problème Choix des centres Problèmes rencontrés Constitution de cycles Présentation de l’algorithme « Hongrois » Présentation de l’algorithme « RAI » Constitution de tournées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 33

Construction de cycles Une fois les zones construites, le but est de constituer un chemin de collecte dont le cycle est minimal. Ce problème est également connu sous le nom de ATSP (Asymetric Travelling Salesman Problem). Nous avons implémenté deux solutions à ce problème : Un premier algorithme, appelé algorithme Hongrois construit une matrice de 1 et de 0 (les 1 montrent l’adjacence des deux zones) telle que la somme des coûts où se situent les 1 soit minimal. Un deuxième appelé RAI construisant un cycle par ajout/suppression de zones à un cycle considéré comme étant minimal. mardi 11 avril 2017 Page 34

Présentation de l’algorithme « Hongrois » (1) Explication sur un exemple : Matrice des coûts entre zones initiale de dimension N = 3; mardi 11 avril 2017 Page 35

Présentation de l’algorithme « Hongrois » (2) Étape 1 : trouver la valeur minimal de chaque ligne et la soustraire à toutes les autres. mardi 11 avril 2017 Page 36

Présentation de l’algorithme « Hongrois » (3) Étape 2 : trouver un zéro dans la matrice et le marquer s’il est seul dans sa ligne ou colonne ; réitérer l’opération ; mardi 11 avril 2017 Page 37

Présentation de l’algorithme « Hongrois » (4) Étape 3 : Déterminer le nombre de lignes ( L ) nécessaires pour couvrir tous les zéros marqués de la matrice L différent de N donc on fait un tour de plus . mardi 11 avril 2017 Page 38

Présentation de l’algorithme « Hongrois » (5) Étape 4 : Trouver un zéro non couvert et le primer. ….. Retenir la plus petite valeur de ces zéros non couverts et aller à l'étape 6. mardi 11 avril 2017 Page 39

Présentation de l’algorithme « Hongrois » (6) Étape 6 : Cette valeur est ôtée aux autres valeurs non couvertes et ajoutée à toutes les valeurs couvertes . Retour à l ’étape 4 mardi 11 avril 2017 Page 40

Présentation de l’algorithme « Hongrois » (7) Étape 4 : Trouver un zéro non couvert et le primer. S'il n'y a aucun zéro marqué dans sa ligne, aller à l'étape 5. Sinon, couvrir cette ligne et découvrir la colonne contenant le zéro marqué. mardi 11 avril 2017 Page 41

Présentation de l’algorithme « Hongrois » (8) Étape 5 : Démarquer tous les zéros marqués de la série, marquer tous ces zéros primés, transformer les zéros primés en non primés et découvrir chaque ligne de la matrice. Retourner à l'étape 3. mardi 11 avril 2017 Page 42

Présentation de l’algorithme « Hongrois » (9) Étape 3 : Déterminer le nombre de lignes ( L ) nécessaires pour couvrir tous les zéros marqués de la matrice. L différent de N on continue à l’étape 4. mardi 11 avril 2017 Page 43

Présentation de l’algorithme « Hongrois » (10) Étape 4 : Pas de zéros non couverts dans la matrice. On se contente de relever la plus petite valeur et on passe à l’étape 6 mardi 11 avril 2017 Page 44

Présentation de l’algorithme « Hongrois » (11) Étape 6 : On la soustrait aux autres valeurs non couvertes et on l’ajoute aux valeurs couvertes. mardi 11 avril 2017 Page 45

Présentation de l’algorithme « Hongrois » (12) Étape 4 : Idem chose On retient la plus petite valeur (1). mardi 11 avril 2017 Page 46

Présentation de l’algorithme « Hongrois » (13) Étape 6 : Soustraction de celle-ci aux autres valeurs non couvertes et ajouter celle-ci aux valeurs couvertes. mardi 11 avril 2017 Page 47

Présentation de l’algorithme « Hongrois » (14) Étape 4 : On trouve un zéro non couvert, on le prime. Il existe un zéro marqué sur sa ligne . On découvre la colonne de ce zéro et on couvre sa ligne. On va à l’étape 5. mardi 11 avril 2017 Page 48

Présentation de l’algorithme « Hongrois » (15) Étape 5 : Transformation des zéros primés en marqués, suppression des zéros marqués et des lignes de couvertures. mardi 11 avril 2017 Page 49

Présentation de l’algorithme « Hongrois » (16) Étape 3 : 3 colonnes sont nécessaires pour couvrir tous les zéros marqués. C’est aussi la dimension de la matrice, c’est fini !! mardi 11 avril 2017 Page 50

Présentation de l’algorithme « Hongrois » (17) Étape 3 : Seuls les zéros marqués de cette matrice sont utiles pour décrire les cycles de zones. Zones 1 et 3 adjacentes et zone 2 seule. mardi 11 avril 2017 Page 51

Présentation de l’algorithme « Hongrois » (18) Il ne reste plus qu’à fusionner les cycles obtenus pour obtenir le cycle final. Cette fusion est réalisée en fusionnant à chaque tour les deux cycles les plus longs. mardi 11 avril 2017 Page 52

Présentation de l’algorithme « RAI » (1) L’algorithme RAI comporte dix étapes : Initialisation : on choisit un sommet au hasard, le cycle est alors constitué seulement de ce sommet ; Choisir un sommet qui n’est pas encore dans le cycle ; Insérer ce sommet de façon optimum. Si le cycle n’est pas complet, retourner à l’étape 2 ; Soit S la solution trouvée ; Répéter 2n2 fois les étapes 6 à 10 ; Choisir aléatoirement deux entiers i et j (entre 1 et le nombre de zones, avec i < j) Enlever la portion du sommet i au sommet j, et refermer le cycle; Choisir aléatoirement un sommet dans la portion enlevée ; Insérer ce sommet de façon optimum. Si le cycle n’est pas complet, retourner à l’étape 8 ; Comparer la solution trouvée à la solution S et garder la meilleure. mardi 11 avril 2017 Page 53

Présentation de l’algorithme « RAI » (2) L’algorithme RAI a été implémenté de deux façons différentes : Avec un tableau de taille fixe et une représentation séquentielle du cycle. Avec un tableau de taille fixe géré en liste chaînée. mardi 11 avril 2017 Page 54

Plan Approche théorique et solutions proposées Présentation du projet Constitution de zones Présentation de l’algorithme « KMEANS » Adaptation au problème Choix des centres Problèmes rencontrés Constitution de cycles Présentation de l’algorithme « Hongrois » Présentation de l’algorithme « RAI » Constitution de tournées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 55

Constitution de tournées Construire des tournées consiste à répartir les zones à collecter entre les bennes à ordure dont nous disposons. Une manière de le faire consiste à découper le cycle en tranches dont le poids est borné par les capacités maximum des bennes. On obtient ainsi un découpage du cycle, chaque tranche étant collectée par une benne. Si le nombre de tranches du cycle est supérieur au nombre de bennes dont on dispose, un deuxième tour de collecte doit être lancé. La notion de tours est laissée au soin de l’utilisateur : celui-ci clonera des bennes s’il décide de leur faire faire un deuxième tour. mardi 11 avril 2017 Page 56

Plan Réalisation Présentation du projet Approche théorique et solutions proposées Réalisation Données de départ Structure Données retournées à l’utilisateur Affichage des résultats Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 57

Données de départ Conformément au cahier des charges, le client fourni les coordonnées entières de chaque point de la carte dans un tableau. De la même manière, il devra fournir le poids de chaque rue ainsi que le coût de chacune des rues dans un tableau de réels. mardi 11 avril 2017 Page 58

Les différents modules mardi 11 avril 2017 Page 59

Structure (1) Structure point : Structure zone : Indice du point Pointeur sur le point suivant Structure zone : Pointeur vers la zone suivante Numéro de la zone Poids de la zone Coût de la zone Liste des points qu’elle contient Centre de la zone mardi 11 avril 2017 Page 60

Structure (2) Lors de la construction de zones, il est nécessaire de connaître un certain nombres de constantes, nous les avons regroupés dans la structure configuration. Structure configuration : Nombre de points de la carte Type d’initialisation choisie Nombre de tours maximal Poids maximal d’une zone Poids minimal d’une zone Coût maximal d’une zone Coût minimal d’une zone Coût minimal entre deux centres de zone mardi 11 avril 2017 Page 61

Structure (3) Nous avons également créé une structure benne : Numéro de la benne Charge maximal Ainsi que la structure tournée : Numéro de benne associé (1 benne = 1 tournée) Poids total Coût total Indices des zones collectés lors de cette tournée Pointeur sur la prochaine tournée mardi 11 avril 2017 Page 62

Données retournées à l’utilisateur Les données exploitables par l’utilisateur sont : Un pointeur sur une liste chaînée de zones : zone * zones; Un pointeur sur une liste chainée de tournées : Tournee * tournees; mardi 11 avril 2017 Page 63

Plan Tests Présentation du projet Approche théorique et solutions proposées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 64

Tests (1) Comparaison des résultats obtenues avec nos différents algorithmes : L’algorithme KMEANS avec initialisation aléatoire et avec initialisation par quadrillage ; L’algorithme KMEANS avec différents paramètres ; L’algorithme hongrois et l’algorithme RAI. Les tests sont réalisés à l’aide du jeu de tests réel fourni par le client. mardi 11 avril 2017 Page 65

Tests (2) Comparaison des deux initialisations de KMEANS : Les tests ont été réalisés dans le cas suivant : poids maximum d’une zone : 3000 ; Résultats assez proches Initialisation aléatoire Initialisation par le quadrillage Temps de calcul 0,5s 0,7s Nombre de zones crées 52 49 mardi 11 avril 2017 Page 66

Zones après initialisation aléatoire mardi 11 avril 2017 Page 67

Zones après initialisation quadrillage mardi 11 avril 2017 Page 68

Poids d’une zone : entre 500 et 3000 (fusion) Tests (3) Tests de l’algorithme KMEANS avec différents paramètres : Poids max d’une zone : 1000 Poids d’une zone : entre 500 et 3000 (fusion) Poids max d’une zone : 3000 Temps de calcul 0,7 s 0,4 s 0,5 s Nombre de zones crées 207 47 52 mardi 11 avril 2017 Page 69

Zones avec poids maximale égale à 1000 mardi 11 avril 2017 Page 70

Zones avec fusion mardi 11 avril 2017 Page 71

Zones sans fusion mardi 11 avril 2017 Page 72

Tests (4) Comparaison entre les deux algorithmes de création d’un cycle. Les tests ont été réalisés dans le cas suivant : poids maximum d’une zone : 2000 ; initialisation : aléatoire poids minimum d’une zone : 300. Ceci conduit à 74 zones. Sur ce jeu de test, l’algorithme RAI est nettement plus efficace(gain d’environ 10%). Hongrois RAI Temps de calcul 0,1s 0,3s Coût du cycle (m²) 21922 19933 mardi 11 avril 2017 Page 73

Résultat Hongrois mardi 11 avril 2017 Page 74

Résultat RAI mardi 11 avril 2017 Page 75

Tests (6) D’autres jeux de tests pourraient nous permettre de confirmer, ou au contraire d’infirmer les observations réalisées avec ce jeu de test. Cependant ces tests sont tout à fait cohérents et aucune aberration n’a été notée. De plus, nous pouvons noter que le temps de calcul nécessaire pour trouver une solution est tout à fait acceptable. mardi 11 avril 2017 Page 76

Plan Recherche et amélioration Présentation du projet Approche théorique et solutions proposées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 77

Recherche et amélioration (1) Des recherches ont étés faîtes concernant l’implantation à notre bibliothèque d’algorithmes appelés génétiques : Questions sur l’utilité de leur implantation Avantage : adaptation idéale à un environnement hostile Inconvénient : Algorithmes surtout utilisés pour des populations nombreuses (ce n’est pas le cas ici). mardi 11 avril 2017 Page 78

Plan Conclusion Présentation du projet Approche théorique et solutions proposées Réalisation Tests Recherche et amélioration Conclusion mardi 11 avril 2017 Page 79

Conclusion Ce projet fut très intéressant et enrichissant du point de vue organisationnel même si les motivations de chacun étaient diverses. Il nous a permis d’utiliser de nouveaux outils de communication (SVN, WIKI, liste de diffusion). Tous les objectifs fixés dans le cahier des charges ont été atteints, mais par manque de temps l’implémentation d’autres solutions n’a pas pu être réalisée. mardi 11 avril 2017 Page 80