Trabajo de Investigación y Aplicación de Conceptos

November 19, 2018 | Author: eliot2009 | Category: Dynamic Programming, Operations Research, Infinity, Decision Making, Dynamics (Mechanics)
Share Embed Donate


Short Description

Download Trabajo de Investigación y Aplicación de Conceptos...

Description

Universidad de Antofagasta Facultad de Ingeniería Departamento de Ingeniería Industrial

Tutoría Programación Matemática “Desarrollo Trabajo Investigación y Aplicación de Conceptos”

Alumno: Elirio Tordecilla Guerrero

Antofagasta, 01 Marzo de 2011

INDICE Contenido

Página

Objetivo Trabajo………………………………………………………………………………………………………

3

¿Que es la programación Dinámica?............................................................................ 3

Etapas…………………………………………………………………………………………………………… Estados………………………………………………………………………………………………………… Variables de decisión y políticas…………………………………………………………………… Función Recurrencia………………………………………………………………………………………

3 3 4 4

El objetivo de la programación Dinámica………………………………………………………………….

4

Estructura básica de la Programación Dinámica Deterministica………………………………..

5

Tipos de Programación Dinámica………………………………………………………………………………

5

Programación dinámica homogénea y no homogénea……………………………………

5

Programación dinámica determinista y aleatoria……………………………………………

6

Aplicaciones de la Programación Dinámica……………………………………………………………….

6

Ejemplo # 1………………………………………………………………………………………………………………. 7 Ejemplo # 2………………………………………………………………………………………………………………. 10 ¿Cuál es la diferencia entre Programación Dinámica Probabilística y Deterministica

12

Desarrollo de problema Programación Dinámica……………………………………………………… 12

Conclusión………………………………………………………………………………………………………………….. 16 Bibliografía…………………………………………………………………………………………………………………. 17

Pág. -2-

Trabajo de Investigación y Aplicación de Conceptos Programación Matemática Tutoría Objetivo: Lograr que el alumno aprenda las técnicas de programación dinámica (segunda

unidad de la asignatura programación matemática) que actualmente existen en la Investigación Operativa. Fecha de entrega: 1 de Marzo 2011 Forma de entrega: Informe Digital 1. Investigue la Programación Dinámica y conteste las siguientes preguntas de la forma más completa que pueda. (30 puntos) a. ¿Qué es la Programación Dinámica?

La programación dinámica fue desarrollada por el matemático Richard Bellman en 1953 y está considerada como una potente herramienta de optimización de carácter muy general. Constituye una disciplina muy importante de las matemáticas aplicadas y la investigación operativa, su método estándar se aplica en áreas tan dispares como ingeniería, inteligencia artificial, economía, gestión, administración, etc. Esta técnica consiste en poder determinar de manera eficiente las decisiones que optimizan el comportamiento de un sistema que evoluciona a lo largo de una serie de etapas, es decir, trata de encontrar la secuencia de decisiones que optimiza el comportamiento de un proceso polietàpico. Para abordar y resolver cualquier problema de esta naturaleza, se debe definir el modelo, para lo cual se debe considerar lo siguiente: 1. Etapas ‐

En primer lugar se debe establecer la naturaleza de las etapas del proceso. En ocasiones, dichas etapas son el resultado de una evolución natural del modelo a lo largo del tiempo y en otras ocasiones estas etapas tienen que ver con el razonamiento empleado para resolver el problema. 2. Estados ‐

La variable de estado del sistema (Generalmente la más difícil de determinar) debe ser tal que describa la información necesaria para conocer la evolución del sistema desde la primera etapa hasta la etapa actual. La programación dinámica admite múltiples formulaciones de las variables de estado, en cada etapa podemos tener un número finito o infinito de estados y los estados pueden ser los mismos en cada etapa o ser diferentes para cada una de ellas.

Pág. -3-

3. Variables de decisión y políticas ‐

Lo más fundamental de la programación dinámica es la necesidad de tomar una decisión, en que etapa, esta decisión debe representarse con una variable de decisión que describa la decisión a tomar. El rango de valores que puede tomar la variable de decisión puede ser diferente para cada uno de los estados del sistema, en función de sus características, y el número de variables de decisión para cada etapa puede ser finito o infinito. Resolver un modelo de programación dinámica exige hallar, para cada uno de los estados del sistema en cada una de las etapas, el valor óptimo de la variable de decisión. En otras palabras, deberemos obtener la política óptima para cada una de las etapas del sistema. 4. Función de recurrencia ‐

Se supone que las decisiones que debemos tomar en cada una de las etapas deben conducir a optimizar (hacer máxima o mínima) una determinada función descriptiva del comportamiento del sistema. A diferencia de la programación lineal, no existen restricciones acerca de la forma de esta función: puede ser lineal, cuadrática, exponencial, pueden multiplicarse variables, etc. La función a optimizar debe cumplir una condición importante; la función a optimizar debe ser recursiva. Esto significa que el valor de la función a optimizar en la etapa n debe ser función del valor de la función óptima para alguno (o algunos) de los estados en la etapa n+1. En consecuencia, debemos conocer también cómo será la evolución del sistema en la etapa n, para cada una de las combinaciones posibles de variables de estado y de decisión. El Objetivo de la Programación Dinámica

El objetivo de la programación dinámica es resolver una familia de problemas de optimización con restricciones conocidos como problemas de decisión secuencial o multietapa. La principal característica de estos procedimientos es que cualquier decisión realizada en un instante de tiempo se ve afectada por las decisiones predecesoras y afectas a sus sucesoras. La programación dinámica se basa en el Principio de Óptimo de Bellman, tal como se muestra en la siguiente figura

Pág. -4-

Estructura Básica Programación Dinámica Deterministica

Etapa n Estado

Sn

Etapa (n+1) Xn

Sn+1

Contribución de Xn, variable decisión Función Recurrencia f n (Sn ,Xn)

f n+1 (Sn+1)

Tipos de Programación Dinámica

Esta técnica permite abordar un gran número de formulaciones y resolver problemas de muy diversa naturaleza. Una clasificación de las diferentes situaciones puede ser de ayuda para explorar de manera más sistemática las diferentes posibilidades. En principio, los problemas de programación dinámica pueden clasificarse según dos criterios: a) Homogéneo o no homogéneo b) Determinista o aleatorio Programación dinámica homogénea y no homogénea

Un modelo de programación dinámica es homogéneo si presenta la misma estructura para todas las etapas del sistema, es decir: •El sistema puede presentar los mismos estados en cualquiera de sus etapas. •Los valores posibles de las variables de decisión para cada uno de los estados son las mismas para todas las etapas del sistema. •La función a optimizar es la misma para todas las etapas del sistema. •La evolución del sistema, para un determinado estado y para un determinado valor de la variable de decisión de los disponibles para dicho estado, es la misma para todas las etapas del sistema. Una consecuencia de esta definición es que un modelo de programación dinámica homogénea puede evolucionar indefinidamente en el tiempo, esto es, el número posible de etapas es infinito. Entonces podemos plantearnos analizar su evolución para un número infinito de etapas (problema de horizonte infinito) o para un número finito de éstas (problema de horizonte finito).

Pág. -5-

Cuando el modelo no cumple alguna de estas condiciones, tenemos programación dinámica no homogénea. Todos aquellos modelos que tengan un número finito de etapas posibles entrarán dentro de esta categoría. También puede suceder que el número de etapas sea infinito, aunque los problemas de programación dinámica no homogénea suelen ser de horizonte finito. Programación dinámica determinista y aleatoria

Esta categoría tiene que ver con la naturaleza de la evolución del sistema, una vez se ha tomado la decisión. Cuando, en una etapa determinada, podemos conocer con certeza la evolución del sistema para un determinado estado y un determinado valor de la variable de decisión, tenemos un modelo de programación dinámica determinista. Para estos modelos, podremos determinar las decisiones que, en cada etapa, dan el valor óptimo de la función de recurrencia. Si, para una etapa determinada, en un estado cualquiera i, al escoger un determinado valor de la Variable de decisión, encontramos que el sistema puede evolucionar hacia diferentes estados j de la siguiente etapa con una probabilidad conocida Pi, entonces el modelo es de programación dinámica aleatoria. En este caso, podremos determinar las decisiones que optimicen el valor esperado de la función de recurrencia. A continuación se muestra un cuadro resumen de las posibles situaciones que podemos encontrar en programación dinámica (PD), según esta clasificación:

Programación Deterministica Programación Aleatoria

Programación Dinámica Homogénea Dinámica Horizonte Finito Horizonte Infinito Dinámica Horizonte Finito Horizonte Infinito

Programación Dinámica No homogénea No Homogénea No Homogénea

Aplicaciones Programación Dinámica

En general la programación dinámica ayuda a resolver problemas de diversas aplicaciones en la industria y en el mundo académico, pero dentro de las aplicaciones mas conocidas y recurrentes se encuentran las siguientes: ‐ ‐ ‐ ‐ ‐ ‐

Modelo de ruta mas corta Modelo de Volumen‐Carga “Mochila” Modelo Asignación Recursos Modelo asignación de Nº empleados Modelo de inventarios Reemplazo de equipos

Pág. -6-

b. Muestre dos ejemplos donde se utilice la Programación Dinámica Ejemplo # 1

Copec S.A. dispone de 4 millones de dólares para invertir en tres campos petroleros ubicados en medio oriente. Las utilidades que gana en el sitio i (i=1, 2 , 3) dependen de la cantidad invertida en el, así:

Si Se supone que la cantidad invertida en cada campo debe ser un múltiplo exacto de 1 millón de dólares. Determinar una política de inversiones que eleva al máximo las utilidades que gana Copec S.A en sus tres campos petroleros del medio oriente. Solución:

El primer paso para resolver este problema de asignación de recursos. Es definir el modelamiento, definir sus etapas, estados, variable de decisión y función de recurrencia o función utilidad en este caso. Etapa n: Campo petrolero al cual se le va asignar una cantidad de millones como inversión

a cada uno de los pozos petroleros (n=1,2,3). Estado Sn: Cantidad de millones disponibles para asignar a los campos restantes. Variable decisión Xn: Cantidad de millones invertidos en la etapa Función Ui(Xi): Utilidad obtenida en cada campo por asignarle xi cantidad de dólares

como inversión (i=1,2,3). Función Objetivo 3

MAX:

∑ U i ( X i ) ;

3

Sujeta :

i =1

∑ X i

=4

i =1

Xi Son enteros Positivos Función Recursividad:

*

*

F   X n) + f n+1(Sn − X n) n (Sn, X  n ) =U  n(

Pág. -7-

Calculo Etapa n=3

Calculo Etapa n=2

Calculo Etapa n=1

Solución:

 X 1* = 1 ;  X 2* = 2 ;  X 3* = 1 Respuesta:

Para que Copec S.A obtenga el máximo de utilidades, se debe invertir los 4 millones de dólares de acuerdo a la política de inversión obtenida; es decir, ‐ Pozo 1 ‐‐> 1 Millón ‐ Pozo 2 ‐‐> 2 Millones ‐ Pozo 3 ‐‐> 1 Millón Con esta política de inversión Copec S.A obtiene el máximo de utilidades, que asciende a 24 millones de dólares.

Pág. -8-

Ejemplo # 2

Un proyecto espacial necesita investigar un problema de ingeniería para mandar seres Humanos a Marte. Existen 3 equipos que analizan el problema desde 3 puntos de vista diferentes. En las circunstancias actuales, la probabilidad de que los equipos 1,2,3, fracasen es 0.4, 0.6 y 0.8 respectivamente. La probabilidad de que los tres equipos fracasen es 0.192. Se debe minimizar la probabilidad de fracaso, por lo cual se decide adicionar 2 científicos de alto nivel. ¿Como adicionar los científicos de tal forma que se minimice la probabilidad de fracaso?

Solución:

Este problema claramente es de asignación de recursos (Científicos) a los tres equipos actuales para disminuir la probabilidad de fracaso. Entonces se requiere saber a que equipos serán asignados estos dos nuevos científicos. Etapa n: Equipos a los cuales se debe adicionar los científicos. (n=1, 2,3). Estado Sn: Número de científicos aún disponibles para asignarse a los equipos restantes. Variable de decisión Xn: Numero de científicos asignados al equipo n Función Pi (Xi) : Función de probabilidad de fracaso al asignar Xi científicos al equipo i 3

Función Objetivo

MIN Z :

3

∏ Pi ( X i ) ,

Sujeto a: ∑ X i = 2

i =1

i =1

Xi Son enteros Positivos

Función Recursividad:

*

*

F   X n)* f n+1(Sn − X n) n (Sn, X  n) = P n(

Pág. -9-

Etapa n=3 Como el estado final (cero científicos para asignar) se alcanza al terminar la etapa 3, entonces  f4 * = 1, se asignan todos los científicos disponibles.

Etapa n=2, Equipo 2

Etapa n=1 , Equipo 1

Solución:

 X 1* = 1 ; (S1 – X1) = 1 = S2  X 2* = 0 ; (S2 – X2) = 1 = S3 *

 X 3 = 1 Respuesta

La minima probabilidad de fracaso ( Z=0,06) se obtiene con esta asignación de científicos a los equipos; es decir, al equipo nº1 y nº 3 se debe asignar un científico respectivamente.

Pág. -10-

c. ¿Cuál es la diferencia entre la programación Dinámica Deterministica y la probabilística? Programación Dinámica Probabilística

La programación dinámica probabilistica se origina para el tratamiento de los modelos estocásticos de inventarios. En este tipo de modelos, el estado y las contribuciones obedecen a una distribución estadística. En la siguiente figura se describe la estructura básica que resulta para la programación dinámica probabilística, en donde n denota el número de estados posibles en la etapa n+1. Contribución  de la Etapa n

 Etapa n+1 Sn+1

1

 Etapa n

 Probabilidad 

C1

 f*n+1(1)

P1

 Estado

Sn

 Decisión

 Xn

C2

P2 PN 

2

 f*n+1(2)

 fn(Sn,Xn)

CN  3

 f*n+1(3)

Programación Dinámica Deterministica

En la programación dinámica Deterministica, el estado en la siguiente etapa está completamente determinado por el estado y la política de decisión de la etapa actual. La programación dinámica Deterministica se puede describir en forma de diagrama de la siguiente forma.

Etapa n Estado:

Sn

fn(Sn,Xn)

Etapa n+1 Contribución de Xn

Sn+1

Fn*+1(Sn+1) Pág. -11-

Diferencia Programación Dinámica Probabilística y Deterministica

La programación dinámica probabilística difiere de la programación dinámica Deterministica en que el estado de la etapa siguiente no queda completamente determinado por el estado y la decisión de la política en el estado actual. Esto debido a que queda condicionado a una distribución de probabilidades.

2. Resuelva el siguiente problema aplicando contenidos entregados (30 puntos)

La Dole empresa exportadora de fruta y vegetales, posee un tractor de 2 años de antigüedad, y desea establecer una política de reemplazo para su tractor durante los 5 años siguientes. Se debe tener un servicio mínimo del tractor de 3 años, pero después de un máximo de 5 años se debe reemplazar. El precio actual de un tractor es de $ 40.000 y aumenta un 10% por año. El valor de recuperación de un tractor con un año de uso es de $ 30.000 y disminuye 10% por año. El costo anual de operación del tractor es de $ 1.300 y se espera que aumente 10% por año. El tractor proporciona un ingreso fijo de $50.000 Determine la política óptima de reemplazo del tractor durante los próximos 5 años.

Solución:

Este problema claramente es del tipo Programación dinámica Deterministica, y de la categoría de reemplazo de equipo; por lo tanto, se requiere conocer la política óptima de reemplazo para el tractor que posee empresa Dole en los próximos 5 años, obteniendo el máximo beneficio económico. Datos e información del problema ‐ ‐ ‐ ‐

‐ ‐ ‐

02 años de Antigüedad del tractor Política reemplazo tractor 05 años ( Reemplazar) Tiempo mínimo servicio tractor 03 años Precio actual de un tractor ( I ) $ 40.000, incremento del 10% anual ( El costo de adquirir un tractor nuevo en cualquier año) Precio de recuperación con 01 año uso S(t) = $ 30.000, disminuyendo a 10% anual Costos anuales de operación C(t) = $ 1300, incremento anual del 10% Ingreso anual fijo R(t) = $ 50.000

Pág. -12-

Modelo Programación Dinámica

1.‐ Etapa i, es representada por el año i, (i=1, 2,3,.., n) 2.‐ Alternativas en la etapa (año) i son de conservar o reemplazar (K o R) el tractor al comenzar cada año i 3.‐ El estado en la etapa (año), es la antigüedad del tractor al comienzo del año (i) Función f i (t): Función de ingreso para los años (i), dado que el tractor tiene (t) años de

antigüedad al comenzar el año (i).

Función Recursiva

i)  f i (t ) = Max{r (t ) − c (t ) +  f i +1 (t + 1)} , Conservar el tractor ii)  f i (t ) = Max{r (0) + s(t ) − I  − c (0) +  f i +1 (1)} , Reemplazar tractor iii) Se debe cumplir t ≥ 0 , entero Para desarrollar esta ecuación recursiva, se requiere conocer las funciones de costos, ingresos, y precios de recuperación y tractor nuevo a través de los años. A continuación se muestra los valores en la siguiente tabla. Tpo. Años

(t) 0 1 2 3 4 5 6

Ingresos Anuales Costos Operación Anual

R(t) $ 50000 50000 50000 50000 50000 50000 50000

C(t) $ 1300 1430 1573 1730 1903 2094 2303

Precio Recuperacion

S(t) $ 30000 27000 24300 21870 19683 17715

Pág. -13-

Representación de la edad del tractor en función del año de decisión Años de Decisión

5

5

K R

4

4

K

3

2

3

K

Edad del Tractor (Años)

R 2

1

1

2

3

R

2

S

K

K

1

S

K

2

FIN

S

R

3

1

4

R

1

5

6

Pág. -14-

Desarrollo K

R

r(t) + S(t+1) - C(t)

r(0) + S(t) + S(1) - C(0) - I

Etapa # 5

t 1 2 3

$ $ $

75.570 72.727 70.140

1 2 5

$ $

1 4

r(t) - C(t) + f5(t+1)

r(0) + S(t) - C(0) - I + f5(1)

121.297 118.567 Se debe reemplazar

r(0) + S(t) - C(0) - I + f4(1) 155.997 133.303

r(t) - C(t) + f3(t+1)

r(0) + S(t) - C(0) - I + f3(1) $

186.897

R

r(t) - C(t) + f2(t+1)

r(0) + S(t) - C(0) - I + f2(1)

$

235.324

75.570 72.727 70.140

K K K

f4(t) $ $ $

121.297 118.567 79.533

Decision K K R

f3(t) $ $

167.137 133.303

Decision K R

Solucion Optima

K

Etapa # 1

2

$ $

R 181.573

$ $ $

Decision

Solucion Optima

K $

t

110.270 102.870 79.533

r(t) - C(t) + f4(t+1)

Etapa # 2

3

$ $ $

R 167.137 127.629

f5(t)

Solucion Optima

K $ $

t

64.700 57.300 49.760

R

Etapa # 3

t

$ $ $

K

Etapa # 4

t

Solucion Optima

f2(t) $

186.897

Decision R

Solucion Optima

$

214.197

f1(t) $

235.324

Decision K

Respuesta

Después de realizar el desarrollo de las ecuaciones recursivas para las distintas etapas, se puede concluir que las políticas mas optimas comenzando el año 1 son: a) ( K, R, K, K, K ) b) ( K, R, R, K, K) Año 2

Año 1

Año 3

( t=1 ) ( t=2 )

K

K

Año 4 ( t=1 )

Año 5

K

( t=2 )

K

R

Vender

( t=3 ) ( t=4)

R

( t=2 )

K

( t=1 )

K

Pág. -15-

CONCLUSION

A través de esta investigación, revisión de literatura, estudio y desarrollo de los problemas planteados en este trabajo, se puede apreciar la potencialidad de esta técnica y lo útil que es al momento de plantear modelos económicos, productivos y asignación recursos, entre otros. Con el avance de la ciencia y la tecnología, se pueden resolver grandes problemas con una cantidad de variables considerables a través de los distintos algoritmos matemáticos que se utilizan en software especializados para este tipo de técnicas, como son LINGO, WINQSB, LINDO, GAMS, etc. lo cual permite agilizar el proceso de calculo una enormidad; sin embargo, es necesario conocer la forma de modelar y la correcta definición de sus variables para cada problema. Finalmente concluir que esta técnica es una herramienta muy poderosa al momento de la toma de decisiones donde se requiere maximizar las utilidades o dicho de otra manera minimizar el costo. Personalmente esta asignatura ha sido de gran apoyo en aspectos laborales.

Pág. -16-

BIBLIOGRAFIA

1.‐ Hillier, Lieberman Gerald. Investigación de Operaciones. 7ª ed. México: Mc Graw Hill, 2001. 533, 568 p. 2.‐ Fonollosa, Joan. Métodos Cuantitativos de Organización Industrial II/Jose Sallan. Albert Suñe, Barcelona: Ediciones UPC, 2002, 99, 131 p. 3.‐ Taha, Hamdy. Investigación de Operaciones. 7ª ed. México: Pearson Educación, 2004, 401, 547 p. 4.‐ Taha, Hamdy. Operations Research An Introduction. 8ª ed. EE.UU: Pearson Educación, 2007, 399, 531 p. 5.- Fonollosa, Joan. Formulación y Resolución de Modelos de Programación Matemática en Ingeniería y Ciencia/Antonio Conejo, Pablo Pedregal, España 2002.

WWW

Bellini, Franco “Investigación de Operaciones” http://www.investigacion‐operaciones.com/operaciones.htm (Septiembre 2004)

Pág. -17-

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF