[PDF] Programmation dynamique - Université de Montréal



Previous PDF Next PDF







Problème du sac à dos - Université de Montréal

Problème du sac à dos Algorithmes voraces - Sac à dos 4 IFT2125, Sylvie Hamel Université de Montréal Théorème: Si les objets sont choisis par ordre décroissant de valeur par unité de poids ( ), alors l’algorithme du sac à dos vorace trouve une solution optimale vi wi



Le problème du sac à dos - Education

Diverses activités peuvent être menées avec les élèves sur le problème du sac à dos C’est en effet l’occasion de réinvestir plusieurs notions étudiées au cours de l’année de première Ces activités peuvent aussi se placer au cœur d’un projet qui sera conduit durant l’année en classe de première



Programmation dynamique - IRIF

sac à dos avec répétitions complexité On suppose que les 2n+1 valeurs sont codées en binaire La taille d’une instance du problème du sac à dos est donc: t = ∑ log(wi+1) + ∑ log(vi+1) + log(W+1) i i Une complexité en Θ(W n) est donc en Θ(2t) wi,vi,W>0 sac à dos avec répétitions Construire une solution à partir de K[-]:



Programmation dynamique - Université de Montréal

Problème du sac à dos programmation dynamique - sac à dos 5 IFT2125, Sylvie Hamel Université de Montréal Problème: On dispose de n objets de poids positifs et de





Optimisation par colonies de fourmis pour le problème du sac

lonies de fourmis (Ant Colony Optimization / ACO) pour résoudre le problème du sac à dos multidimensionnel L’objectif est de sélectionner un sous-ensemble d’objets qui maximise une fonction utilité donnée tout en respectant certaines contraintes de ressources Nous proposons un algorithme ACO générique pour ce problème



Exercice 1 : Complexité des algorithmes (8 points)

Exercice 2 : Algorithme glouton – Problème du sac à dos (6 points) On dispose d'un ensemble S de n objets Chaque objet i possède une valeur b i et un poids w i On souhaiterait prendre une partie T de ces objets dans notre sac à dos, malheureusement, ce dernier dispose d'une capacité limitée (en poids) W



Algorithmes classiques - u-bourgognefr

Algorithmes gloutons Résoudre un problème grâce à un algorithme glouton Exemples: problèmes du sac à dos ou du rendu de monnaie Les algorithmes gloutons constituent une méthode algorithmique parmi d'autres qui seront vues en terminale Le concept de méthode algorithmique est introduit; de nouveaux exemples seront vus en terminale



Algorithmes gloutons - Education

tition optimale de tâches suivant des critères précis, le problème du rendu de monnaie, le problème du sac à dos, la recherche d’un plus court chemin dans un graphe, le problème du voyageur de commerce De nombreuses techniques informatiques sont susceptibles d’apporter une solution exacte ou approchée à ces problèmes

[PDF] brancher videoprojecteur sur pc windows 10

[PDF] bin packing 2d

[PDF] moyen de transport aérien

[PDF] les moyens de transport définition

[PDF] les moyens de transport pdf

[PDF] chronologie de l'ordinateur

[PDF] l'histoire de l'ordinateur pdf

[PDF] l'histoire de l'ordinateur de 1940 ? nos jours

[PDF] processus : les outils d’optimisation de la performance

[PDF] histoire de l'informatique et de l'ordinateur

[PDF] comment analyser un processus

[PDF] qu est ce qu un processus administratif

[PDF] histoire de l'ordinateur résumé

[PDF] exemple processus administratif

[PDF] processus administratif définition

Programmation dynamique1 programmation dynamique - introductionIFT2125, Sylvie Hamel Université de Montréal C'est une approche du bas vers le haut Idée: Pour résoudre un problème, on commence par résoudre les plus petits sous-problèmes et on conserve les valeurs de ces sous-problèmes dans une table de programmation dynamique. On utilise ensuite ces valeurs pour calculer la valeur de sous-problèmes de plus en plus grands, jusqu'à obtenir la solution de notre problème global.

Retour monnaie2 programmation dynamique - retour monnaieIFT2125, Sylvie Hamel Université de Montréal Problème:On a un montant M et des pièces de valeurs .On veut trouver des entiers tels que! en minimisantv

1 ,v 2 ,...,v n x i n X i=1 x i v i =M n X i=1 x i

Solution:On va construire une table de programmation dynamique . C[1..n,0..M]

où = nombre minimum de pièces pour produire

exactement le montant en utilisant seulement des pièces de valeursC[i,j]jv

1 ,v 2 ,...,v i

C[n,M]

La solution optimale sera en .

Retour monnaie3 programmation dynamique - retour monnaieIFT2125, Sylvie Hamel Université de Montréal On a donc les équations suivantes:C[i,0]=0 ,8iC[i,j]=min(C[i1,j],1+C[i,jv

i

Exemple: Supposons qu'on ait un montant de 8 et des pièces de valeurs :v

1 =1,v 2 =4etv 3 =6

012345678v

1 =1v 2 =4v 3 =6

000121231123422212345678123

Programmation dynamique4 programmation dynamique - optimalitéIFT2125, Sylvie Hamel Université de Montréal Question: Comment savoir si un problème d'optimisation peut être résolu par programmation dynamique?Principe d'optimalité: La solution optimale à un problème est composée de solutions optimales à des sous-problèmesRéponse:

Problème du sac à dos5 programmation dynamique - sac à dosIFT2125, Sylvie Hamel Université de Montréal Problème:On dispose de n objets de poids positifs et devaleurs positives . Notre sac à doc à une capacité maximale en poids de w

1 ,w 2 ,...,w n v 1 ,v 2 ,...,v n W But:Maximiser tel que etn X i=1 x i v i n X i=1 x i w i W x i 2 {0,1} On va construire une table de programmation dynamique

V[1..n,0..W]

où = valeur maximale des objets que l'on peut transporter

si le poids maximal permis est et que les objets que l'on peut inclure sont ceux numérotés de 1 à ijV[i,j]

La solution optimale sera en .V[n,W]

111166 programmation dynamique - sac à dosIFT2125, Sylvie Hamel Université de Montréal On a donc les équations suivantes:V[i,0]=0 ,8iV[i,j]=m ax(V[i1,j],V[i1,jw

i ]+v i

Exemple: Supposons qu'on ait 5 objets de poids 1,2,5,6 et 7 et de valeurs 1, 6, 18, 22, 28 et que la capacité de notre sac est de 11.01234567891011111622185322642875v

i w i

0000011111111111777777777192425252525232829294066677777718182218222829343540Problème du sac à dos

Plus court chemin7 programmation dynamique - plus court cheminIFT2125, Sylvie Hamel Université de Montréal Problème:Soit G un graphe orienté, N l'ensemble de ces sommets et A l'ensemble de ces arêtes. Chaque arête à un poids positifs représentant la distance entre les 2 sommets. On veut calculer la longueur des plus courts chemins entre toutes les paires de sommets de G.Solution:On va construire n matrices pour . D

k

1kn

où = la longueur du plus court chemin entre i et j et dont les sommets intermédiaires sont dans l'ensemble {1, ..., k}D

k [i,j] La longueur du plus court chemin entre chaque paire (i,j) de sommets est alorsD n [i,j]quotesdbs_dbs5.pdfusesText_10