NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos...

31
Programación Dinámica Investigación de operaciones II M.C. Héctor Martínez Rubin Celis 1/31 INSTITUTO TECNOLÓGICO DE TEPIC MATERIA: INVESTIGACION DE OPERACIONES II NOTAS DE PROGRAMACIÓN DINÁMICA DEPARTAMENTO DE INGENIERIA INDUSTRIAL ELABORADAS POR: M.C. HECTOR MARTINEZ RUBIN CELIS

Transcript of NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos...

Page 1: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de operaciones II

M.C. Héctor Martínez Rubin Celis 1/31

INSTITUTO TECNOLÓGICO DE TEPIC

MATERIA: INVESTIGACION DE OPERACIONES II

NOTAS DE PROGRAMACIÓN DINÁMICA

DEPARTAMENTO DE INGENIERIA INDUSTRIAL

ELABORADAS POR: M.C. HECTOR MARTINEZ RUBIN CELIS

Page 2: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de operaciones II

M.C. Héctor Martínez Rubin Celis 2/31

CASO FABRICA DE TORTILLAS "MI TIERRA" La fábrica de tortillas "Mi Tierra" es una pequeña compañía ubicada en Tuxpan, Nay. En ella se producen varios productos de harina de maíz y trigo. Principalmente, estos productos son tortillas de maíz y trigo. Las tortillas de maíz son utilizadas en enchiladas, tacos y tostadas; las tortillas de harina se utilizan normalmente en los burritos. El gerente de "Mi Tierra" ha estado trabajando para obtener un contrato con una de las compañías de comida rápida tipo mexicana más importante la "Taco-Tec". La semana pasada fue informado que la compañía "Taco-Tec" había decidido comprar 200 cajas de tortillas de harina a "Mi Tierra" en cada uno de los próximos 7 meses (cada caja contiene 1000 tortillas de harina) a un precio fijo. El gerente inmediatamente empezó a calcular las ganancias que "Mi tierra" pueda tener, llegando a la conclusión de que la compañía hará $1000 cada mes si "mi Tierra" produce exactamente la cantidad necesitada ese mes. Después de un momento de juicio, el gerente calculo también la ganancia por producir más del número de cajas necesitadas para un solo mes. El hizo esto pensando que las tortillas de harina pueden ser producidas y congeladas por un máximo de 4 meses. "Mi Tierra" puede producir más tortillas para un solo mes si se trabaja tiempo extra y contratando más ayuda. Esto no tendrá efecto en la producción de otros productos y se comporta igual en todos los meses. El gerente ha calculado las ganancias para la producción de varias cantidades de tortillas, o como son llamados TAMAÑOS DE LOTE, como a continuación se muestra; Tamaño del lote Ganancia

(Cajas) 200 $1000 400 $2500 600 $3750 800 $4750

Debido a la combinación de factores económicos y de almacenaje, existen economías de escala en la producción del tamaño de lote grande, pero también existen los costos de congelar las tortillas y los costos resultantes del deterioro de algunas tortillas. Pasando de un período de 2 meses, el deterioro por congelación se incrementa marcadamente. Debido a que el gerente desea obtener la mayor ganancia posible para "Mi Tierra" en un contrato de 7 meses con "Taco-Tec", el desea producir el tamaño de lote que conducirá a la ganancia total máxima. Se busca optimizar una función objetivo: Programación Lineal, considera respuestas en fracciones, pero este problema incluye soluciones de tamaño de lote exacto. Además P.L. no siempre considera decisiones sobre el tiempo y el problema de producción de tortillas requiere ser separado en una secuencia de decisiones.

Page 3: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de operaciones II

M.C. Héctor Martínez Rubin Celis 3

Este problema requiere una secuencia de decisiones que sean realizadas con respecto al tiempo, y los parámetros (demanda, ganancias, etc.) son asumidos ser conocidos con certeza. La primera pregunta a hacerse es que tanto producir cada mes tal que sean maximizadas las ganancias totales para un período de planeación de 7 meses considerando la restricción de producir al máximo hasta 4 meses en adelantado a la demanda debido a que los productos se echan a perder después de 4 meses. Sea:

w1 = Número de veces que la demanda de un mes es producida (200 cajas). w2 = Número de veces que la demanda de dos meses es producida (400 cajas). w3 = Número de veces que la demanda de tres meses es producida (600 cajas). w4 = Número de veces que la demanda de cuatro meses es producida (800 cajas).

Usando estas definiciones el problema es formulado de la manera siguiente: Maximizar

1000w1+ 2500w2+ 3750w3+ 4750w4 Sujeto a;

w1+ 2w2+ 3w3+ 4w4 = 7 wi = 0,1,2,3,... para toda i

Este problema parece uno de Programación Lineal, pero debido a los requerimientos de que las variables wi tengan valores discretos este problema pudiera ser resuelto como no de Programación Entera, pero ya que este es un problema de secuencia de tiempo se pudiera utilizar una técnica denominada Programación Dinámica. Programación Dinámica enfoca este problema como una secuencia de decisiones y trabaja para tomar una serie de decisiones que conduzcan a las mayores ganancias sujeto a cualquier restricción que exista en el problema. Tabla de decisiones del séptimo mes Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor ganancia sobre la demanda restante

Ganancia total

7

200

200

$1000

0

0

$1000 *

Page 4: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 4

Tabla de decisiones del sexto mes Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor ganancia sobre la demanda restante

Ganancia total

6

400

200

$1000

200

$1000

$2000

400

$2500

0

0

$2500 *

Tabla de decisiones del quinto mes Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor

ganancia sobre la demanda restante

Ganancia

total

5

600

200

$1000

400

$2500

$3500

400

$2500

200

$1000

$3500

600

$3750

0

0

$3750 *

Tabla de decisiones del cuarto mes Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor

ganancia sobre la demanda restante

Ganancia

total

4

800

200

$1000

600

$3750

$4750

400

$2500

400

$2500

$5000 *

600

$3750

200

$1000

4750

800

$4750

0

0

$4750

Tabla de decisiones del tercer mes

Page 5: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 5

Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor

ganancia sobre la demanda restante

Ganancia

total

3

1000

200

$1000

800

$5000

$6000

400

$2500

600

$2750

$6250 *

600

$3750

400

$2500

$6250 *

800

$4750

200

$1000

$5750

Tabla de decisiones del segundo mes Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor

ganancia sobre la demanda restante

Ganancia

total

2

1200

200

$1000

1000

$6250

$7250

400

$2500

800

$5000

$7500 *

600

$3750

600

$3750

$7500 *

800

$4750

400

$2500

$7250

Tabla de decisiones inicial (primer mes) Mes

Demanda

Opciones de producción

Ganancia inmediata

Demanda restante

Mejor

ganancia sobre la demanda restante

Ganancia

total

1

1400

200

$1000

1200

$7500

$8500

400

$2500

1000

$6250

$8750 *

600

$3750

800

$5000

$8750 *

800

$4750

600

$3750

$8500

El programa de máximas ganancias es: Producir

Page 6: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 6

mes 1 400 400 600 cajas mes 2 0 0 0 " mes 3 400 600 0 cajas mes 4 0 0 400 " mes 5 600 0 0 cajas mes 6 0 400 400 " mes 7 0 0 0 " PROGRAMACION DINAMICA DEFINICION:

Es la técnica matemática (procedimiento de optimización) que es particularmente aplicable a problemas que requieren una secuencia interrelacionadas de decisiones.

Cada decisión transforma la actual situación en una nueva situación. El valor de la secuencia de decisiones es generalmente igual a la suma de valores de las decisiones individuales y las situaciones en la secuencia. En contraste con la Programación Lineal (P.L.) no existe una formulación matemática estándar para los problemas de Programación Dinámica (P. D.). La PROGRAMACION DINAMICA es un tipo general de enfoque para resolver problemas y la ecuación particular debe ser desarrollada (elaborada) para enfrentar (corresponder) a cada situación individual. Por lo tanto cierta habilidad es requerida para reconocer cuando los problemas pueden ser resueltos usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada con la exposición de una amplia variedad de aplicaciones de PROGRAMACION DINAMICA y es estudio de lo que todas las situaciones tienen en común Ejemplo de un problema de camino simple; Suponga que usted vive en una ciudad cuyas calles están distribuidas de la manera siguiente: Todas las calles son de un solo sentido y que el número mostrado en el mapa representa el esfuerzo (usualmente tiempo y algunas veces costo de distancia) requerido para atravesar cada bloque

N

P

B

L

O

F

J

AI

M

5

2 3

5

2

0

4

13

1 2

2

2

2

3

4 2

4

18

25

7

K

G

D

A

C

E

H

1

Page 7: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 7

individualmente. Se desea encontrar el mínimo de esfuerzo total para ir de A a B. Este problema puede ser resuelto enumerando todos los posibles caminos de A a B; sumando esfuerzos, bloque tras bloque de cada camino y escogiendo la suma más pequeña.

Existen 20 caminos diferentes ,100 adiciones y 19 comparaciones. No. de caminos diferentes = 20

Numero de adiciones = 100

Numero de comparaciones = 19

donde N es el numero de etapas (vértices) de A a B. (numero de elementos a sumar) A esta enumeración se le denomina FUERZA BRUTA Aplicando PROGRAMACION DINAMICA

Denote Sc como el esfuerzo mínimo de C a B. SD como el esfuerzo mínimo de D a B.

No se sabe si ir diagonalmente hacia arriba o diagonalmente hacia abajo; adicionalmente se conocen 2 números; a) El esfuerzo total requerido para llegar a C a B por el mejor camino (mínimo esfuerzo). b) El esfuerzo total requerido para llegar de D a B por el mejor camino. Se añade Sc el esfuerzo requerido para ir de A a C obteniendo el esfuerzo requerido de el mejor camino empezando diagonalmente hacia arriba. Lo mismo se le hace a SD mas el esfuerzo para ir de A a D pero diagonalmente hacia abajo. Se comparan las sumas para encontrar el esfuerzo total mínimo la primera mejor decisión. Pero Sc y SD aun son desconocidas. Sin embargo una de las principales ideas de PROGRAMACION DINAMICA a hecho una inofensiva aparición.

⎥⎦

⎤⎢⎣

⎡N/2N

[ ] ⎥⎦

⎤⎢⎣

⎡N/2N

1-N

1- N/2N

⎥⎦

⎤⎢⎣

Page 8: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 8

I) Únicamente los esfuerzos a lo largo del mejor camino de C a B y de D a B son relevantes

para los cálculos anteriores y los esfuerzos de los restantes caminos (9 de cada uno) no necesitan ser calculados.

Esta observación es llamada El principio de Optimalidad el cual dice;

El mejor camino de A a B tiene la propiedad de que cualesquiera que sea la decisión inicial en A, el camino restante a B, empezando del próximo punto después de A, debe ser el mejor camino desde ese punto a B.

Principio de optimalidad de Bellman; Un camino óptimo tiene la siguiente propiedad; Una vez que el primer paso es tomado, los pasos restantes deberán ser una solución óptima para el nuevo problema, con un reducido número de etapas ahora escribiendo la formula 1+Sc SA = min 0+SD

esta justifica lo anterior enunciado II) La segunda de las principales ideas dice que mientras los dos números Sc y SD son

desconocidos inicialmente, se puede calcular Sc si son desconocidos SE y SF (mínimo esfuerzo de E y F a B.)

5+SE 7+SF Sc= min y SD =min 4+SF 3+SG Para poder obtener SE,SF y SG es necesario calcular SI, SJ, SH y SK y estos dependen de SL, SM y SN los cuales a su vez dependen de So y SP. SO y SP pueden ser fácilmente calculados y trabajado en forma de Retroceso (hacia atrás) de O y P a A podemos obtener los deseados cálculos. SO=2 SP=1 2+SO =4 ← SL =5+SO=7 SM= min

Page 9: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 9

8+SP =9 SH =3+SL=10 SN= 4+SP = 5 2+SM = 6 ← SK=2+SN=7 SJ =min 2+SN = 7 3+SL = 10 SI= min 4+SM = 8 ← 2+SH = 12 1+SI = 9 SE= min SF= min 1+SI = 9← 2+SJ = 8 ← 5+SJ = 11 7+SF = 15 SG= min SD =min 4+SK = 11← 3+SG = 14 ← 5+SE = 14 1+SC = 13 SC=min SA =min 4+SF = 12 ← 0+SD = 14 ← Punto óptimo próximo de cada punto inicial PO =B PP =B PL =O PM =O PN =P PH =L PI =M PJ =M PK =N PE =I PF =J PG =J o K PA =C PD =G Pc =F CAMINO OPTIMO A - C - F - J - M - O - B; 1 + 4 + 2 + 2 + 2 + 2 = 13 Lo común en todos los problemas de PROGRAMACION DINAMICA es;

Page 10: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 10

I) Un dado problema como un todo puede ser resuelto si los valores de las mejores soluciones de ciertos subproblemas pueden ser determinados (principio de Optimalidad).

II) La realización de que si uno empieza en o cerca del final del problema como un todo , los

subproblemas son tan simples como tener soluciones triviales. TERMINOLOGIA: Podemos nombrar a la regla que asigna valores a varios subproblemas FUNCION DE VALOR OPTIMO. La función S es el valor óptimo y A en SA es el argumento de la función S. La regla que asocia la primera mejor decisión con cada problema (la función P) es llamada FUNCION DE POLITICA OPTIMA. El principio de optimalidad produce o genera una formula o conjunto de formulas que relacionan varios valores de S. Esta formula es llamada RELACION DE RECURRENCIA (RELACION RECURSIVA). El valor de la función de valor óptimo S para ciertos argumentos es asumida como obvia desde el establecimiento del problema y desde la definición de S con cálculos requeridos. Estos valores obvios son llamados CONDICIONES LIMITANTES. ETAPAS Y ESTADOS EN PROGRAMACION DINAMICA Una variable describe cuantas decisiones hasta cierto momento han sido tomadas y si el número total de decisiones es fijo entonces el número de etapas será igual al número de decisiones. Las variables restantes que describen la actual situación dadas por las variables de etapa son llamadas variables de estado que en general son las variadas posibles condiciones en las cuales el sistema se encuentra en esa etapa del problema y el número de estados puede ser finito o infinito. *Identificar etapas y estados en el ejemplo.

Page 11: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 11

Xn variable de estado dn decisión

fn retorno en la etapa n

La decisión en cada etapa es que tanto asignar La variable de estado sucesivas Xn ,Xn+1 están unidas a través de la ecuación recursiva que calcula los valores de Xn+1 usando el valor de Xn y la decisión en este estado dn . Las variables de estado relacionan el presente estado con el previo. Las variables de estado permiten calcular la restante cantidad de recursos escasos.

I) Retroceso Procedimientos en Programación Dinámica II) Avance I) En Retroceso Condiciones terminales fijas Se realiza el cálculo de valores numéricos desde la línea terminal al punto inicial II) En Avance Condiciones Iniciales fijas Se realiza el cálculo de valores numéricos desde la línea inicial al punto final. Ejemplos La notación simple particular para el problema del camino simple, transforma el mapa de la ciudad en un sistema de coordenadas. Ahora el punto A tiene las coordenadas (0,0), B tiene (6,0) e I tiene (3,1) etc. La función de valor óptimo es ahora una función de un par de números (x,y). *Programación en Retroceso S(x,y)= El valor del camino de mínimo-esfuerzo conectando el vértice (x,y)con el vértice terminal (6,0)

Page 12: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 12

Definamos; au(x,y) como el esfuerzo asociado con el arco conectando el vértice (x,y) con el vértice

(x+1,y+1)(u significa flecha hacia arriba).

ad (x,y) como el esfuerzo del arco que va diagonalmente hacia abajo de (x,y) a (x+1,y-1) (d significa hacia abajo).

au (x,y) o ad (x,y) = ∞ si no existe tal arco en nuestra red ejemplo: au(7,8) = ∞ , Ad(4,2)= ∞

El principio de optimalidad nos da la siguiente relación recursiva au(x,y)+S (x+1,y+1) S(x,y)=min ad (x,y)+S(x+1,y-1) Condición limitante

S(6,0)=0 Si se pide formulación de PROGRAMACION DINAMICA para un problema se refiere a;

1) Definir la función apropiada de valor óptimo incluyendo definición especifica de los argumentos y el significado del valor de la función.

2) Escribir la relación de recurrencia apropiada. 3) Anotar la condición limitante apropiada.

*Programación de Avance S(x,y)= El valor del camino de mínimo-esfuerzo conectando el vértice inicial con el vértice (x,y) o el vértice (x,y) con el vértice inicial (0,0)

Page 13: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 13

Relación Recursiva au (x-1,y-1)+S(x-1,y-1) S(x,y)=min ad (x-1,y+1)+S(x-1,y+1) Condición limitante S(0,0)=0 Otro enfoque de Programación Dinámica: (Programación en avance) Programación Dinámica empieza con una pequeña porción del problema y encuentra la solución óptima para ese pequeño problema. Entonces gradualmente agranda el problema, encontrando la corriente solución óptima de el problema previo, hasta que el prob. Original es resuelto enteramente. Definamos: Xn(n = 1, 2,3,4,5,6)sean las variables de decisión del inmediato destino en la etapa n. La ruta será seleccionada 1=>X1=>X2=>X3=> X4=> X5=>X6 Sea fn (s,xn) el costo total de la política general de las etapas restantes, dado que nos encontramos en s y seleccionamos Xn como el destino inmediato dado s y n , sea Xn* el valor de Xn que minimiza fn(s,Xn )y sea fn*(s) el valor mínimo correspondiente de fn(s,Xn) por esto fn*(s)=fn(s,Xn*) PROGRAMACION DINAMICA resuelve el problema encontrando f6(s)*, f5(s)*, f4(s)*, f3(s)*, f2(s)* y f1(s)*. Entonces; Relación recursiva: fn(s,Xn)=dS,Xn+fn+1*(Xn) Condición limitante: f6(s,X6)=f(X6)

Page 14: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 14

Decisión Decisión X6 f6(s,X6)=f(X6) X5 f5(s,X5)=dSx5+f6(X5)* dec. opt. dist.min opt.

s f6(x6)* X6 s O P f5(s)* X5* B Variable O 2 O L 5+2=7 - 7 O de Estado P 1 P M 2+2=4 8+1=9 4 O N - 4+1=5 5 P X4 f4(s,X4)=dSX4+f*5(X4) S L M N f4*(s) X4* H 3+7=10 - - 10 L I 3+7=10 4+4=8 - 8 M J - 2+4=6 2+5=7 6 M K - - 2+5=7 7 N X3 f3(s,X3)=dSX3+f4(x3)* S H I J K f3(S)* X3* E 2+10=12 1+8=9 - - 9 I F - 1+8=9 2+6=8 - 8 J G - - 5+6=11 4+7=11 11 J o K X2 f2(s,X2)=dSX2+f3(X2)* S E F G f2(S)* x2* C 5+9=14 4+8=12 - 12 F D - 7+8=15 3+11=14 14 G X1 f(s,X1)=dsX1+f(X1)* S C O f1(S)* x1* A 1+12=13 0+14=14 13 C RUTA A - C - F - J - M - O - B Produciendo un costo total de 13 *Tarea resolver estos problemas en avance y retroceso respectivamente.

Page 15: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 15

REEMPLAZO DE EQUIPO Sea; N = numero de unidades en el período planeado tiempo en unidades discretas

Reemplazar Piezas de equipo;

Mantener. Xi = antigüedad del equipo al principio del problema P = precio de nuevo equipo C(i)= costo de operación por un año cuando el equipo tiene i años de antigüedad al principio del período C(i)= ∞ pone un máximo a la antigüedad del equipo t(i)= valor de cambio el equipo al principio del período, donde i es antigüedad del equipo cuando el cambio se realiza S(i)= Valor de rescate recibido por el equipo con antigüedad i al final de N año Máxima edad (antigüedad)del equipo≤X1 + N X= Antigüedad del equipo al principio de la etapa Problema; especificar una decisión en cada etapa para minimizar el costo total. Estados; antigüedad del cierto equipo al principio de la etapa Sea; S(x,n)=mínimo costo total hasta el final de período N-esimo dada la antigüedad del corriente equipo en X al principio de la etapa n. 1≤n≤N condiciones limitantes: 0≤X≤ N+1 S(X,N+1)=-S(X) valor de rescate Reemplazar P-t(X)+C(0)+S(1,n+1) S(X,n)=min Mantener C(X)+S(X+1,n+1) Donde: P-t(x) Reemplazo C(0) Mantenimiento S(1,n+1)C. a la próxima etapa C(x) Mantener S(X+1,n+1) a la próxima etapa

Page 16: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 16

Ejemplo: Período Planeado 4 años Antigüedad del equipo al año 0 = 2 años Costo de nuevo equipo $100

Costo de mantenimiento Valor de rescate Valor considerado a cambio C(0)=50 t(0)=80 C(1)=60 t(1)=60 C(2)=100 t(2)=40 C(3)=140 t(3)=20 C(4)=200 t(>3)=0 Para i >5 C ( i ) = ∞ Condiciones limitantes:

Page 17: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 17

s(0)=-80 s(1)=-60 s(2)=-40 s(3)=-20 s(4)=0

100+S(3,1)=340 140+S(4,2)=310 S(2,0)= S(3,1)=min 110+S(1,1)=300 ← 130+S(1,2)=240← 200+S(5,3)=290 60+S(2,2)=190← S(4,2)=min S(1,1)=min 150+ S(1,3)=170← 90+S(1,2)=200 100+S(3,3)=170 ∞ S(2,2)=min S(5,3)=min 110+S(1,3)=130← 150-60=90← 60+S(2,3)=110← 140-s(4)=140 S(1,2)=min S(3,3)=min 90+S(1,3)=110← 130-s(1)=130-60=70← 100-S(3)=100-20=80 60-S(2)=60-40=20← S(2,3)=min S(1,3)=min 110-S(1)=110-60=50← 90-S(1)=90-60=30 11 21 31 41 R - M - R - M Período de decisión con un costo de 300 Problema: Una planta de energía eléctrica tiene un proyecto de generación por 5 años en los cuales se dará mantenimiento al equipo utilizado. El mantenimiento podrá ser dado por 3 equipos diferentes y el costo de mantenimiento dependerá del equipo y del año de antigüedad del proyecto (los 3 equipos proporcionan un eficiente servicio por igual). Los costos de mantenimiento son: Equipo año I II III 1 3 4 6 2 4 5 7 3 6 9 4 8 10 5 11 Los costos de cambiar de política para el mantenimiento son todo cambio a III cuesta 7

Page 18: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 18

todo cambio a II cuesta 6 todo cambio a I cuesta 4 Encuentre la mejor política de mantenimiento para el proyecto, la cual minimiza el costo total del mismo. Sea S(n,i) mínimo costo del equipo i en el año n. n(i)+S(n-1,i) no cambio de equipo S(n.i)=min n(i)+R(i)+S(n-1,i) cambio de equipo

I 3I 7I X X X Equipo II 4II 9II 15II 23II Para toda j<i

III 6III 13III 22III 32III 41II j Equipos previos a i 1 2 3 4 5 n

Otro enfoque de solución: Sea S(n,i)= Mínimo costo del equipo i en el año n.

C(n,i)=Costo de mantenimiento del equipo i en el año n R(j,i)= Costo por cambio del equipo j al equipo i

Relación recursiva: S(n-1,i)+C(n,i) no cambio de equipo S(n.i)=min S(n-1,i)+C(n,i)+R(j,i) cambio de equipo Etapa 1 Equipo Equipo anterior Mejor actual I II III s(1,i) decisión I 3 - - 3 I II - 4 - 4 II III - - 6 6 III Etapa 2 Equipo Equipo anterior Mejor

Page 19: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 19

actual I II III s(2,i) decisin I 3+4=7 4+4+4=12 6+4+4=14 7 I II 3+6+5=14 4+5=9 6+6+5=17 9 II III 3+3+7=17 4+7+7=18 6+7=13 13 III Etapa 3 Equipo Equipo anterior Mejor actual I II III s(3,i) decisión I ∞ 9+4+∞=∞ 13+4+∞=∞ - - II 7+6+6=19 9+6=15 13+5+6=25 15 II III 7+9+7=23 9+9+7=25 13+9=22 22 III Etapa 4 Equipo Equipo anterior Mejor actual I II III s(3,i) decisión I ∞ ∞ ∞ - - II ∞ 15+8=23 22+8+6=36 23 II III ∞ 15+10+7=32 22+10=32 32 II o III Etapa 5 Equipo Equipo anterior Mejor actual I II III s(3,i) decisión I ∞ ∞ ∞ - - II ∞ ∞ ∞ - - III ∞ 23+11+7=41 32+11=43 41 II

Costo Total = 41 Etapa 1 2 3 4 5

Decisión II II II II III ASIGNACION DE RECURSOS El problema mas simple de localización de recursos consiste en que se nos dan X unidades de un recurso y se nos dice que este recurso debe ser distribuido entre N actividades. Se nos proporcionan

Page 20: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 20

N tablas de datos ri(x) (para i=1,...N) y X=0,1,...X) que representan el retorno por localizar X unidades del recurso en la actividad i. El problema consiste en localizar todas las X unidades del recurso en las actividades de tal manera que el retorno total sea máximo. N ∑ri (x) i=1

Sujeto a; N ∑Xi =X, El coeficiente asociado a Xi es la unidad y no aparece i=1

Xi ≥ 0 y Enteros Formulación de Programación Dinámica Habiendo designado las actividades arbitrariamente (números fijos) desde 1 a N, se toman X unidades del recurso y primero localizamos X1 unidades en la actividad 1. Entonces localizamos X2 unidades de las restantes X-X1 unidades del recurso a la actividad 2, entonces X3 unidades del recurso a la actividad 3, etc. Función de Valor Óptimo S( X,K)=/K(X) es el máximo retorno obtenido desde las actividades K hasta N, dadas X unidades del recurso restantes para ser asignadas. La variable de estado será la asignación total hecha hasta ahora. Y K puede definirse como el número de actividades hasta ahora consideradas. Relación Recursiva S(X,K)=/k(X)=Max [rK(XK)+/K+1(X- Xk}] S(X,K)=Max [rK(XK)+S(X-XK , K+1)] Donde Xk= 0,1,...,X y es la asignación en la actividad K y fk(x) debe ser calculada para Xk=0,1,...,X La condición limitante fN(x)=rN(x) Ejemplo: Max 3x1

2+ 4x22+ 5x3

2 Sujeto a;

x1+ x2+ x3 ≤4 x´s ≥ 0 y Enteros

Page 21: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 21

Retorno r1= 3x1

2 r2= 4x2

2 r3= 5x3

2 Etapa 1 (Variable x1)

0

0+f2(4)=80 ←

1

3+f2(3)=48

f1(4)

=

2

12+f2(2)=32

3

27+f2(1)=32

4

48+f2(0)=48

Etapa 2 (Variable x2 )

0

0+f3(4)=80 ←

1

4+f3(3)=49

f2(4)

=

2

16+f3(2)=36

3

36+f3(1)=41

4

64+f3(0)=64

0

0+f3(3)=45 ←

1

4+f3(2)=24

f2(3)

=

2

16+f3(1)=21

3

36+f3(0)=36

0

0+f3(2)=20 ←

f2(2)

=

1

4+f3(1)=9

2

16+f3(0)=16

Page 22: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 22

0

0+f3(1)=5 ←

f2(2)

=

1

4+f3(0)=4

Etapa 3 (Variable x3

)

r3(4)=f3(4)=80 ← r3(3)=f3(3)=45 r3(2)=f3(2)=20 r3(1)=f3(1)=5 r3(0)=f3()=0

Asignación Optima: x1=0, x2=0, x3=4 con un Retorno Optimo de 80 Caso: existe un coeficiente Ci≠1 Solución de problemas de programación lineal o no lineal con un recurso aplicando programación Dinámica: N Max ∑ri Xi ri ←Retorno por asignar Xi unidades i=1 Sujeto a; N

∑ Ci Xi ≤x , donde Ci ←Coeficiente de Xi en la restricción i=1 Xi ≥0 y enteros

Cada ecuación corresponde a un recurso limitado en disponibilidad. Solución óptima;

Page 23: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 23

Encontrar la actividad para la cual ri (Xi ) es máxima, considere que la actividad Xi puede tomar valores enteros de 0,1,...,X/Ci y a estos se les denomina valor de la variable de Decisión f(X)=Max rK(XK)+fK+1(X - CKXK) XK ← Cantidad máxima asignada XK=0,1,...X/CK ri (Xi)←función de retorno para la condición limitante fN(X)=rN(X/CN) Modelo:

Max r1(X1)+ r2X2)+...+ rn(Xn) Sujeto a;

C1X1+ C2X2 + .. . .+ CnXn ≤ X

X´s ≥ 0 y Enteros Problema: Max 2X1

3- 3X1+ X22 -4X2+ X3

Sujeto a;

4X1+ 2X2+3X3 ≤15 X1,X2,X3 Enteros no negativos ( ≥0 y Enteros )

Retorno: r1(X1)=2X1

3 -3X1 C1(X1)=4 r2(X2)=X2

2-4X2 C2(X2)=2 r3(X3)=X3 C3(X3)=3 Analiza X1 r1(X1)+f2(15-C1X1) 0 r1(0)+/2(15)= 0+/2(15)=21 f1(15)= Max 1 r1(1)+/2(11)=-1+/2(11)=5

2 r1(2)+/2(7) =10+/2(7) =12 3 r1(3)+/2(3) =45+/2(3) =46 ←

Analiza X2 r2(X2)+f3(15-C3X3)

Page 24: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 24

0 0+/3 (15)=5 1 -3+/3 (13)=1 /2(15)= Max 2 -4+/3 (11)=-1 3 -3+/3(9)=0 4 0 +/3 (7)=2 5 5+/3 (5)=6 6 12+/3 (3)=13 7 21+/3 (1)=21 ←

r2(X2)+f3(11-C3X3) 0 0+/3 (11)=3 1 -3+/3 (9)=0 2 -4+/3 (7)=-2 /2 (11)=max 3 -3+/3 (5)=-2 4 0+/3 (3)=1 5 5+/3 (1)=5 ←

r2(X2)+f3(7-C3X3) 0 0 +/3 (7)=2 ← 1 -3 +/3 (5)=-2 /2 (7)=max 2 -4 +/3 (3)=-3 3 -3 +/3 (1)=-3

r2(X2)+f3(3-C3X3) 0 0+/3 (3)= 1 ← /2 (3)=max 1 -3+/3 (1)=-3 Analiza X3 /3 (15)=5 /3 (13)=4 /3 (11)=3 Asignar /3 (9) =3 3→X1 /3 (7) =2 0→X2 /3 (5 )=1 1→X3 /3 (3 )=1 /3 (1 )=0 Caso: Varias restricciones Cuando existe más de una restricción (Recurso ) la función de política óptima cambia a;

Page 25: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 25

fk(X)=max[rK(XK)+fK+1(X- max{X- Ci kXk}] Donde Xk= Min{X / Ci k}, y es el coeficiente de la variable Xk en la ecuación i Ejemplo: Max Z = 13x1- X2

1-5X22+30.2X2+ 10X3-2.5X2

3 Sujeto a; X1+ X2 ≤5 es equivalente a 2X1+ 2X2 ≤10 2X1+ 4X2+ 5X3 ≤10

En 2X1+ 4X2+ 5X3 ≤10 por cada unidad asignada en X1 se consumen 2, por cada unidad asignada en X2 se consumen 4, por cada unidad asignada en X3 se consumen 5. Los valores de las variables estarán comprendidos de la forma siguiente Valores posibles

0 ≤X1 ≤5 x1=0,1,2,3,4,5 0 ≤X2 ≤2 x2=0,1,2 0 ≤X3 ≤2 x3=0,1,2

R1(x1)=13X1-X2

1 R2(X2)=-5X22+30.2X2 R3(X3)=10X3-2.5X2

3

0 0+/2(1,0)=40.2 1 12+/2(8)=52.2 2 22+/2(6)=47.2 f1(10)=Max 3 30+/2(4)=55.2← 30+ f2(10- Max{1(3),2(3)}=30+ f2(10-6)=30+ f2(4) 4 36+/2(2)=36 30+ f2(10- Max{1(4),2(4)}=30+ f2(8-6)=36+ f2(2) 5 40+/2(0)=40

0 0+/3 (10)=10 f2(10)=max 1 25.2+/3(6)=32.7

2 40.4+/3(2)=40.2←

0 0+/3(8)=7.5 f2(8)=max 1 25.2+/3(4)=25.2 2 40.4+/3(0)=40.2← 0 0+/3(6)=7.5 f2(6)=max 1 1+/3(2)=25.2←

0 0+/3(4)=0 f2(4)=max 1 25.2+/3(0)=25.2←

Page 26: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 26

f2(2)=0 0 0 f3(10)= max 1 7.5 2 10← 5X3=10 X3=1 0 0 f3(8)= max 1 7.5← f3(4)= 0← 2 5X3=8 X3=1

f3(2)= 0←

0 0 f3(6)= max f3(0)= 0←

1 7.5← 5X3=6 X3=1

X1=3, X2=1, X3=0

PROBLEMA DE ASIGNACION DE RECURSOS En el I.T.T. se tiene un promedio del 47% de calificación en lectura de los alumnos de nuevo ingreso. Si se contratan 5 maestros especiales en Educación y estos son asignados a las tres carreras con el promedio más bajo de lectura para mejorar la habilidad en general de los estudiantes en esas carreras. ¿Como deberán ser asignados estos maestros tal que se maximice la efectividad en lectura por parte de los alumnos en estas carreras? Porcentaje de incremento en el nivel de lectura Carrera No. de Maestros A B C Xn es el No. de maestros disponibles para asignar en la etapa n. 0 0 0 0 dn es el No. de maestros asignados en la 1 6 9 12 etapa n. 2 10 14 18 Xn-1 = Xn - dn Es la relación recursiva. 3 15 18 21 4 18 20 21 5 20 20 21 Secuencia de la asignación

Asignar => Asignar => Asignar en A en B en C

Page 27: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 27

3 Etapas Etapa 1 Carrera C Etapa 2 Carrera B Etapa 3 Carrera A ETAPA 1 (Carrera C) Variable de Retorno Decisión Retorno Estado X1 Inmediato óptima d1 óptimo ───────────────────────── 0 0 0 0 1 12 1 12 2 18 2 18 3 21 3 21 4 21 3 o 4 21 5 21 3,4 o 5 21 ETAPA 2 (Carrera B) Variable de Decisión (d2) Retorno Decisión Estado X2 0 1 2 3 4 5 óptimo óptima d2* ──────────────────────────── 0 0 - - - - - 0 0 1 12 9+0 - - - - 12 0 2 18 9+12 14+0 - - - 21 1 3 21 9+18 14+12 18+0 - - 27 1 4 21 9+21 14+18 18+12 20 - 32 2 5 21 9+21 14+21 18+18 20+12 20 36 3 ETAPA 3 (Carrera C) Variable de Decisión (d3) Retorno Decisión Estado óptimo óptima X3 0 1 2 3 4 5 d3* ────────────────────────── 5 0+36 6+32 10+27 15+21 18+12 20+0 38 1 Asignar: Efectividad 1 maestro => A 6 2 maestros => B 14 2 maestros => C 18 Efectividad Total = 38

Page 28: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 28

Otro enfoque al problema anterior fn(x) = Max [ Eixi + fn-1( X-xi ) ] Relación recursiva

Donde; En es la efectividad por asignar maestros en la etapa n xn Son el número de maestros asignados en la etapa n X es la cantidad de recursos a asignar

Etapa 1 (Carrera A) f1(0) = 0 ; f1(1) = 12 ; f1(2) = 18; f1(3) = 21 ; f1(4) = 21 Etapa 2 (Carrera B)

0 0+ f1(5) = 21 0 0+ f1(4) = 21 1 9+ f1(4) = 30 1 9+ f1(3) = 30

f2(5) = Max 2 14+ f1(3) = 35 f2(4) = Max 2 14+ f1(2) = 32 ← 3 18+ f1(2) = 36 ← 3 18+ f1(1) = 30 4 20+ f1(1) = 32 4 20+ f1(0) = 20 5 20+ f1(0) = 20

0 0+ f1(3) = 21 0 0+ f1(2) = 12 1 9+ f1(2) = 27 ← 1 9+ f1(1) = 21 ←

f2(3) = Max 2 14+ f1(1) = 26 f2(2) = Max 2 14+ f1(0) = 14 3 18+ f1(0) = 18

f2(1) = Max 0 0+ f1(1) = 12 ←

1 9+ f1(0) = 9 Etapa 3 (Carrera C)

0 0+ f2(5) = 36 1 6+ f2(4) = 38 ←

f3(5) = Max 2 10+ f2(3) = 37 3 15+ f2(2) = 29 4 18+ f2(1) = 30 5 20+ f2(0) = 20

Etapas Carreras Efectividad Total de efectividad = 38 1 C 18 2 B 14 3 A 6

CONFIABILIDAD COMPONENTES EN SERIE Una compañía fabricante de T.V. estereos y radios se enfrenta a un serio problema en uno de sus productos debido a que las ventas de este han sido muy bajas. Después de ciertas investigaciones realizadas se ha encontrado que las causas son debidas a que la vida del cinescopio es muy baja

Page 29: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 29

(corta) y para resolver el problema se deberá aumentar la vida de uso del cinescopio. El cinescopio esta formado por 3 unidades en serie y en el cual, cada unidad puede estar formada por 1,2 o 3 partes en paralelo. El cinescopio fallara si alguna de las unidades falla, entonces se deseara aumentar la confiabilidad del cinescopio (probabilidad de que el cinescopio trabaje después de haber transcurrido cierto tiempo t). El costo del cinescopio esta restringido a $1000.00, y los costos de las partes por unidad ya instaladas son; MATRIZ DE COSTOS Unidad Partes 1 2 3 1 200 300 100 2 400 500 200 3 500 600 300

Etapa 1 R1 costo Etapa 2 R2 costo Etapa 3 R3 costo 1 .5 200 1 .7 300 1 .6 100 2 .75 400 2 .91 500 2 .84 200 3 .875 500 3 .973 600 3 .936 300 Ri← Confiabilidad

.75 .7 .6

.75 .84.91

Page 30: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 30

Reemplazar componentes individuales por componentes paralelos en bloque Costo total aceptable $10 Max R(X1)*R2(X2)*R3 (X3 )

X1 1 tómese la mejor elección X1, X2, y X3 tal que se X2 1 maximice la confiabilidad X3 1

y enteros CK es el Costo asignado a K unidad con cierto número de partes C1(X1)+C2(X2)+C3(X3) 10 Etapas = diferentes unidades de componentes Estados = diferentes partes de la unidad. /K(X)= Valor de la función XK =numero de partes de cierta unidad fK(XK)=Max rK(XK) /K+1(X-XK)

Max R1(X1)*R2(X2)*R3(X3) Sujeto a;

C1(X1)+C2(X2)+C3(X3) 10 XS 0 y Enteros

Partes

1 .5*/2 (8)=.4259 f1(10)=MAX 2 .75*/2(6)=.4914 3 .875*/2(5)=.5127 ← Partes

1 .7*/3(5)=.6552 f2(8)=max 2 .91*/3(3)=.85176 ← 3 .973*/3(2)=.78708

.875 .936 .973

Page 31: NOTAS DE PROGRAMACIÓN DINÁMICA - angelfire.com · usando PROGRAMACION DINAMICA y como estos pueden ser resueltos (afrontados). Esta habilidad puede ser probablemente desarrollada

Programación Dinámica Investigación de Operaciones II

M.C. Héctor Martínez Rubin Celis 31

Partes 1 .7*/3(3)=.6552←

f2(6)=max 2 .91*/3(1)=.546 3 .973*/3(0)=no factible

Partes 1 .7*/3(2)=.588← f2(5)=max 2 .91*/3(0)=no factible Partes 1 .6 f3(5)=max 2 .84 3 .936← Partes f3(3)=max 1 .6 2 .84 3 .936← Partes f3(2)=max 1 .6

2 .84← Partes f3 (1)= 1 .6 3 Partes al componente 1 Costo 5 1 Partes al componente 2 Costo 3 2 Partes al componente 3 Costo 2 ─── $10 Confiabilidad total del Cinescopio .5127