Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique –...

15
Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation d’un réseau avec correspondances UrbanConnector

Transcript of Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique –...

Page 1: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Juin - Projet final RICM 1

Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli

Simulation d’un réseau avec correspondances

UrbanConnector

Page 2: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Simuler les trajets effectués par les utilisateurs

Estimer la charge d’un réseau à tout lieu et à tout moment

Gérer la congestion d’un réseau complexe

But du logiciel

Page 3: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Paramètres

Dynamiques: Le temps de parcours sur les arcs Les parcours des passagers

Statiques Le nombre de passager dans le réseau La fréquence des trains Le modèle statistique des destinations

Page 4: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

L’architecture

UneDeux

Trois

Cinq

Quatre

<reseau><ligne num=1 frequence=100>

<arc numdep=1 numarr=2 …/>

<arc numdep=2 numarr=1 …/><arc numdep=2 numarr=3 …/><arc numdep=3 numarr=2 …/>

</ligne><ligne>

<arc numdep=4 numarr=2 …/><arc numdep=2 numarr=4 …/><arc numdep=2 numarr=5 …/><arc numdep=5 numarr=2 …/>

</ligne>< /reseau>

Page 5: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Stations: Pas de doublons

Pas les mêmes coordonnées

Ordonnées par numéros croissant

Arcs: Stations existent bien

Ligne existe bien ( stations bien connectées)

Pas de doublons

Ordonné par numéro de ligne

Temps de parcours d’un arc positif

Vérification

Page 6: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

L’architecture

Page 7: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Moteur de calcul

• Algorithme de mise à jour des charges

Connaître la charge à tout endroit en fonction du temps

Connaissant le chemin que prenne les gens, ajout du nombre de passager à chaque arc au temps calculé

• Algorithme du meilleur chemin Dijkstra: déjà implementé et fonctionne Floyd: de même !

Choix de l’algorithme en fonction de sa complexité.

Page 8: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Problèmes

Solutions techniques

Solution

Problème: Comment gérer les changements de station ?

Problème: Dynamicité du projet

Page 9: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Structures de données

Reseau

Algorithme

Ligne

ChargeArrayList

Trajet

ChargeStationChemin ChargeArc

StationFictiveStationReelle

Station

Bleu = classe abstraite

Vert = classe

Rouge = Interface

Page 10: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Interactivité

Sur l’écran: Carte du réseau Liens colorés en fonction de la charge Affichage sur demande d’informations

Commandes: Changement des paramètres Création d’événements particuliers

Page 11: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Extensions possibles

Affichage de l’Itinéraire optimal en fonction de l’état du réseau pour un utilisateur

Rendre dynamique les paramètres statiques

Moteur statistique pour le gestionnaire du réseau

Page 12: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Réactivité de l’équipe : modification rapide du projet

Organisation en groupe de travail Répartition par groupe de travail

Gestion informatique Serveur de sauvegarde Serveur de version (SVN)

Planning du projet (annexe)

Travail d’équipe

Page 13: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Annexe : Planning

Vert = test

Jaune = en cours

Orange = lancement

Page 14: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Vous avez la possibilité de suivre le développement sur l’interface web de notre SVN

Le carnet de bord est disponible chaque soir Le logiciel sera livré le 26 juin au soir

Conclusion

Page 15: Juin - Projet final RICM 1 Groupe 10: B.Tillard – J.Danthon – A.Mandyev – A.Lefrique – M.Rivoalen – JF.Knoepfli Simulation dun réseau avec correspondances.

Annexe : Hiérarchie des classes

Reseau

Array list tabLigneArray list tabArcArray list tabStationFictiveArray list tabStationReelle

ArrayList

LigneArray list tabLigneArray list tabArcArray list tabStationFictiveArray list tabStationReelle

Trajet

Array list tabLigneArray list tabArcArray list tabStationFictiveArray list tabStationReelle

ChargeArcInt timer;Int chargeCourante();…

CheminArrayList Arc

AlgorithmePublic DijstraN(Reseau r)Public Floyd( Reseau r)

ChargeInt chargeCourante()

ChargeStationInt chargeCourante()

StationArray list arc;Int num;

StationReellestationFictive[];ChargeStation charge;Int coordx, coordy;

StationFictiveInt stationReelle;Ligne ligne;