Titris Tetris est une solution qui est conçue pour répondre aux problématiques logistiques actuelles en optimisant simultanément le chargement, l’itinéraire et la planification/coordination des transports. En combinant des algorithmes avancés, des intégrations en temps réel et des méthodes d’intelligence artificielle, notre solution permet de réduire significativement les coûts, le temps de transit, le nombre et d’améliorer l’efficacité opérationnelle des entreprises logistiques.

Pourquoi Tetris? Notre solution, baptisée Tetris, s'inspire du célèbre jeu de puzzle où le succès repose sur l'optimisation du placement des pièces pour remplir l'espace de manière efficace. De la même manière, l'optimisation du chargement des palettes dans nos camions est cruciale pour réduire le nombre de véhicules nécessaires, minimiser les trajets à vide et ainsi diminuer considérablement les coûts de transport. En optimisant l'agencement des commandes—en tenant compte des dimensions, du poids, des contraintes de sécurité et de la répartition latérale—nous maximisons l'utilisation de l'espace disponible, garantissant une stabilité et une efficacité accrues lors des livraisons. Cette étape, véritable fondation de notre solution, permet non seulement d'économiser du carburant et du temps, mais aussi d'améliorer la coordination globale du transport, faisant de Tetris une solution innovante et performante dans le domaine logistique.

La solution vise à transformer la gestion logistique en abordant trois grands axes :

Optimisation du Chargement : Regrouper intelligemment les commandes pour maximiser l'utilisation des camions en tenant compte des contraintes de poids, de volume, et de compatibilité des produits. Optimisation d'Itinéraire : Générer des routes optimales pour le chargement (en mode LIFO) et pour le retour, en intégrant les contraintes réelles (climat, incidents, présence de fournisseurs). Optimisation de Planification et Coordination : Planifier l'arrivée des camions au niveau du stock (warehouse) en tenant compte de la capacité de stationnement (yard_space) et des délais de chargement, tout en intégrant une logique de reverse logistics pour recharger les camions avec des matières premières auprès de fournisseurs stratégiques. Cette approche modulaire permet non seulement de réduire les coûts et les délais, mais également d’augmenter la flexibilité et la réactivité opérationnelle des entreprises.

Architecture de la Solution La solution s’appuie sur une base de données relationnelle SQLite, avec SQLAlchemy pour la gestion des modèles et des relations complexes :

Modèles principaux :

User : Gère les profils (admin, client, livreur, fournisseur). Le fournisseur est implémenté comme une sous-classe de User, avec des attributs additionnels tels que l’adresse et la liste des matières premières fournies. Command et Palette : Représentent respectivement les commandes clients et le détail du chargement (avec type, dimensions, poids, etc.). Product et Matiere : Permettent d'associer un produit à ses composants, via une table d'association qui stocke la consommation de matières premières. Camion : Contient les caractéristiques techniques et les contraintes (capacité en poids, volume, coût de transport, état, etc.). Stock et Contract : Permettent de gérer l’inventaire des matières premières et les contrats avec les entreprises de livraison. API REST avec Flask : Les fonctionnalités backend sont exposées via des endpoints qui gèrent :

L’ajout de commande Le regroupement (knapsack) des commandes pour optimiser le chargement La planification du chargement (en fonction du yard_space et du temps de chargement) L’optimisation d’itinéraire (pour l’allée et le retour) Intégrations externes :

OpenStreetMap API (utilisée dans le frontend) pour le géocodage et la planification d’itinéraire. Modules d’intelligence artificielle pour générer des prédictions de besoins en matières premières et pour ajuster dynamiquement les routes en fonction du climat et des incidents.

Built With

Share this project:

Updates