Sunteți pe pagina 1din 52

Es una tcnica para resolver problemas

mediante la combinacin de soluciones a


subproblemas.
La programacin dinmica se aplica tambin a
problema de optimizacin.
En este tipo de problemas puede haber muchas
soluciones cada solucin tiene un valor y
deseamos encontrar una solucin con el valor
ptimo (max min).
Llamamos a tal solucin una solucin
ptima y no la solucin ptima debido a que
puede haber varias soluciones ptimas.
El desarrollo de un algoritmo de
programacin dinmica se puede dividir en
cuatro pasos:
1. Caracterizar la estructura de una solucin
ptima.

2. Definir en forma de recurrencia el valor de


una solucin ptima.

3. Calcular el valor de una solucin ptima de


manera ascendente.

4. Construir una solucin ptima a partir de la


informacin calculada.
Los primeros tres pasos son la base de la
programacin dinmica.
El paso 4 slo es necesario si se desea conocer
el valor de una solucin ptima.
Cuando se ejecuta el paso 4 generalmente se
calcula informacin adicional durante el paso
3, para facilitar la construccin de una solucin
ptima.
Esta Basada en el Principio de
Optimizacin de Bellman:

CUALQUIER SUBSECUENCIA DE
DESICIONES DE UNA SECUENCIA
OPTIMA DE DECISIONES QUE
RESULEVE UN PROBLEMA TAMBIEN
DEBE SER OPTIMA RESPECTO AL
SUBPROBLEMA QUE RESUELVE
Supongamos que un problema se resuelve tras
tomar una secuencia de d1, d2, . dn
decisiones.

La tcnica de programacin dinmica evita


explorar todas las secuencias posibles por
medio de la resolucin de subproblemas de
tamao creciente y almacenamiento en una
tabla de las soluciones ptimas de esos
subproblemas para facilitar las soluciones de
los problemas mas grandes.
Mas formalmente:
- Sea Eo el estado inicial del
problema.
- Sea d1 {V1i,V1ni} el conjunto de
valores de decisin posibles para la decisin
d1.
- Sea E1i el estado del problema tras la
eleccin del valor V1i, 1<= i <= Vn1
- Sea S1i una secuencia ptima de decisiones
respecto al estado E1i.
PRINCIPIO DE OPTIMALIDAD
DE BELLMAN

Una secuencia ptima de decisiones respecto a


Eo es la mejor de las secuencias de decisin
{v1i, S1i} i<=1<=n1.

El mismo razonamiento puede aplicare a


cualquier subsecuencia de decisiones dkdl
1<l<k<n1 partiendo como estado inicial de Ek-
1.
Una solucin dinmica para este problema,
simbolizando como (k,l) debe expresarse en
trminos de los valores de dk, y el
subproblema (k+1, l) resultante de aplicar
cada valor de decisin.
Estructura de Programacin
Dinmica
Decisin
K
Variable
Variable de F
de
Estado X Funcin de Transforma Y Estado
(entrada) (salida)
r Medida de
Rendimiento
y/o eficiencia
del sistema
APLICACIONES
APLICACIN 1: Modelo de la ruta ms corta

En la ciudad 1 queda un aeropuerto internacional con


afluencia de muchos turistas que desean conocer los
centros tursticos indicados en la fig.
La red muestra la distancia (en Km.) de un centro a
otro, as mismo muestra las alternativas de traslado.
Una agencia de City Tour internacional desea
determinar lo siguiente:
Para los turistas que desean conocer nicamente el
centro turstico nmero 10 hallar la trayectoria de
menor distancia.
Modelo de la Ruta ms Corta

680 610
2 5 8
790
1050 790
1030
550
580 540
760
1 3 6 10
900
940
660

770
790 1390
510
700
4 7 9
830 270
Estructura
k1 k2 k3 k4

x1
x2 x3 x4
1 2 3 4

r1 r2 r3 r4

Donde:
Xi:Estado actual en el que se encuentra el turista en la etapa i
Ki:Estado al que dirige en la etapa i
fi(Xi): Valor acumulado de la funcin objetivo.
Ri: Distancia recorrida en la etapa i.
Ki*: Decisin ptima
Modelo de la Ruta ms Corta

680 610
2 5 8
790
1050 790
1030
550
580 540
760
1 3 6 10
900
940
660

770
790 1390
510
700
4 7 9
830 270
Mtodo del Retroceso

Etapa 4 r4(k4) Solucin Optima


x4 k4=10 f4(x4) k4*
8 1030 1030 10
9 1390 1390 10

Etapa 3 r3(k3)+f4(k3) Solucin Optima


x3 k3=8 k3=9 f3(x3) k3*

5 610+1030=1640 790+1390=2180 1640 8

6 540+1030=1570 940+1390=2330 1570 8

7 790+1030=1820 270+1390=1660 1660 9


Mtodo del Retroceso
Etapa 2 r2(k2)+f3(k2) Solucin Optima
x2 k2=5 k2=6 k2=7 f2(x2) k2*
680+1640= 790+1570= 1050+1660
2 2320 2360 =2710 2320 5
580+1640= 760+1570= 660+1660=
3 2220 2330 2320 2220 5
510+1640= 700+1570= 830+1660=
4 2150 2270 2490 2150 5

Etapa 1 r1(k1)+f2(k1) Solucin Optima


x1 k1=2 k1=3 k1=4 f1(x1) k1*
550+2320= 900+2220= 770+2150=
1 2870 3120 2920 2870 2
Mtodo del Retroceso

Solucin ptima:

Etapa Nodo actual Nodo destino


1 1 2
2 2 5
3 5 8
4 8 10

Entonces la trayectoria de menor distancia es 1, 2, 5, 8, 10 y la distancia


recorrida es 2870 kilmetros.
APLICACIONES
APLICACIN 2: Modelo de la ruta ms corta

La principal mquina de un proceso qumico de produccin es


inspeccionada anualmente, siendo conservada o reemplazada. El
costo de mantenimiento y el valor de rescate de esta maquina se
presenta en la tabla siguiente:
Edad (aos): 1 2 3 4
Costo de mantenimiento (miles de $) 700 300 900 120
Valor de rescate (miles de $) 950 500 200 0

El costo de una mquina nueva es de $ 2 000 000. La vida til de


las instalaciones que realizan este proceso de produccin es de 5
aos al final de lo cual toda la instalacin ser rescatada. La
mquina actual completar 3 aos en la prxima inspeccin.
Determine el plan de mantenimiento y reemplazo de esta mquina.
Estructura
K1 K2 K3 K4 K5 K6

X1
X2 X3 X4 X5 X6
1 2 3 4 5 6

R1 R2 R3 R4 R5 R6

Donde:
Xi: Edad del activo al inicio de la etapa i
Ki: Decisin de Conservar o Reemplazar en la etapa i
Para la etapa 6 la nica decisin es Vender.
fi (Xi) : Valor acumulado de la funcin objetivo (menor costo) para el estado
del activo Xi desde la etapa i hasta el final del horizonte de vida.
ri : Costo de reemplazar o conservar el activo.
En la etapa 6 el valor de r6 es el producto del valor de rescate del activo.
Kix: Decisin optima en la etapa i dado el estado Xi en el que se encuentra el
activo en la etapa i
SOLUCIN
SOLUCIN
SOLUCIN
POLITICAS OPTIMAS:

AO Alternativa 1 Alternativa 2
1 R R
2 C C
3 C R
4 R C
5 C C
6 V V
Un constructor produce barcos a pedido, y tiene los siguientes
pedidos para ser entregados al final de los prximos 6 meses:

1 Mes: Jul Ago Sep Oct Nov Dic


Nro de barcos:1 2 5 3 2 1

l puede construir hasta 4 barcos en cualquier mes, y puede


guardar hasta 3 barcos en stock. El costo de construccin de los
barcos considera un costo fijo de 10 000 dlares y un costo
variable de 4 000 dlares por barco construido. Para mantener
un barco en stock durante el periodo de un mes, el constructor
gasta $ 1 000. Cul debe ser el plan optimo de construccin, de
modo que se minimice el costo total del constructor?. Formule
un modelo de programacin dinmica para obtener la solucin.
Estructura
K1 K2 K3 K4 K5 K6

X2 X3 X4 X5 X6
X1

1 2 3 4 5 6

r1 r2 r3 r4 r5 r6

D1=1 D2=2 D3=3 D4=4 D5=5 D6=6


Donde:
Xi: Inventario al inicio del mes i
Ki: Nmero de unidades a producir en el mes i
fi (Xi) : Valor acumulado de la funcin objetivo (menor costo)
desde la etapa i hasta el final
ri : Costo de produccin + costo de inventario en la la etapa i
Kix: Decisin optima en la etapa i dado el estado Xi en el que
se encuentra el inventario inicial disponible en la etapa i
Las relaciones siguientes expresan los costos en miles de
dlares:
Cp(Ki) = 10 + 4ki, si Ki > 0
= 0. so K = 0
Ci(Xi) = 1*Xi
Etapa 6: Diciembre

Etapa 5: Noviembre
Etapa 4: Octubre

Etapa 3 : Septiembre
Etapa 2: Agosto

Para esta etapa debe observarse que 3 X2+K2 5

Etapa 1: Julio

Para esta etapa debe observarse que 1 X1+K1 4


SOLUCION OPTIMA
MES X K D X CP I CT
INIC FINA

10+4(4) =26
Jul 0 4 1 3 3 29
0
Ago 3 0 2 1 1 1
10 +4(4) = 26
Sep 1 4 5 0 0 26
10 + 4(3) =22
Oct 0 3 3 0 0 22
10 + 4(3) =22
Nov 0 3 2 1 1 23
0
Dic 1 0 1 0 0 0
96 5 101
Aplicacin en WinQSB
Aplicacin en WinQSB
Aplicacin en WinQSB
Un contratista necesita decidir el tamao de su fuerza de trabajo en las
5 semanas siguientes. El tamao mnimo de la fuerza de trabajo
necesario para las 5 semanas es de 6, 5, 3, 6 y 8 respectivamente.

El exceso de trabajadores que se mantienen en la fuerza laboral


costar 300 dlares por trabajador, por semana y las nuevas
contrataciones en cualquier semana incurrirn en un costo fijo de 400
mas 200 dlares por trabajador, por semana.

Si la fuerza de trabajo inicial es de 4 trabajadores, y el costo de


despido en cualquiera de las semanas es de 200 dlares, determine los
tamaos ptimos de la fuerza de trabajo para el horizonte de
planeacin de 5 semanas.

Determinar la poltica de contratacin de personal en un horizonte de


5 semanas
Estructura
K1 K2 K3 K4 K5

X1=4
X2 X3 X4

1 2 3 4 5

r1 r2 r3 r4 r5

6 5 3 6 8
Donde:

Xi: Nmero de trabajadores disponibles al inicio de la


semana i
Ki: Nmero de trabajadores a mantener en la semana
i
fi (Xi) : Valor acumulado de la funcin objetivo
(menor costo) desde la etapa i hasta el final
ri : Costo de contratacin + costo de despido +costo
de exceso
Kix: Decisin optima en la etapa i dado el estado Xi
en el que se encuentra el nmero de trabajadores
disponibles en la etapa i
Costo Contratacin :
- 400 + 200*No. De trabajadores
contratdos>0
- 0, si No.Trabajadores
Contratados=0

Costo de despido:
200*NroTrabajadoresDespedidos

Costo de exceso:
300*NroTrabajadoresExcedentes
ETAPA 5

ETAPA 4
ETAPA 3

ETAPA 2
ETAPA 1
POLITICA OPTIMA
ETAP Xi Ki REQU CONT DESPEDIDO EXCESO COST
A ERIMI RATO
ENTO
-
1 4 6 6 2 - 800
-
2 6 6 5 - 1 300
-
3 6 6 3 - 3 900
-
4 6 6 6 - - -
-
5 6 6 8 - - 800
Total 2800
APLICACIN 7: Problema de la Mochila
Suponga que se tiene 3 tipos de cargamento a
transportar en una barco con capacidad para 10
toneladas. En la siguiente tabla se muestra el
peso y la utilidad de cada tipo de cargamento.

Utilidad/ unidad de
Peso carga

Carga A 4 Ton s/. 1100

Carga B 3 Ton s/.700

Carga C 5 Ton s/.1200


Determinar el nmero de unidades de cada
tipo de carga a incluir en el barco de tal
manera que se maximice su utilidad.
La estructura del problema es:
Donde:
Xi: Capacidad disponible en la etapa i
X1: Capacidad disponible para las 3 cargas
X2: Capacidad disponible para las cargas B y C
X3: Capacidad disponible para la carga C
Ki: Nmero de unidades a incluir en el barco de la
carga i
fi (Xi) : Valor acumulado de la funcin objetivo (mayor
utilidad) desde la etapa i hasta el final
ri : Utilidad en la etapa i
Kix: Decisin optima en la etapa i dado el estado Xi en
el que se encuentra la capacidad disponible del barco en
la etapa i
Etapa 3
Etapa 2
Etapa 1

POLITICA OPTIMA

Capacidad

CARGA Disponible Ki* Utilidad


A 10 1 1100
B 6 2 1400
C 0 0 0
Total 2500

S-ar putea să vă placă și