Aide à la décision
Application JavaFX exploitant la théorie des graphes pour calculer et optimiser l'affectation entre hôtes et visiteurs lors de séjours linguistiques.

L'objectif
Ce projet consiste en une application de bureau dotée d'une interface graphique en JavaFX, conçue pour automatiser l'organisation de séjours linguistiques. Le système importe les données des participants au format CSV et se charge de trouver les meilleures correspondances possibles entre les familles d'accueil et les visiteurs afin de garantir un séjour optimal.

Modélisation
Le cœur de la logique décisionnelle repose sur la modélisation des données sous forme de graphes. L'algorithme croise des critères stricts, comme les régimes alimentaires ou les allergies, avec des préférences plus souples telles que les hobbies, le genre ou la différence d'âge. Chaque incompatibilité détectée ajoute un poids spécifique sur l'arête reliant deux profils, permettant de quantifier mathématiquement la pertinence d'une association.

Résolution
Une fois le graphe pondéré établi, l'application utilise un algorithme glouton pour parcourir les connexions et extraire les paires les plus optimisées, minimisant ainsi les conflits globaux. Les résultats générés peuvent ensuite être facilement exportés en CSV pour être exploités par les organisateurs du séjour.
Analyse réflexive
Une analyse honnête du parcours, des obstacles rencontrés et des compétences acquises durant ce projet.
Mon rôle
Conception de l'algorithme de pondération des graphes et gestion de l'import/export CSV.
Défis & Solutions
Le plus grand défi a été de traduire des critères humains (hobbies, affinités) en poids mathématiques cohérents pour l'algorithme glouton.
Apprentissages
J'ai appris à manipuler des structures de données complexes (graphes) et à comprendre comment l'algorithmique peut résoudre des problèmes logistiques concrets.
Compétences transversales
Coordination avec le groupe via Git pour fusionner nos travaux sur l'interface et le moteur de calcul.
Capacité à transformer un cahier des charges fonctionnel en une modélisation mathématique rigoureuse.
Version web testable
Bien qu'il s'agisse d'une application de bureau native, l'application est testable directement dans le navigateur grâce à JPro ↗.

