Application JavaFX exploitant la théorie des graphes pour calculer et optimiser l'affectation entre hôtes et visiteurs lors de séjours linguistiques.
Disponible sur Github ↗
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.
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.
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.
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 ↗.
Il est possible de télécharger l'ensemble de données exemple afin de bien pouvoir tester l'application
L'application JavaFX est conteneurisée avec Docker. JPro se charge d'effectuer le rendu graphique en temps réel vers le client web, permettant de tester sans installation locale ni modification du code source original.



