SlideShare una empresa de Scribd logo
1 de 26
La programación dinámica es un enfoque
general para la solución de problemas en los que
es necesario tomar decisiones en etapas
sucesivas. Las decisiones tomadas en una etapa
condicionan la evolución futura del
sistema, afectando a las situaciones en las que el
sistema se encontrará en el futuro (denominadas
estados), y a las decisiones que se plantearán en
el futuro. Conviene resaltar que a diferencia de la
programación lineal, el modelado de problemas de
programación dinámica no sigue una forma
estándar. Así, para cada problema será necesario
especificar cada uno de los componentes que
caracterizan un problema de programación
dinámica.
Programación
Dinámica
El Método de la Burbuja o Intercambio se basa en el
principio de comparar pares de elementos adyacentes
e intercambiarlos entre sí hasta que estén todos
ordenados.
METODO DE
ORDENAMIENTO DE
LA BURBUJA
Vemos un ejemplo sencillo. Supongamos que queremos ordenar estos valores
con el algoritmo de la burbuja: 45, 52, 21, 37, 49, así pues, n=5 .
(45, 52, 21, 37, 49)
METODO DE ORDENAMIENTO DE LA BURBUJA
1ª pasada: comparamos cada uno de los cuatro primeros (n-1) con los que le
siguen. Si un elemento no está en orden con respecto al siguiente, los
intercambiamos de sitio y seguimos. El elemento de mayor valor (52) irá
"ascendiendo" hasta la última posición.
45, 52, 21, 37, 49 → Comparar 45 y 52. (1º y 2º) Están en orden. Seguimos.
45, 52, 21, 37, 49 → Comparar 52 y 21. (2º y 3º) No están en orden. Intercambio.
45, 21, 52, 37, 49 → seguimos
45, 21, 52, 37, 49 → Comparar 52 y 37 (3º y 4º). No están en orden. Intercambio.
45, 21, 37, 52, 49 → seguimos
45, 21, 37, 52, 49 → Comparar 52 y 49. (4º y 5º). No están en orden. Intercambio.
45, 21, 37, 49, 52 → Ya hemos terminado esta pasada.
45, 21, 37, 49, 52 → El 5º elemento ya está en su sitio.
METODO DE ORDENAMIENTO DE LA BURBUJA
2ª pasada: comparamos cada uno de los tres primeros (n-2) con los que le siguen.
No llegamos a hacer comparaciones que involucren al 5º elemento, porque la
primera pasada hizo que el mayor de todos los elementos ocupara la última
posición, con lo cual, sabemos que ese ya está en su sitio. Trabajaremos sólo con
los cuatro que quedan.
45, 21, 37, 49, 52 → Comparar 1º y 2º. No están en orden. Intercambio.
21, 45, 37, 49, 52 → seguimos
21, 45, 37, 49, 52 → Comparar 2º y 3º. No están en orden. Intercambio.
21, 37, 45, 49, 52 → seguimos
21, 37, 45, 49, 52 → Comparar 3º y 4º. Están en orden. Pasada terminada.
21, 37, 45, 49, 52 → El 4º elemento ya está en su sitio. (Fíjate en que el array ya
está en orden, pero algoritmicamente, eso no lo sabemos).
METODO DE ORDENAMIENTO DE LA BURBUJA
3ª pasada: Comparamos cada uno de los dos primeros (n-3) con los siguientes.
21, 37, 45, 49, 52 → 1º y 2º. Están en orden. Seguimos.
21, 37, 45, 49, 52 → 2º y 3º. Están en orden. Pasada terminada.
21, 37, 45, 49, 52 → Ya tenemos tres en orden.
METODO DE ORDENAMIENTO DE LA BURBUJA
4ª y última pasada: Comparamos el primero con el segundo.
21, 37, 45, 49, 52 → 1º y 2º están en orden. Pasada terminada.
21, 37, 45, 49, 52 → Ya tenemos los cuatro últimos en orden.
21, 37, 45, 49, 52 → Así pues, el primero también lo está
Las solucion es:
21,37,45,49,52
METODO DE ORDENAMIENTO DE LA BURBUJA
El ordenamiento Shell (Shell sort en inglés) es
un algoritmo de ordenamiento . El método se
denomina Shell en honor de su inventor Donald
Shell. Su implementación original, requiere O(n2)
comparaciones e intercambios en el peor caso.
METODO DE SHELL
SORT
Veamos el siguiente arreglo:
75, 15, 22, 45, 39, 98, 12, 79, 66, 89, 31
Se debe empezar con k=n/2 , siendo n el número de elementos de
arreglo, y utilizando siempre la división entera.... después iremos variando
k haciéndolo más pequeño mediante sucesivas divisiones por 2, hasta
llegar a k=1.
METODO DE SHELL SORT
Empezamos con k=5. Así pues, vamos a dividir nuestro arreglo original en
5 sub-arreglo, en los cuales, sus elementos estarán separados por 5
lugares del arreglo original (el salto o gap es 5). Vamos a hacerlo con
colores. Tomamos el primer elemento (el 75) contamos 5 lugares y
tomamos también otro elemento (el 98) volvemos a contar 5 y tomamos
otro (el 31) y acabamos porque se nos acaba el arreglo. El primer sub-
arreglo con k=5 es el formado por 75, 98 y 31. Vamos a pintarlos en rojo
75, 15, 22, 45, 39, 98, 12, 79, 66, 89, 31
METODO DE ORDENAMIENTO DE SHELL SORT
Ahora, ordenaremos los elementos del sub-arreglo rojo pero sólo entre
ellos, utilizando el algoritmo de Inserción directa.
31 , 15, 22, 45, 39, 75 , 12, 79, 66, 89, 98
Fíjate qué curioso. El 31, un elemento relativamente pequeño se ha ido
hacia el principio y el 98 hacia el final... ¡pero dando saltos ( gap ) de 5 en
5 lugares! Cada uno ha avanzado en saltos de 5 hacia una posición
cercana a su ubicación definitiva.
METODO DE ORDENAMIENTO DE SHELL SORT
.
Formemos ahora otro sub-arreglo con salto k=5... partiendo del segundo
elemento (el 14) y contando 5 (tomamos también el 12) y ya está, porque
se acaba el arreglo.
31 , 15 , 22, 45, 39, 75 , 12 , 79, 66, 89, 98
METODO DE ORDENAMIENTO DE SHELL SORT
Vamos a ordenarlos entre ellos con Inserción directa, el 12 primero y el 15
después.
31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98
METODO DE ORDENAMIENTO DE SHELL SORT
Ahora a por otro... el 22 y el 79
31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98
Están en orden entre ellos, así que se quedan como están.
Ahora le toca al sub-arreglo formado por el 45 y el 66
31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98
Que también están en orden entre ellos y finalmente el 39 y el 89, que
también están en orden.
31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98
METODO DE ORDENAMIENTO DE SHELL SORT
Hemos formado 5 sub-arreglos en los cuales los elementos están separados por 5
lugares (porque k=5). Hemos ordenado cada sub-arreglo por separado utilizando
inserción directa, y hemos logrado que cada elemento se dirija hacia su ubicación
definitiva en pasos de 5 lugares.
Por supuesto, no hemos terminado todavía, pero resulta evidente que algunos
elementos, como el 31, el 98 o el 12 han dado un gran salto y que no deben andar
muy lejos de su sitio final.
Para continuar con el algoritmo, debemos ir reduciendo progresivamente k
dividiéndolo sucesivamente por 2 y k-ordenando los sub-arreglos que nos salgan
(recuerda que nos salen k sub-arreglo). Cuando lleguemos a k=1 habremos
terminado. Pero de momento, nuestra k valía 5, así que ahora
k←k/2=5/2=2 Nuestra nueva k vale 2. Repetimos todo el tinglado, pero ahora nos
saldrán 2 sub-arreglo cuyos elementos están separados por 2 lugares.
METODO DE ORDENAMIENTO DE SHELL SORT
El primero (en marrón) y el segundo (en verde):
31, 12 , 22 , 45 , 39 , 75 , 15 , 79 , 66 , 89 , 98
Ordenamos por un lado los marrones entre ellos y los verdes entre ellos... es
decir, 2-ordenamos el arreglo (curiosamente, los verdes ya están ordenados....
probablemente ha contribuido a ello la 5-ordenación que ya hemos hecho.
En ese caso, la ordenación ha requerido muy poco esfuerzo)
15 , 12 , 22 , 45 , 31, 75 , 39 , 79 , 66 , 89, 98
METODO DE ORDENAMIENTO DE SHELL SORT
.
Ahora que k=1 y que vamos a aplicar el algoritmo de inserción directa tal
cual, haremos muchas menos comparaciones e intercambios que si lo hubiéramos
aplicado con en arreglo tal como lo teníamos al empezar.
El algoritmo de inserción directa se comporta tanto mejor cuanto más cerca está
cada elemento de su sitio definitivo. Finalmente, el arreglo queda de ésta manera:
12, 15, 22, 31, 39, 45, 66, 75, 79, 89, 98
Cada elemento descolocado ha tenido que moverse pocos lugares. Muchos de
ellos ni siquiera se han movido.
METODO DE ORDENAMIENTO DE SHELL SORT
se basa en el divide y vencerás paradigma. Su
tiempo de ejecución del peor caso tiene un
orden de crecimiento menor que la ordenación
por inserción. Dado que se trata de
subproblemas, declaramos cada subproblema
como ordenar una submatriz A [p .. r].
Inicialmente, p = 1 y r = n, pero estos valores
cambian a medida que recurse a través
subproblemas.
METODO MERGER
SORT
TENEMOS EL SIGUIENTE ARREGLO:
[6, 3, 5, 7, 1, 4, 3, 7]
PRIMERO DIVIDIMOS EL ARRGELO EN DOS PARTES IGUALES
APROXIMADAMENTE Y NOS QUEDARIA:
[6, 3, 5, 7] [1, 4, 3, 7]
METODO DE ORDENAMIENTO DE MERGER SORT
Ahora se divide cada uno de los sub-arreglos en partes iguales:
Y que así:
[6, 3, 5, 7] [1, 4, 3, 7]
[6, 3] [5, 7] [1, 4] [3, 7]
Ahora se ordena
[3, 6] [5, 7] [1, 4] [3,7]
[3] [6] [5] [7] [1] [4] [3] [7]
METODO DE ORDENAMIENTO DE MERGER SORT
TENEMOS EL ARREGLO ORDENADO Y SU SOLUCION QUEDA ASI :
[1, 3, 3, 4, 5, 6, 7, 7 ]
METODO DE ORDENAMIENTO DE MERGER SORT
En algoritmia, el problema de la
mochila, comúnmente abreviado
por KP (del inglés Knapsack problem) es un
problema deoptimización combinatoria. Modela
una situación análoga al llenar
una mochila, incapaz de soportar más de un
peso determinado, con todo o parte de un
conjunto de objetos, cada uno con un peso
y valor específicos. Los objetos colocados en la
mochila deben maximizar el valor total sin
exceder el peso máximo.
METODO DE LA
MOCHILA O DE LA
BOLSA DE PAPEL
Problema de la Mochila
Modelo
Un excursionista planea salir de campamento. Hay cinco artículos que desea llevar
consigo, pero entre todos sobrepasan las 60 libras que considera puede cargar.
Para ayudarse en la selección ha asignado un valor a cada artículo en orden
ascendente de importancia.
METODO DE ORDENAMIENTO DE LA MOCHILA
Articulo 1 2 3 4 5
Peso 42 23 21 15 7
Valor 100 60 10 15 15
Planteamiento
Puesto que el modelo es binario, la variable puede tomar solo dos posibles
valores:
Xi = 0 no se lleva el articulo i, 1 sí se lleva el articulo i.
Max Z= 100X1 + 60X2 + 70X3 + 15X4 + 15X5
s.a.
42X1 + 23X2 + 21X3 + 15X4 + 7X6 <= 60
Xi ∈ {0,1}
METODO DE LA MOCHILA
Solución
Z = 145
X1 = 0
X2 = 1
X3 = 1
X4 = 1
X5 = 0
Interpretación
El que alguna variable del valor de 1, significa que nos llevamos en la mochila el
artículo. En este caso nos llevamos los artículos 2, 3 y 4. El valor de Z nos indica el
beneficio de llevar los tres artículos. Por último, de acuerdo con la restricción, no
sobrepasamos el peso permitido.
METODO DE LA MOCHILA

Más contenido relacionado

La actualidad más candente

Metodo de la burbuja en algoritmo
Metodo de la burbuja en algoritmo Metodo de la burbuja en algoritmo
Metodo de la burbuja en algoritmo ikky2345
 
Metodos De Ordenamiento
Metodos De OrdenamientoMetodos De Ordenamiento
Metodos De Ordenamientolichic
 
Tecnicas de integracion matematica i uney
Tecnicas de integracion matematica i uneyTecnicas de integracion matematica i uney
Tecnicas de integracion matematica i uneyJulio Barreto Garcia
 
Analisis lugar geometrico de las raices
Analisis lugar geometrico de las raicesAnalisis lugar geometrico de las raices
Analisis lugar geometrico de las raicesOswal25
 
S6 edo lineales_coef_const_homogeneas_no_homogeneas
S6 edo lineales_coef_const_homogeneas_no_homogeneasS6 edo lineales_coef_const_homogeneas_no_homogeneas
S6 edo lineales_coef_const_homogeneas_no_homogeneasNeil Sulca Taipe
 
Reporte del.Equipo Cuatro
Reporte del.Equipo CuatroReporte del.Equipo Cuatro
Reporte del.Equipo Cuatrocidde2010
 
Cap 07 transformada-z (1)
Cap 07 transformada-z (1)Cap 07 transformada-z (1)
Cap 07 transformada-z (1)Joel Ramirez
 
La función delta de Dirac
La función delta de DiracLa función delta de Dirac
La función delta de DiracKarenBonilla27
 
Tema 2 ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIOR
Tema 2 	ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIORTema 2 	ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIOR
Tema 2 ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIORfederico paniagua
 
Unidad 3 c3-control /FUNCION DE TRANFERENCIA PULSO
Unidad 3 c3-control /FUNCION DE TRANFERENCIA PULSOUnidad 3 c3-control /FUNCION DE TRANFERENCIA PULSO
Unidad 3 c3-control /FUNCION DE TRANFERENCIA PULSODavinso Gonzalez
 
Sección 3.6 Trnasformada Z unilateral
Sección 3.6 Trnasformada Z unilateralSección 3.6 Trnasformada Z unilateral
Sección 3.6 Trnasformada Z unilateralJuan Palacios
 
S11 funcion delta_de__dirac_-_series_de_fourier
S11 funcion delta_de__dirac_-_series_de_fourierS11 funcion delta_de__dirac_-_series_de_fourier
S11 funcion delta_de__dirac_-_series_de_fourierNeil Sulca Taipe
 
Teoria de fracciones parciales y t ransformada de laplace
Teoria de fracciones parciales y t ransformada de laplaceTeoria de fracciones parciales y t ransformada de laplace
Teoria de fracciones parciales y t ransformada de laplaceOswaldoguanipa1
 
Jflambert lyada - ayudantia ordenamiento y teo maestro
Jflambert   lyada - ayudantia ordenamiento y teo maestroJflambert   lyada - ayudantia ordenamiento y teo maestro
Jflambert lyada - ayudantia ordenamiento y teo maestroFrancisco Lambert Obediente
 

La actualidad más candente (20)

Metodo de la burbuja en algoritmo
Metodo de la burbuja en algoritmo Metodo de la burbuja en algoritmo
Metodo de la burbuja en algoritmo
 
Hamilton Lagrange
Hamilton LagrangeHamilton Lagrange
Hamilton Lagrange
 
Metodos De Ordenamiento
Metodos De OrdenamientoMetodos De Ordenamiento
Metodos De Ordenamiento
 
Tecnicas de integracion matematica i uney
Tecnicas de integracion matematica i uneyTecnicas de integracion matematica i uney
Tecnicas de integracion matematica i uney
 
Analisis lugar geometrico de las raices
Analisis lugar geometrico de las raicesAnalisis lugar geometrico de las raices
Analisis lugar geometrico de las raices
 
S6 edo lineales_coef_const_homogeneas_no_homogeneas
S6 edo lineales_coef_const_homogeneas_no_homogeneasS6 edo lineales_coef_const_homogeneas_no_homogeneas
S6 edo lineales_coef_const_homogeneas_no_homogeneas
 
Unidad iii
Unidad iiiUnidad iii
Unidad iii
 
Reporte del.Equipo Cuatro
Reporte del.Equipo CuatroReporte del.Equipo Cuatro
Reporte del.Equipo Cuatro
 
transformada z
transformada ztransformada z
transformada z
 
Cap 07 transformada-z (1)
Cap 07 transformada-z (1)Cap 07 transformada-z (1)
Cap 07 transformada-z (1)
 
La función delta de Dirac
La función delta de DiracLa función delta de Dirac
La función delta de Dirac
 
Tema 2 ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIOR
Tema 2 	ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIORTema 2 	ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIOR
Tema 2 ECUACIONES DIFERENCIALES LINEALES DE ORDEN SUPERIOR
 
Unidad 3 c3-control /FUNCION DE TRANFERENCIA PULSO
Unidad 3 c3-control /FUNCION DE TRANFERENCIA PULSOUnidad 3 c3-control /FUNCION DE TRANFERENCIA PULSO
Unidad 3 c3-control /FUNCION DE TRANFERENCIA PULSO
 
Señales digitales tran z
Señales digitales tran zSeñales digitales tran z
Señales digitales tran z
 
Sección 3.6 Trnasformada Z unilateral
Sección 3.6 Trnasformada Z unilateralSección 3.6 Trnasformada Z unilateral
Sección 3.6 Trnasformada Z unilateral
 
S11 funcion delta_de__dirac_-_series_de_fourier
S11 funcion delta_de__dirac_-_series_de_fourierS11 funcion delta_de__dirac_-_series_de_fourier
S11 funcion delta_de__dirac_-_series_de_fourier
 
Teoria de fracciones parciales y t ransformada de laplace
Teoria de fracciones parciales y t ransformada de laplaceTeoria de fracciones parciales y t ransformada de laplace
Teoria de fracciones parciales y t ransformada de laplace
 
Jflambert lyada - ayudantia ordenamiento y teo maestro
Jflambert   lyada - ayudantia ordenamiento y teo maestroJflambert   lyada - ayudantia ordenamiento y teo maestro
Jflambert lyada - ayudantia ordenamiento y teo maestro
 
Método de insercion
Método de insercionMétodo de insercion
Método de insercion
 
Limites
LimitesLimites
Limites
 

Similar a Programacion dinamicaaaa

Método de Ordenamiento Sort Shell
Método de Ordenamiento Sort ShellMétodo de Ordenamiento Sort Shell
Método de Ordenamiento Sort ShellAntonio Huertas
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamientoLalo Chooper
 
metodosdeordenamiento.pptx
metodosdeordenamiento.pptxmetodosdeordenamiento.pptx
metodosdeordenamiento.pptxLeydiCardona3
 
Arrays metodos deordenamiento01
Arrays metodos deordenamiento01Arrays metodos deordenamiento01
Arrays metodos deordenamiento01Alma Lopez
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoTAtiizz Villalobos
 
Presentacion de programacion 2
Presentacion de programacion 2Presentacion de programacion 2
Presentacion de programacion 2Cori Marcano
 
Jflambert lyada - ayudantia matematicas discretas
Jflambert   lyada - ayudantia matematicas discretasJflambert   lyada - ayudantia matematicas discretas
Jflambert lyada - ayudantia matematicas discretasFrancisco Lambert Obediente
 
expo de metodos de busqueda.pptx
expo de metodos de busqueda.pptxexpo de metodos de busqueda.pptx
expo de metodos de busqueda.pptxPanlido
 
Algoritmos ordenación.pptx
Algoritmos ordenación.pptxAlgoritmos ordenación.pptx
Algoritmos ordenación.pptxFranSilvo
 
Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)
Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)
Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)Rubi Veronica Chimal Cuxin
 
Metodo_de_Burbuja.pptx
Metodo_de_Burbuja.pptxMetodo_de_Burbuja.pptx
Metodo_de_Burbuja.pptxAULATICSomoto
 

Similar a Programacion dinamicaaaa (20)

Método de Ordenamiento Sort Shell
Método de Ordenamiento Sort ShellMétodo de Ordenamiento Sort Shell
Método de Ordenamiento Sort Shell
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
Metodos de ordenamiento
Metodos de ordenamientoMetodos de ordenamiento
Metodos de ordenamiento
 
metodosdeordenamiento.pptx
metodosdeordenamiento.pptxmetodosdeordenamiento.pptx
metodosdeordenamiento.pptx
 
Arrays metodos deordenamiento01
Arrays metodos deordenamiento01Arrays metodos deordenamiento01
Arrays metodos deordenamiento01
 
Reporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamientoReporte metodos de busqueda y ordenamiento
Reporte metodos de busqueda y ordenamiento
 
Presentacion de programacion 2
Presentacion de programacion 2Presentacion de programacion 2
Presentacion de programacion 2
 
Jflambert lyada - ayudantia matematicas discretas
Jflambert   lyada - ayudantia matematicas discretasJflambert   lyada - ayudantia matematicas discretas
Jflambert lyada - ayudantia matematicas discretas
 
Ordenamiento
OrdenamientoOrdenamiento
Ordenamiento
 
Ordenamiento
OrdenamientoOrdenamiento
Ordenamiento
 
Guia Matriz Escalonada Reducina
Guia Matriz Escalonada ReducinaGuia Matriz Escalonada Reducina
Guia Matriz Escalonada Reducina
 
expo de metodos de busqueda.pptx
expo de metodos de busqueda.pptxexpo de metodos de busqueda.pptx
expo de metodos de busqueda.pptx
 
Presentacion
PresentacionPresentacion
Presentacion
 
Algoritmos ordenación.pptx
Algoritmos ordenación.pptxAlgoritmos ordenación.pptx
Algoritmos ordenación.pptx
 
Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)
Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)
Informe técnico - Unidad 5 Métodos de ordenamiento (Rubí Veronica)
 
Metodo_de_Burbuja.pptx
Metodo_de_Burbuja.pptxMetodo_de_Burbuja.pptx
Metodo_de_Burbuja.pptx
 
2esoquincena1
2esoquincena12esoquincena1
2esoquincena1
 
Calculo mental
Calculo mentalCalculo mental
Calculo mental
 
Informe ordenamiento
Informe ordenamientoInforme ordenamiento
Informe ordenamiento
 
Programación dinámica presentación
Programación dinámica presentaciónProgramación dinámica presentación
Programación dinámica presentación
 

Más de J_cordero

Rol de gerentes
Rol de gerentesRol de gerentes
Rol de gerentesJ_cordero
 
Metodos de Optimizacion
Metodos de OptimizacionMetodos de Optimizacion
Metodos de OptimizacionJ_cordero
 
Proceso administrativo, acto administrativo
Proceso administrativo, acto administrativoProceso administrativo, acto administrativo
Proceso administrativo, acto administrativoJ_cordero
 
Proceso administrativo
Proceso administrativoProceso administrativo
Proceso administrativoJ_cordero
 
Nuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointNuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointJ_cordero
 
No numerica ii
No numerica iiNo numerica ii
No numerica iiJ_cordero
 

Más de J_cordero (6)

Rol de gerentes
Rol de gerentesRol de gerentes
Rol de gerentes
 
Metodos de Optimizacion
Metodos de OptimizacionMetodos de Optimizacion
Metodos de Optimizacion
 
Proceso administrativo, acto administrativo
Proceso administrativo, acto administrativoProceso administrativo, acto administrativo
Proceso administrativo, acto administrativo
 
Proceso administrativo
Proceso administrativoProceso administrativo
Proceso administrativo
 
Nuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power pointNuevo presentación de microsoft office power point
Nuevo presentación de microsoft office power point
 
No numerica ii
No numerica iiNo numerica ii
No numerica ii
 

Programacion dinamicaaaa

  • 1.
  • 2. La programación dinámica es un enfoque general para la solución de problemas en los que es necesario tomar decisiones en etapas sucesivas. Las decisiones tomadas en una etapa condicionan la evolución futura del sistema, afectando a las situaciones en las que el sistema se encontrará en el futuro (denominadas estados), y a las decisiones que se plantearán en el futuro. Conviene resaltar que a diferencia de la programación lineal, el modelado de problemas de programación dinámica no sigue una forma estándar. Así, para cada problema será necesario especificar cada uno de los componentes que caracterizan un problema de programación dinámica. Programación Dinámica
  • 3. El Método de la Burbuja o Intercambio se basa en el principio de comparar pares de elementos adyacentes e intercambiarlos entre sí hasta que estén todos ordenados. METODO DE ORDENAMIENTO DE LA BURBUJA
  • 4. Vemos un ejemplo sencillo. Supongamos que queremos ordenar estos valores con el algoritmo de la burbuja: 45, 52, 21, 37, 49, así pues, n=5 . (45, 52, 21, 37, 49) METODO DE ORDENAMIENTO DE LA BURBUJA
  • 5. 1ª pasada: comparamos cada uno de los cuatro primeros (n-1) con los que le siguen. Si un elemento no está en orden con respecto al siguiente, los intercambiamos de sitio y seguimos. El elemento de mayor valor (52) irá "ascendiendo" hasta la última posición. 45, 52, 21, 37, 49 → Comparar 45 y 52. (1º y 2º) Están en orden. Seguimos. 45, 52, 21, 37, 49 → Comparar 52 y 21. (2º y 3º) No están en orden. Intercambio. 45, 21, 52, 37, 49 → seguimos 45, 21, 52, 37, 49 → Comparar 52 y 37 (3º y 4º). No están en orden. Intercambio. 45, 21, 37, 52, 49 → seguimos 45, 21, 37, 52, 49 → Comparar 52 y 49. (4º y 5º). No están en orden. Intercambio. 45, 21, 37, 49, 52 → Ya hemos terminado esta pasada. 45, 21, 37, 49, 52 → El 5º elemento ya está en su sitio. METODO DE ORDENAMIENTO DE LA BURBUJA
  • 6. 2ª pasada: comparamos cada uno de los tres primeros (n-2) con los que le siguen. No llegamos a hacer comparaciones que involucren al 5º elemento, porque la primera pasada hizo que el mayor de todos los elementos ocupara la última posición, con lo cual, sabemos que ese ya está en su sitio. Trabajaremos sólo con los cuatro que quedan. 45, 21, 37, 49, 52 → Comparar 1º y 2º. No están en orden. Intercambio. 21, 45, 37, 49, 52 → seguimos 21, 45, 37, 49, 52 → Comparar 2º y 3º. No están en orden. Intercambio. 21, 37, 45, 49, 52 → seguimos 21, 37, 45, 49, 52 → Comparar 3º y 4º. Están en orden. Pasada terminada. 21, 37, 45, 49, 52 → El 4º elemento ya está en su sitio. (Fíjate en que el array ya está en orden, pero algoritmicamente, eso no lo sabemos). METODO DE ORDENAMIENTO DE LA BURBUJA
  • 7. 3ª pasada: Comparamos cada uno de los dos primeros (n-3) con los siguientes. 21, 37, 45, 49, 52 → 1º y 2º. Están en orden. Seguimos. 21, 37, 45, 49, 52 → 2º y 3º. Están en orden. Pasada terminada. 21, 37, 45, 49, 52 → Ya tenemos tres en orden. METODO DE ORDENAMIENTO DE LA BURBUJA
  • 8. 4ª y última pasada: Comparamos el primero con el segundo. 21, 37, 45, 49, 52 → 1º y 2º están en orden. Pasada terminada. 21, 37, 45, 49, 52 → Ya tenemos los cuatro últimos en orden. 21, 37, 45, 49, 52 → Así pues, el primero también lo está Las solucion es: 21,37,45,49,52 METODO DE ORDENAMIENTO DE LA BURBUJA
  • 9. El ordenamiento Shell (Shell sort en inglés) es un algoritmo de ordenamiento . El método se denomina Shell en honor de su inventor Donald Shell. Su implementación original, requiere O(n2) comparaciones e intercambios en el peor caso. METODO DE SHELL SORT
  • 10. Veamos el siguiente arreglo: 75, 15, 22, 45, 39, 98, 12, 79, 66, 89, 31 Se debe empezar con k=n/2 , siendo n el número de elementos de arreglo, y utilizando siempre la división entera.... después iremos variando k haciéndolo más pequeño mediante sucesivas divisiones por 2, hasta llegar a k=1. METODO DE SHELL SORT
  • 11. Empezamos con k=5. Así pues, vamos a dividir nuestro arreglo original en 5 sub-arreglo, en los cuales, sus elementos estarán separados por 5 lugares del arreglo original (el salto o gap es 5). Vamos a hacerlo con colores. Tomamos el primer elemento (el 75) contamos 5 lugares y tomamos también otro elemento (el 98) volvemos a contar 5 y tomamos otro (el 31) y acabamos porque se nos acaba el arreglo. El primer sub- arreglo con k=5 es el formado por 75, 98 y 31. Vamos a pintarlos en rojo 75, 15, 22, 45, 39, 98, 12, 79, 66, 89, 31 METODO DE ORDENAMIENTO DE SHELL SORT
  • 12. Ahora, ordenaremos los elementos del sub-arreglo rojo pero sólo entre ellos, utilizando el algoritmo de Inserción directa. 31 , 15, 22, 45, 39, 75 , 12, 79, 66, 89, 98 Fíjate qué curioso. El 31, un elemento relativamente pequeño se ha ido hacia el principio y el 98 hacia el final... ¡pero dando saltos ( gap ) de 5 en 5 lugares! Cada uno ha avanzado en saltos de 5 hacia una posición cercana a su ubicación definitiva. METODO DE ORDENAMIENTO DE SHELL SORT
  • 13. . Formemos ahora otro sub-arreglo con salto k=5... partiendo del segundo elemento (el 14) y contando 5 (tomamos también el 12) y ya está, porque se acaba el arreglo. 31 , 15 , 22, 45, 39, 75 , 12 , 79, 66, 89, 98 METODO DE ORDENAMIENTO DE SHELL SORT
  • 14. Vamos a ordenarlos entre ellos con Inserción directa, el 12 primero y el 15 después. 31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98 METODO DE ORDENAMIENTO DE SHELL SORT
  • 15. Ahora a por otro... el 22 y el 79 31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98 Están en orden entre ellos, así que se quedan como están. Ahora le toca al sub-arreglo formado por el 45 y el 66 31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98 Que también están en orden entre ellos y finalmente el 39 y el 89, que también están en orden. 31 , 12 , 22, 45, 39, 75 , 15 , 79, 66, 89, 98 METODO DE ORDENAMIENTO DE SHELL SORT
  • 16. Hemos formado 5 sub-arreglos en los cuales los elementos están separados por 5 lugares (porque k=5). Hemos ordenado cada sub-arreglo por separado utilizando inserción directa, y hemos logrado que cada elemento se dirija hacia su ubicación definitiva en pasos de 5 lugares. Por supuesto, no hemos terminado todavía, pero resulta evidente que algunos elementos, como el 31, el 98 o el 12 han dado un gran salto y que no deben andar muy lejos de su sitio final. Para continuar con el algoritmo, debemos ir reduciendo progresivamente k dividiéndolo sucesivamente por 2 y k-ordenando los sub-arreglos que nos salgan (recuerda que nos salen k sub-arreglo). Cuando lleguemos a k=1 habremos terminado. Pero de momento, nuestra k valía 5, así que ahora k←k/2=5/2=2 Nuestra nueva k vale 2. Repetimos todo el tinglado, pero ahora nos saldrán 2 sub-arreglo cuyos elementos están separados por 2 lugares. METODO DE ORDENAMIENTO DE SHELL SORT
  • 17. El primero (en marrón) y el segundo (en verde): 31, 12 , 22 , 45 , 39 , 75 , 15 , 79 , 66 , 89 , 98 Ordenamos por un lado los marrones entre ellos y los verdes entre ellos... es decir, 2-ordenamos el arreglo (curiosamente, los verdes ya están ordenados.... probablemente ha contribuido a ello la 5-ordenación que ya hemos hecho. En ese caso, la ordenación ha requerido muy poco esfuerzo) 15 , 12 , 22 , 45 , 31, 75 , 39 , 79 , 66 , 89, 98 METODO DE ORDENAMIENTO DE SHELL SORT
  • 18. . Ahora que k=1 y que vamos a aplicar el algoritmo de inserción directa tal cual, haremos muchas menos comparaciones e intercambios que si lo hubiéramos aplicado con en arreglo tal como lo teníamos al empezar. El algoritmo de inserción directa se comporta tanto mejor cuanto más cerca está cada elemento de su sitio definitivo. Finalmente, el arreglo queda de ésta manera: 12, 15, 22, 31, 39, 45, 66, 75, 79, 89, 98 Cada elemento descolocado ha tenido que moverse pocos lugares. Muchos de ellos ni siquiera se han movido. METODO DE ORDENAMIENTO DE SHELL SORT
  • 19. se basa en el divide y vencerás paradigma. Su tiempo de ejecución del peor caso tiene un orden de crecimiento menor que la ordenación por inserción. Dado que se trata de subproblemas, declaramos cada subproblema como ordenar una submatriz A [p .. r]. Inicialmente, p = 1 y r = n, pero estos valores cambian a medida que recurse a través subproblemas. METODO MERGER SORT
  • 20. TENEMOS EL SIGUIENTE ARREGLO: [6, 3, 5, 7, 1, 4, 3, 7] PRIMERO DIVIDIMOS EL ARRGELO EN DOS PARTES IGUALES APROXIMADAMENTE Y NOS QUEDARIA: [6, 3, 5, 7] [1, 4, 3, 7] METODO DE ORDENAMIENTO DE MERGER SORT
  • 21. Ahora se divide cada uno de los sub-arreglos en partes iguales: Y que así: [6, 3, 5, 7] [1, 4, 3, 7] [6, 3] [5, 7] [1, 4] [3, 7] Ahora se ordena [3, 6] [5, 7] [1, 4] [3,7] [3] [6] [5] [7] [1] [4] [3] [7] METODO DE ORDENAMIENTO DE MERGER SORT
  • 22. TENEMOS EL ARREGLO ORDENADO Y SU SOLUCION QUEDA ASI : [1, 3, 3, 4, 5, 6, 7, 7 ] METODO DE ORDENAMIENTO DE MERGER SORT
  • 23. En algoritmia, el problema de la mochila, comúnmente abreviado por KP (del inglés Knapsack problem) es un problema deoptimización combinatoria. Modela una situación análoga al llenar una mochila, incapaz de soportar más de un peso determinado, con todo o parte de un conjunto de objetos, cada uno con un peso y valor específicos. Los objetos colocados en la mochila deben maximizar el valor total sin exceder el peso máximo. METODO DE LA MOCHILA O DE LA BOLSA DE PAPEL
  • 24. Problema de la Mochila Modelo Un excursionista planea salir de campamento. Hay cinco artículos que desea llevar consigo, pero entre todos sobrepasan las 60 libras que considera puede cargar. Para ayudarse en la selección ha asignado un valor a cada artículo en orden ascendente de importancia. METODO DE ORDENAMIENTO DE LA MOCHILA Articulo 1 2 3 4 5 Peso 42 23 21 15 7 Valor 100 60 10 15 15
  • 25. Planteamiento Puesto que el modelo es binario, la variable puede tomar solo dos posibles valores: Xi = 0 no se lleva el articulo i, 1 sí se lleva el articulo i. Max Z= 100X1 + 60X2 + 70X3 + 15X4 + 15X5 s.a. 42X1 + 23X2 + 21X3 + 15X4 + 7X6 <= 60 Xi ∈ {0,1} METODO DE LA MOCHILA
  • 26. Solución Z = 145 X1 = 0 X2 = 1 X3 = 1 X4 = 1 X5 = 0 Interpretación El que alguna variable del valor de 1, significa que nos llevamos en la mochila el artículo. En este caso nos llevamos los artículos 2, 3 y 4. El valor de Z nos indica el beneficio de llevar los tres artículos. Por último, de acuerdo con la restricción, no sobrepasamos el peso permitido. METODO DE LA MOCHILA