CSI 3505 Programmation Dynamique - PowerPoint PPT Presentation

About This Presentation
Title:

CSI 3505 Programmation Dynamique

Description:

Objets a apporter dans un sac de capacit W. Chaque objet a un cout de transport (poid) ... D terminer l'ensemble d'objets qu'il est possible de prendre dans le sac et qui ... – PowerPoint PPT presentation

Number of Views:682
Avg rating:3.0/5.0
Slides: 14
Provided by: Universi57
Category:

less

Transcript and Presenter's Notes

Title: CSI 3505 Programmation Dynamique


1
CSI 3505Programmation Dynamique
Problème du sac à dos (pg 175)
Applications de ce problème scheduling
(ordonnancement), allocation de lespace dans un
disque,
2
  • Objets a apporter dans un sac de capacité W
  • Chaque objet a un cout de transport (poid)
  • Lapport de chaque objet entraine un gain
    (associé à lobjet)

Déterminer lensemble dobjets quil est possible
de prendre dans le sac et qui maximise les gains.
3
Ensemble dobjets
  • function qui donne poid dun objet
  • function qui donne gain dun objet

4
Formulation Mathématique
  • Le problème est de trouver
  • Tel que

5
Solution dynamique
On commence par remarquer
Pourquoi ?
Quest ce que ca veut dire ?
Supposons que
Supposons que
Quest ce que ca veut dire ?
6
si
Alors
Tout dépend donc de si on utilise
7
Supposons Kon ait
Et Kon cherche
8
  • Cas 1
  • Pi,K Pi-1, K-wi gi
  • (impossible si le poids de lobjet i, wi gt K)
  • Cas 2.
  • Pi,K Pi-1,K
  • Base
  • Si i 0 ou K 0, alors Pi,K 0

9
disons 10 objets, poid max 11kg
objets poid 1 2 3 4 5 6 7 8 9 10 11
(1) (1) 0 0 0 0 12 (1) 12 (1) 12 (1) 12 (1) 12 (1) 12 (1) 12 (1)
(1,2) (1,2) 0 0 0 11 (2) 12 (1) 12 (1) 12 (1) 12 (1) 23 (1,2) 23 (1,2) 23 (1,2)
(1,2,3) (1,2,3) 0 0 0 11 (2) 12 (1) 12 (1) 12 (1) 12 (1) 23 (1,2) 23 (1,2) 23 (1,2)
(1,2,3,4) (1,2,3,4) 2 (4) 2 (4) 2 (4) 11
(1,2,3,4,5) (1,2,3,4,5)
(1,2,3,4,5,6) (1,2,3,4,5,6)

1 5kg 12
2 4kg 11
3 8kg 5
4 1kg 2

10
Le problème est de calculer Pn,W
  • Propriété récursive du problème.
  • Pi,K gains maximum si
  • le choix est parmi les objets 1, , i, et
  • le poids maximale ne doit pas dépasser K.

Pi,K
11
CSI 3505Programmation Dynamique
  • maxgiPi-1,K-wi, Pi-1,K) wi ? K
  • Pi,K
  • Pi-1,K wi gt K
  • Pour igt0, kgt0.

Exemple
Objets 1 2 3 4 5
gi 10 5 5 10 3
wi 5 5 2 2 2
12
CSI 3505Programmation Dynamique
k i 0 1 2 3 4 5 6 7 8 9 10
0 0 0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 10 10 10 10 10 10
2 0 0 0 0 0 10 10 10 10 10 15
3 0 0 5 5 5 10 10 15 15 15 15
4 0 0 10 10 15 15 15 20 20 25 25
5 0 0 10 10 15 15 18 20 20 25 25
13
  • Complexité

Taille du problème n Opérations nombre
d'entrées dans la table Cas pire
?(n W)
Dépend de W, la capacité maximale du sac !
Write a Comment
User Comments (0)
About PowerShow.com