Accédez aux ressources directement depuis les compétences, savoirs, activités professionnelles, centres d'intérêt des référentiels, ainsi qu'aux sujets d'examen et séminaires nationaux.
publié le 18 Juil 2025 par Olivier TOURVIEILLE
Introduction
Le problème du sac à dos, noté également KP (knapsack problem), est un problème d’optimisation combinatoire. Il modélise une situation analogue à celle du remplissage d’un sac à dos ne pouvant pas supporter plus d’un certain poids, avec tout ou partie d’un ensemble donné d’objets ayant chacun un poids et une valeur. Les objets mis dans le sac à dos doivent maximiser la valeur totale (le profit), avec la contrainte de ne pas dépasser le poids maximum admissible (la quantité totale de ressources disponibles).
Dans le problème du sac à dos multidimensionnel, noté MKP, on considère plusieurs sacs à dos ayant chacun un poids maximum admissible. L’objectif est alors de maximiser la valeur totale des objets contenus dans l’ensemble des sacs à dos.
Les applications pratiques sont nombreuses : transport de marchandises, découpe de matériaux, gestion de portefeuilles financiers, allocation de tâches à des systèmes multiprocesseurs, ...
1 - Base de données - Exemple de fret maritime de conteneurs
2 - Structure de données pour l’espace des objets
3 - Structure de données pour l’espace des solutions
4 - Résolution approchée par un algorithme glouton
5 - Résolution exacte par un algorithme de programmation dynamique
6 - Résolution exacte par un algorithme PSE
7 - Résolution approchée par colonie de fourmis (ACO)
8 - Analyse des résultats
Le sujet et le corrigé de cette épreuve sont également disponibles sur le site de l’UPSTI (Union des Professeurs de Sciences et Techniques Industrielles) : https://www.upsti.fr/espace-etudiants/annales-de-concours