SlideShare una empresa de Scribd logo
GRUPO 7
PROGRAMACION DINAMICA
Integrantes:
• Molina Ballon Dalih Medeliz
• Chura Poma Cristian
• Javier Henry Quispe Pinto
PROGRAMACION
DINAMICA
1.- INTRODUCCIÓN
2.- VENTAJAS
3 .- DESVENTAJAS
4.- EJEMPLOS
5.-CONCLUSION
INTRODUCCION
 Es un método cuantitativo de toma de decisiones desarrollada por
Bellman y Dantzig en 1957
 La programación dinámica (PD) determina la solución óptima de un
problema de n variables descomponiéndola en n etapas, con cada
etapa incluyendo un subproblema de una sola variable. La mayor
parte de las veces, la programación dinámica obtiene soluciones
con un avance en reversa, desde el final de un problema hacia el
principio con lo que un problema grande se convierte en una serie
de problemas más pequeños y más tratables. Así, la programación
dinámica se puede definir como una técnica matemática útil que
resuelve una serie de decisiones secuenciales, cada una de las
cuales afecta las decisiones futuras.
Ventajas
 Eficaz para resolver problemas de gran complejidad al
dividirlo y secuenciarlo.
 Resuelve cada sub problema una sola vez.
 Los cálculos de cada etapa se organizan y se guardan de
manera eficiente, facilitando su consulta para posteriores
análisis.
Desventajas
 No aplicable a todo tipo de problemas.
 Si hay algún error en una tabla afecta a todo el problema.
Tenemos n objetos, cada uno con un peso (wi) y un beneficio
(vi), y una mochila en la que podemos meter objetos, con una
capacidad de peso máximo M. El objetivo es maximizar el
beneficio de los objetos transportados, donde cada objeto se
puede coger entero (xi=1) o nada (xi=0).
Problema de la mochila 0/1
Programacion Dinamica. Problema de la mochila
Ganancias en capacidad…
Etapa Articulo
Peso
(Kg)
Benefici
o Bs 0 1 2 3 4 5 6 7 8
0 estado inicial 0 0 0 0 0 0 0 0 0
1 A 1 2 0
2 B 2 5 0
3 C 4 6 0
4 D 5 10 0
5 E 7 13 0
6 F 8 16 0
2 2 2 2 2 2 2 2
A A A A A A A A
2
A
5
B
7
A+B
7 7 7 7 7
A+B A+B A+B A+B A+B
2 5 7
A B A+B
7
A+B
8
A+C
11
B+C
13
A+B+C
13
A+B+C
2 5 7 7
A B A+B A+B
10
D
12
A+D
15
B+D
17
A+B+D
2 5 7 7 10 12
A B A+B A+B D A+D
15
B+D
17
A+B+D
2 5 7 7 10 12 15
A B A+B A+B D A+D B+D
17
A+B+D
Forma de rellenar las tablas:
 Inicializar los casos base.
 Para todo i, desde 1 hasta n, y j desde 1 hasta M, aplicar la
ecuación de recurrencia:
V[i, j] = max (V[i - 1, j] , V[i - 1, j - wi]+ vi)
 Si j es negativo, entonces V[i, j] = -, y el máximo será el otro
término.
Tiempo de ejecución: (n).
1. En que problemas se utiliza la programación dinámica?
Resp.- La programación dinámica se suele utilizar en problemas de
optimización, donde una solución está formada por una serie de decisiones.
1. Comparando con la técnica de Divide y vencerás en que se parecen?
Resp.- Los dos resuelven el problema original combinando las soluciones para
subproblemas más pequeños.
1. Y en que se diferencian de la técnica de Divide y Vencerás?
Resp.-almacena los resultados de los subproblemas en una tabla, calculando
primero las soluciones para los problemas pequeños.
1. La programación Dinámica en que principio se basa?
Resp.- La programación dinámica se basa en el Principio de Optimalidad de
Bellman: cualquier subsecuencia de una secuencia óptima debe ser, a su vez,
una secuencia óptima.
1. Que aspecto importante tiene la programación Dinámica?
Resp.-los algoritmos de programación dinámica necesitan una tabla para
almacenar los resultados parciales, que puede ocupar mucha memoria.
PREGUNTAS
1. Cual es la definición de top down?
Resp.- El problema se divide en sub problemas y estos se resuelven
recordándolos las soluciones de arriba hacia abajo
1. Cual es la definición de Bottom up?
Resp.- este enfoque es ligeramente es mejor en su consumo de espacio y
llamadas de funciones encontrando todos los sub problemas necesarios.
1. A que se refiere optimizar?
Resp.-a buscar alguna de las mejores soluciones de entre muchas
alternativas posibles
1. La programación dinámica es …?
Resp.- un método para reducir el tiempo de ejecución.
1. Quien invento la programación dinámica?
Resp.-Richard Bellman en 1953
PREGUNTAS

Más contenido relacionado

PDF
Programacion dinamica
DOCX
Unidad nº 4 leccion #8
PPTX
Programación dinámica
PPTX
Programación dinámica
PPTX
Programación dinamica (ea)
PDF
Programacion dinamica final
PPTX
Programación dinámica
DOCX
Programación lineal y pert. do
Programacion dinamica
Unidad nº 4 leccion #8
Programación dinámica
Programación dinámica
Programación dinamica (ea)
Programacion dinamica final
Programación dinámica
Programación lineal y pert. do

Similar a Programacion d inamica (20)

PPT
Programación Dinámica
PPTX
Programación Dinámica
PPTX
Algoritmos computacionales
PPTX
Algoritmos computacionales
PDF
Asignacion
PPTX
DIAPOS EXPO FINAL IO2.pptx
PPT
Prog dinamica
PPTX
Presentacion programacion dinamica
PPS
Investigacion Operativa Aspectos Generales
PPTX
Programacion
PPTX
Programación Dinámica
PPTX
Programacion dinamica 22
PPTX
Programacion dinamica jesus plaza
PPTX
Programación Dinamica
PDF
PROGRAMACION DINAMICA
PDF
Trabajo programacion lineal
PDF
Analisis de dualidad
PDF
Clase3
PPTX
Programacion dinamica
PDF
Matematica Basica Limites indeterminados
Programación Dinámica
Programación Dinámica
Algoritmos computacionales
Algoritmos computacionales
Asignacion
DIAPOS EXPO FINAL IO2.pptx
Prog dinamica
Presentacion programacion dinamica
Investigacion Operativa Aspectos Generales
Programacion
Programación Dinámica
Programacion dinamica 22
Programacion dinamica jesus plaza
Programación Dinamica
PROGRAMACION DINAMICA
Trabajo programacion lineal
Analisis de dualidad
Clase3
Programacion dinamica
Matematica Basica Limites indeterminados
Publicidad

Último (11)

PPTX
Conceptos basicos de Base de Datos y sus propiedades
PPTX
sistemas de informacion.................
PPTX
Tratará sobre Grafos_y_Arboles_Presentacion.pptx
PPTX
Implementación equipo monitor12.08.25.pptx
PDF
Clase 3 - Presentación visual (Insertando objetos visuales) POWER POINT.pdf
PDF
AutoCAD Herramientas para el futuro, Juan Fandiño
PDF
Su punto de partida en la IA: Microsoft 365 Copilot Chat
PPTX
Fundamentos de Python - Curso de Python dia 1
DOCX
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
PPTX
Derechos_de_Autor_y_Creative_Commons.pptx
PPTX
ORIGEN DE LA IA - GRADO 1102 INTELIGENCIA
Conceptos basicos de Base de Datos y sus propiedades
sistemas de informacion.................
Tratará sobre Grafos_y_Arboles_Presentacion.pptx
Implementación equipo monitor12.08.25.pptx
Clase 3 - Presentación visual (Insertando objetos visuales) POWER POINT.pdf
AutoCAD Herramientas para el futuro, Juan Fandiño
Su punto de partida en la IA: Microsoft 365 Copilot Chat
Fundamentos de Python - Curso de Python dia 1
trabajo programacion.docxxdxxxddxdxxdxdxxxdxxdxdxd
Derechos_de_Autor_y_Creative_Commons.pptx
ORIGEN DE LA IA - GRADO 1102 INTELIGENCIA
Publicidad

Programacion d inamica

  • 1. GRUPO 7 PROGRAMACION DINAMICA Integrantes: • Molina Ballon Dalih Medeliz • Chura Poma Cristian • Javier Henry Quispe Pinto
  • 2. PROGRAMACION DINAMICA 1.- INTRODUCCIÓN 2.- VENTAJAS 3 .- DESVENTAJAS 4.- EJEMPLOS 5.-CONCLUSION
  • 3. INTRODUCCION  Es un método cuantitativo de toma de decisiones desarrollada por Bellman y Dantzig en 1957  La programación dinámica (PD) determina la solución óptima de un problema de n variables descomponiéndola en n etapas, con cada etapa incluyendo un subproblema de una sola variable. La mayor parte de las veces, la programación dinámica obtiene soluciones con un avance en reversa, desde el final de un problema hacia el principio con lo que un problema grande se convierte en una serie de problemas más pequeños y más tratables. Así, la programación dinámica se puede definir como una técnica matemática útil que resuelve una serie de decisiones secuenciales, cada una de las cuales afecta las decisiones futuras.
  • 4. Ventajas  Eficaz para resolver problemas de gran complejidad al dividirlo y secuenciarlo.  Resuelve cada sub problema una sola vez.  Los cálculos de cada etapa se organizan y se guardan de manera eficiente, facilitando su consulta para posteriores análisis.
  • 5. Desventajas  No aplicable a todo tipo de problemas.  Si hay algún error en una tabla afecta a todo el problema.
  • 6. Tenemos n objetos, cada uno con un peso (wi) y un beneficio (vi), y una mochila en la que podemos meter objetos, con una capacidad de peso máximo M. El objetivo es maximizar el beneficio de los objetos transportados, donde cada objeto se puede coger entero (xi=1) o nada (xi=0). Problema de la mochila 0/1
  • 7. Programacion Dinamica. Problema de la mochila Ganancias en capacidad… Etapa Articulo Peso (Kg) Benefici o Bs 0 1 2 3 4 5 6 7 8 0 estado inicial 0 0 0 0 0 0 0 0 0 1 A 1 2 0 2 B 2 5 0 3 C 4 6 0 4 D 5 10 0 5 E 7 13 0 6 F 8 16 0 2 2 2 2 2 2 2 2 A A A A A A A A 2 A 5 B 7 A+B 7 7 7 7 7 A+B A+B A+B A+B A+B 2 5 7 A B A+B 7 A+B 8 A+C 11 B+C 13 A+B+C 13 A+B+C 2 5 7 7 A B A+B A+B 10 D 12 A+D 15 B+D 17 A+B+D 2 5 7 7 10 12 A B A+B A+B D A+D 15 B+D 17 A+B+D 2 5 7 7 10 12 15 A B A+B A+B D A+D B+D 17 A+B+D
  • 8. Forma de rellenar las tablas:  Inicializar los casos base.  Para todo i, desde 1 hasta n, y j desde 1 hasta M, aplicar la ecuación de recurrencia: V[i, j] = max (V[i - 1, j] , V[i - 1, j - wi]+ vi)  Si j es negativo, entonces V[i, j] = -, y el máximo será el otro término. Tiempo de ejecución: (n).
  • 9. 1. En que problemas se utiliza la programación dinámica? Resp.- La programación dinámica se suele utilizar en problemas de optimización, donde una solución está formada por una serie de decisiones. 1. Comparando con la técnica de Divide y vencerás en que se parecen? Resp.- Los dos resuelven el problema original combinando las soluciones para subproblemas más pequeños. 1. Y en que se diferencian de la técnica de Divide y Vencerás? Resp.-almacena los resultados de los subproblemas en una tabla, calculando primero las soluciones para los problemas pequeños. 1. La programación Dinámica en que principio se basa? Resp.- La programación dinámica se basa en el Principio de Optimalidad de Bellman: cualquier subsecuencia de una secuencia óptima debe ser, a su vez, una secuencia óptima. 1. Que aspecto importante tiene la programación Dinámica? Resp.-los algoritmos de programación dinámica necesitan una tabla para almacenar los resultados parciales, que puede ocupar mucha memoria. PREGUNTAS
  • 10. 1. Cual es la definición de top down? Resp.- El problema se divide en sub problemas y estos se resuelven recordándolos las soluciones de arriba hacia abajo 1. Cual es la definición de Bottom up? Resp.- este enfoque es ligeramente es mejor en su consumo de espacio y llamadas de funciones encontrando todos los sub problemas necesarios. 1. A que se refiere optimizar? Resp.-a buscar alguna de las mejores soluciones de entre muchas alternativas posibles 1. La programación dinámica es …? Resp.- un método para reducir el tiempo de ejecución. 1. Quien invento la programación dinámica? Resp.-Richard Bellman en 1953 PREGUNTAS