25
MHD15 - FPD: 0 J. Bautista Joaquín Bautista-Valhondo Fundamentos de Programación Dinámica - II UNIVERSITAT POLITÈCNICA DE CATALUNYA – BARCELONATECH Modelos y Herramientas de Decisión – Máster Universitario de Ingeniería de Organización - ETSEIB OPE – ORGANIZACIÓN DE LA PRODUCCIÓN Y DE EMPRESA (ASPECTOS TÉCNICOS, JURÍDICOS Y ECONÓMICOS EN PRODUCCIÓN ) OPE-PROTHIUS – OPE-MSc.2015/09 (20150501) - http://futur.upc.edu/OPE - www.prothius.com - Departamento de Organización de Empresas – UPC

Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 0 J. Bautista

Joaquín Bautista-Valhondo

Fundamentos de Programación Dinámica - II

UNIVERSITAT POLITÈCNICA DE CATALUNYA – BARCELONATECH

Modelos y Herramientas de Decisión – Máster Universitario de Ingeniería de Organización - ETSEIB

OPE – ORGANIZACIÓN DE LA PRODUCCIÓN Y DE EMPRESA (ASPECTOS TÉCNICOS, JURÍDICOS Y ECONÓMICOS EN PRODUCCIÓN )

OPE-PROTHIUS – OPE-MSc.2015/09 (20150501) - http://futur.upc.edu/OPE - www.prothius.com - Departamento de Organización de Empresas – UPC

Page 2: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 1 J. Bautista

Contenido

•  Decisión multietápica

•  Programación dinámica determinista con (s,x) homogéneo en n.

-  El problema del contrabandista (horizonte limitado)

-  El problema del contrabandista (horizonte ilimitado)

-  Rendimiento etápico. Políticas

•  Programación dinámica probabilística

-  Concepto y nomenclatura

-  Esquema

-  Ejemplo prototipo

Page 3: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 2 J. Bautista

Decisión multietápica

n = etapa (n =1, 2,..,N )xn = variable de decisión en la etapa nsn = estado al inicio de la etapa nsn+1 = estado al final de la etapa nrn sn, sn+1, xn( )= rendimiento en la etapa n

fn sn, xn( ) = aportación al objetivo de las etapas n,n +1,..,N

Sistema

x

r

s! s!

N etapas:

Una etapa:

xn

sn sn+1rn

n

xN

sN sN+1

rN

N

x1

s1 s2r1

1

f1 s1, x1( ) fn sn, xn( ) fN sN , xN( )

Page 4: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 3 J. Bautista

PDD con (s,x) homogéneo en n. Ejemplo prototipo

Problema del Contrabandista. Descripción: Han Solo (contrabandista corelliano) compra, transporta y vende mercancías en 4 puntos del Imperio (A, B, C y D). Las ganancias netas obtenidas en cada viaje se muestran en la Tabla 1, siguiendo el esquema mono-etápico de la figura 1.

A

B

C

A

B

C

D D

sn

sn+1 = xn

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Tabla 1: Ganancia (g) por operación del Halcón Milenario según origen-destino

Figura 1: Esquema mono-etápico de los viajes del Halcón Milenario.

Rutas : 4! 4!..! 4.. = 22N

Page 5: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 4 J. Bautista

Formulación:

N = número de viajes del Halcón Milenario.

n = etapa o viaje (n =1, 2,...,N ).

sn = (estado) punto origen del viaje n

xn = (decisión) punto destino del viaje n

xn*= valor óptimo de xn (dado sn )

g sn, xn( ) = ganancia elemental en un viaje desde sn hasta xn

fn (sn, xn ) = ganancia máxima acumulada en las etapas n,n+1,...,N, a través de (sn, xn )

fn*(sn ) = ganancia máxima acumulada en las etapas n,n+1,...,N, partiendo de sn

sn

sn+1

xn

Etapa n Etapa n+1

Contribución de xn

g(sn, x

n)fn (sn, xn ) fn+1

*(sn+1)

Estado

Valor

fn (sn, xn ) = fn+1*(xn )+ g sn, xn( )s

n+1 = xn

fn*(sn ) =max

xn

fn (sn, xn ) =maxxn

fn+1*(xn )+ g sn, xn( )!" #$

El Problema del Contrabandista (1)

Page 6: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 5 J. Bautista

Resolución (6 etapas). Etapa 6ª

n = 6 :!s6! A,B,C,D{ },!!x6 ! A,B,C,D{ }

f6(s6, x

6) = f

7

*(x

6)+ g s

6, x

6( )

A B C D A 0 7 10 11 11 D B 7 0 8 12 12 D C 4 5 0 4 5 B D 2 1 6 0 6 C

x6

*

f6

*(s)

f6(s6, x

6)

f6

*(s6) =min

x6

f6(s6, x

6) = f

6(s6, x

6

*)

s6/ x

6

El Problema del Contrabandista (2)

f7

*(A) = 0A

B

C

A

B

C

D D

sn

sn+1 = xn

f7

*(B) = 0

f7

*(C) = 0

f7

*(D) = 0

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 7: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 6 J. Bautista

Resolución (6 etapas). Etapa 5ª

n = 5 :!s5 ! A,B,C,D{ },!!x5 ! A,B,C,D{ }

f5(s5, x5 ) = f6*(x5 )+ g s5, x5( )

A B C D A 11 19 15 17 19 B B 18 12 13 18 18 A,D C 15 17 5 10 17 B D 13 13 11 6 13 A,B

x5

*

f5*(s)

f5(s5, x5 )

f5*(s5 ) =min

x5

f5(s5, x5 ) = f5(s5, x5*)

s5/ x

5

El Problema del Contrabandista (3)

f6

*(A) =11A

B

C

A

B

C

D D

sn

sn+1 = xn

f6

*(B) =12

f6*(C) = 5

f6

*(D) = 6

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 8: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 7 J. Bautista

Resolución (6 etapas). Etapa 4ª

n = 4 :!s4 ! A,B,C,D{ },!!x4 ! A,B,C,D{ }

f4 (s4, x4 ) = f5*(x4 )+ g s4, x4( )

A B C D A 19 25 27 24 27 C B 26 18 25 25 26 A C 23 23 17 17 23 A,B D 21 19 23 13 23 C

x4

*

f4

*(s)

f4(s4, x

4)

f4

*(s4) =min

x4

f4(s4, x

4) = f

4(s4, x

4

*)

s4/ x

4

El Problema del Contrabandista (4)

f5*(A) =19A

B

C

A

B

C

D D

sn

sn+1 = xn

f5*(B) =18

f5*(C) =17

f5*(D) =13

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 9: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 8 J. Bautista

Resolución (6 etapas). Etapa 3ª

n = 3 :!s3! A,B,C,D{ },!!x3 ! A,B,C,D{ }

f3(s3, x

3) = f

4

*(x

3)+ g s

3, x

3( )

A B C D A 27 33 33 34 34 D B 34 26 31 35 35 D C 31 31 23 27 31 A,B D 29 27 29 23 29 A,C

x3

*

f3

*(s)

f3(s3, x

3)

f3

*(s3) =min

x3

f3(s3, x

3) = f

3(s3, x

3

*)

s3/ x

3

El Problema del Contrabandista (5)

f4

*(A) = 27A

B

C

A

B

C

D D

sn

sn+1 = xn

f4

*(B) = 26

f4

*(C) = 23

f4

*(D) = 23

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 10: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 9 J. Bautista

Resolución (6 etapas). Etapa 2ª

n = 2 :!s2! A,B,C,D{ },!!x2 ! A,B,C,D{ }

f2(s2, x

2) = f

3

*(x

2)+ g s

2, x

2( )

A B C D A 34 42 41 40 42 B B 41 35 39 41 41 A,D C 38 40 31 33 40 B D 36 36 37 29 37 C

x2

*

f2

*(s)

f2(s2, x

2)

f2

*(s2) =min

x2

f2(s2, x

2) = f

2(s2, x

2

*)

s2/ x

2

El Problema del Contrabandista (6)

f3

*(A) = 34A

B

C

A

B

C

D D

sn

sn+1 = xn

f3*(B) = 35

f3

*(C) = 31

f3

*(D) = 29

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 11: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 10 J. Bautista

Resolución (6 etapas). Etapa 1ª

n =1:!s1! A,B,C,D{ },!!x1 ! A,B,C,D{ }

f1(s1, x1) = f

2

*(x1)+ g s

1, x1( )

A B C D A 42 48 50 48 50 C B 49 41 48 49 49 A,D C 46 46 40 41 46 A,B D 44 42 46 37 46 C

x1

*

f1

*(s)

f1(s1, x1)

f1

*(s1) =min

x1

f1(s1, x1) = f

1(s1, x1

*)

s1/ x

1

El Problema del Contrabandista (7)

f2

*(A) = 42A

B

C

A

B

C

D D

sn

sn+1 = xn

f2

*(B) = 41

f2

*(C) = 40

f2

*(D) = 37

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 12: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 11 J. Bautista

A

B

C

A

B

C

D D

n =1

A

B

C

D

A

B

C

A

B

C

D D

A

B

C

D

Resolución (6 etapas). Trayectorias Origen en A

El Problema del Contrabandista (8)

n = 2 n = 3 n = 4 n = 5 n = 6

A

B

C

D

n = N +1

f1*(A) = 50

f2

*(C) = 40

f3*(B) = 35

f4

*(D) = 23

f5*(C) =17

f6

*(B) =12

f7

*(D) = 0

Ruta s1= A( ) : A!C! B! D!C! B! D

Page 13: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 12 J. Bautista

A

B

C

A

B

C

D D

n =1

A

B

C

D

A

B

C

A

B

C

D D

A

B

C

D

Resolución (6 etapas). Trayectorias Origen en B

El Problema del Contrabandista (9)

n = 2 n = 3 n = 4 n = 5 n = 6

A

B

C

D

f1

*(B) = 49

f2

*(D) = 37

f3*(B) = 35

f4

*(D) = 23

f5*(C) =17

f6

*(B) =12

f7

*(D) = 0

Ruta s1= B( ) :

B! A! B! D!C! B! D

B! D!C! A!C! B! D

B! D!C! B! A! B! D

"

#$

%$

&

'$

($

f2

*(A) = 42

f3

*(C) = 31

f4

*(A) = 27

f4

*(B) = 26

f5*(A) =19

n = N +1

Page 14: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 13 J. Bautista

A

B

C

A

B

C

D D

n =1

A

B

C

D

A

B

C

A

B

C

D D

A

B

C

D

Resolución (6 etapas). Trayectorias Origen en C

El Problema del Contrabandista (10)

n = 2 n = 3 n = 4 n = 5 n = 6

A

B

C

D

f1

*(C) = 46

f2

*(B) = 41 f3

*(B) = 35

f4

*(D) = 23

f5*(C) =17

f6

*(B) =12

f7

*(D) = 0

Ruta s1=C( ) : (i) C!

A! B

B! A

"

#$

%

&'! D!C! B! D; (ii) C! B! D!

A!C! B! D

C!

A! B! D

B!A! D

D!C

"

#$

%

&'

"

#

$$$

%

&

'''

"

#

$$$$$

%

&

'''''

(

)

**

+

**

,

-

**

.

**

f2

*(A) = 42

f3

*(D) = 29

f4

*(A) = 27

f4

*(C) = 23

f5*(A) =19f

3

*(A) = 34

f5*(B) =18

f6

*(A) =11

f6

*(D) = 6

f7

*(C) = 0

n = N +1

Page 15: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 14 J. Bautista

A

B

C

A

B

C

D D

n =1

A

B

C

D

A

B

C

A

B

C

D D

A

B

C

D

Resolución (6 etapas). Trayectorias Origen en D

El Problema del Contrabandista (11)

n = 2 n = 3 n = 4 n = 5 n = 6

A

B

C

D

n = N +1

f1

*(D) = 46

f2

*(C) = 40

f3*(B) = 35

f4

*(D) = 23

f5*(C) =17

f6

*(B) =12

f7

*(D) = 0

Ruta s1= D( ) : D!C! B! D!C! B! D

Page 16: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 15 J. Bautista

n 20 19 18 17 16 15 14 13 12 11 s f x f x f x f x f x f x f x f x f x f x

A 11 D 19 B 27 C 34 D 42 B 50 C 57 D 65 B 73 C 80 D B 12 D 18 A 26 A 35 D 41 A 49 A 58 D 64 A 72 A 81 D C 5 B 17 B 23 A 31 A 40 B 46 A 54 A 63 B 69 A 77 A D 6 C 13 A 23 C 29 A 37 C 46 C 52 A 60 C 69 C 75 A

n 10 9 8 7 6 5 4 3 2 1 s f x f x f x f x f x f x f x f x f x f x

A 88 B 96 C 103 D 111 B 119 C 126 D 134 B 142 C 149 D 157 B B 87 A 95 A 104 D 110 A 118 A 127 D 133 A 141 A 150 D 156 A C 86 B 92 A 100 A 109 B 115 A 123 A 132 B 138 A 146 A 155 B D 83 C 92 C 98 A 106 C 115 C 121 A 129 C 138 C 144 A 152 C

El Problema del Contrabandista (12) Resolución (20 etapas). Ganancias y decisiones

A B C D

A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 -

Page 17: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 16 J. Bautista

n 20 19 18 17 16 15 14 13 12 11 s f x f x f x f x f x f x f x f x f x f x

A 11 D 19 B 27 C 34 D 42 B 50 C 57 D 65 B 73 C 80 D B 12 D 18 A 26 A 35 D 41 A 49 A 58 D 64 A 72 A 81 D C 5 B 17 B 23 A 31 A 40 B 46 A 54 A 63 B 69 A 77 A D 6 C 13 A 23 C 29 A 37 C 46 C 52 A 60 C 69 C 75 A

n 10 9 8 7 6 5 4 3 2 1 s f x f x f x f x f x f x f x f x f x f x

A 88 B 96 C 103 D 111 B 119 C 126 D 134 B 142 C 149 D 157 B B 87 A 95 A 104 D 110 A 118 A 127 D 133 A 141 A 150 D 156 A C 86 B 92 A 100 A 109 B 115 A 123 A 132 B 138 A 146 A 155 B D 83 C 92 C 98 A 106 C 115 C 121 A 129 C 138 C 144 A 152 C

El Problema del Contrabandista (13) Resolución (20 etapas). Trayectorias Origen en A

Ruta s1 = A( ) : A! B! D! ! C! B! D( )

Page 18: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 17 J. Bautista

n 20 19 18 17 16 15 14 13 12 11 s f x f x f x f x f x f x f x f x f x f x

A 11 D 19 B 27 C 34 D 42 B 50 C 57 D 65 B 73 C 80 D B 12 D 18 A 26 A 35 D 41 A 49 A 58 D 64 A 72 A 81 D C 5 B 17 B 23 A 31 A 40 B 46 A 54 A 63 B 69 A 77 A D 6 C 13 A 23 C 29 A 37 C 46 C 52 A 60 C 69 C 75 A

n 10 9 8 7 6 5 4 3 2 1 s f x f x f x f x f x f x f x f x f x f x

A 88 B 96 C 103 D 111 B 119 C 126 D 134 B 142 C 149 D 157 B B 87 A 95 A 104 D 110 A 118 A 127 D 133 A 141 A 150 D 156 A C 86 B 92 A 100 A 109 B 115 A 123 A 132 B 138 A 146 A 155 B D 83 C 92 C 98 A 106 C 115 C 121 A 129 C 138 C 144 A 152 C

El Problema del Contrabandista (14) Resolución (20 etapas). Trayectorias Origen en B

Ruta s1 = B( ) : B!A! D! ! C! B! D( )

Page 19: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 18 J. Bautista

n 20 19 18 17 16 15 14 13 12 11 s f x f x f x f x f x f x f x f x f x f x

A 11 D 19 B 27 C 34 D 42 B 50 C 57 D 65 B 73 C 80 D B 12 D 18 A 26 A 35 D 41 A 49 A 58 D 64 A 72 A 81 D C 5 B 17 B 23 A 31 A 40 B 46 A 54 A 63 B 69 A 77 A D 6 C 13 A 23 C 29 A 37 C 46 C 52 A 60 C 69 C 75 A

n 10 9 8 7 6 5 4 3 2 1 s f x f x f x f x f x f x f x f x f x f x

A 88 B 96 C 103 D 111 B 119 C 126 D 134 B 142 C 149 D 157 B B 87 A 95 A 104 D 110 A 118 A 127 D 133 A 141 A 150 D 156 A C 86 B 92 A 100 A 109 B 115 A 123 A 132 B 138 A 146 A 155 B D 83 C 92 C 98 A 106 C 115 C 121 A 129 C 138 C 144 A 152 C

El Problema del Contrabandista (15) Resolución (20 etapas). Trayectorias Origen en C

Ruta s1 = C( ) :C! B! D! ! C! B! D( )

Page 20: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 19 J. Bautista

n 20 19 18 17 16 15 14 13 12 11 s f x f x f x f x f x f x f x f x f x f x

A 11 D 19 B 27 C 34 D 42 B 50 C 57 D 65 B 73 C 80 D B 12 D 18 A 26 A 35 D 41 A 49 A 58 D 64 A 72 A 81 D C 5 B 17 B 23 A 31 A 40 B 46 A 54 A 63 B 69 A 77 A D 6 C 13 A 23 C 29 A 37 C 46 C 52 A 60 C 69 C 75 A

n 10 9 8 7 6 5 4 3 2 1 s f x f x f x f x f x f x f x f x f x f x

A 88 B 96 C 103 D 111 B 119 C 126 D 134 B 142 C 149 D 157 B B 87 A 95 A 104 D 110 A 118 A 127 D 133 A 141 A 150 D 156 A C 86 B 92 A 100 A 109 B 115 A 123 A 132 B 138 A 146 A 155 B D 83 C 92 C 98 A 106 C 115 C 121 A 129 C 138 C 144 A 152 C

El Problema del Contrabandista (16) Resolución (20 etapas). Trayectorias Origen en D

Ruta s1 = D( ) : D!C! A! ! C! B! D( )

Page 21: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 20 J. Bautista

Pasos 1 2 3 4 5 6 7 8 9 10

A 11.0 9.5 9.0 8.5 8.4 8.3 8.1 8.1 8.1 8.0 B 12.0 9.0 8.7 8.8 8.2 8.2 8.3 8.0 8.0 8.1 C 5.0 8.5 7.7 7.8 8.0 7.7 7.7 7.9 7.7 7.7 D 6.0 6.5 7.7 7.3 7.4 7.7 7.4 7.5 7.7 7.5

EM 8.5 8.4 8.3 8.1 8.0 8.0 7.9 7.9 7.9 7.8

El Problema del Contrabandista (17) Resolución (20 etapas). Ganancia media por número de viajes

Pasos 11 12 13 14 15 16 17 18 19 20

A 8.0 8.0 7.9 7.9 7.9 7.9 7.9 7.9 7.8 7.9 B 7.9 7.9 8.0 7.9 7.9 7.9 7.8 7.8 7.9 7.8 C 7.8 7.7 7.7 7.8 7.7 7.7 7.8 7.7 7.7 7.8 D 7.5 7.7 7.5 7.6 7.7 7.6 7.6 7.7 7.6 7.6

EM 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8 7.8

Page 22: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 21 J. Bautista

Programación Dinámica probabilística

N = número de etapas.n = etiqueta de la etapa actual (n =1, 2,...,N ).sn = estado actual de la etapa n.xn = variable de decisión de la etapa n.xn

* = valor óptimo de xn (dado sn ) S = número de estados posibles en la etapa n +1i = etiqueta de estado posible en la etapa n +1 (i =1,..,S)pi = probabilidad de alcanzar el estado i desde el estado sn con la decisión xnCi = contribución de la etapa n a la función objetivo dependiente del estado ifn (sn, xn ) = contribución a la función objetivo de las etapas n,n +1,...,N, desde sn con decisión xnCaso particular: fn (sn, xn ) = pi Ci + fn+1

* (i)!" #$i=1

S% , con fn+1* (i) = min

xn+1

fn+1(i, xn+1)

fn*(sn ) = fn (sn, xn

* ) = contribución óptima: fn*(sn ) = min

xnfn (sn, xn ){ } o fn

*(sn ) = maxxn

fn (sn, xn ){ }

Nomenclatura:

Concepto : El estado de la siguiente etapa no está determinado completamente por el estado y la decisión de la etapa actual (n). Existe una distribución de probabilidad para determinar cuál será el siguiente estado.

Page 23: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 22 J. Bautista

Programación Dinámica probabilística

sn

xn

Etapa n

Etapa n+1

fn (sn, xn )

fn+1* (S)

Estado

fn (sn, xn ) = f C(sn, xn ), fn+1*(sn+1)( )

1

2

i

S

!

!

Decisión

p1p2pi

pS

C1

C2

Ci

CS

fn+1* (1)

fn+1* (2)

fn+1* (i)

v.g.! fn (sn, xn ) = pi Ci + fn+1* (i)"# $%i=1

S& , con fn+1* (i) = min

xn+1

fn+1(i, xn+1)

Esquema:

Page 24: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 23 J. Bautista

Problema del Contrabandista con riesgo. Descripción: Han Solo (contrabandista corelliano) compra, transporta y vende mercancías en 4 puntos del Imperio (A, B, C y D). Las ganancias netas y las probabilidades de éxito para llegar al destino en cada viaje se muestran en la Tabla 2, siguiendo el esquema mono-etápico de la figura 2.

A B C D A - 7 10 11 B 7 - 8 12 C 4 5 - 4 D 2 1 6 - pi 1/5 1/5 2/5 1/5

Tabla 2: Ganancia (g) por operación y probabilidad (p) de llegar al destino con éxito del Halcón Milenario según origen-destino

Figura 2: Esquema mono-etápico de los viajes del Halcón Milenario.

Programación Dinámica probabilística, Ejemplo prototipo

A

B

C

A

B

C

D D

sn si = xn pi( )

Page 25: Fundamentos de Programación Dinámica - Parte IIocw.upc.edu/sites/ocw.upc.edu/files/materials/240...• Programación dinámica determinista con (s,x) homogéneo en n. - El problema

MHD’15 - FPD: 24 J. Bautista

-Sólo hay una manera -recitó, en efecto, Guillermo- de encontrar la salida de un laberinto. Al llegar a cada nudo nuevo, o sea hasta el momento no visitado, se harán tres signos en el camino de llegada. Si se observan signos en alguno de los caminos del nudo, ello indicará que el mismo ya ha sido visitado, y entonces sólo se marcará un signo en el camino de llegada. Cuando todos los pasos de un nudo ya estén marcados, habrá que retroceder. Pero si todavía quedan uno o dos pasos sin marcar, se escogerá uno al azar, y se lo marcará con dos signos. Cuando se escoja un paso marcado con un solo signo, se marcarán dos más, para que ya tenga tres. Si al llegar a un nudo sólo se encuentran pasos marcados con tres signos, o sea, si no quedan pasos que aún falte marcar, ello indicará que ya se han recorrido todas las partes del laberinto.

Umberto Eco

El Nombre de la Rosa (1980)

El Hilo de Ariadna